Matematikken i kunstig intelligens Opgaver om koordinerende robotter LØSNINGER

Relaterede dokumenter
Matematikken i kunstig intelligens Opgaver om koordinerende robotter

Spilstrategier. 1 Vindermængde og tabermængde

Matematik og dam. hvordan matematik kan give overraskende resultater om et velkendt spil. Jonas Lindstrøm Jensen

Spilstrategier. Indhold. Georg Mohr-Konkurrencen. 1 Vindermængde og tabermængde 2. 2 Kopier modpartens træk 4

Sandsynlighed og kombinatorik

Tip til 1. runde af Georg Mohr-Konkurrencen Kombinatorik

Skak, backgammon & dam

Simulering af stokastiske fænomener med Excel

Lærervejledning. Beskriv ideen med spillet i plenum, herunder dets funktion og de tre vigtigste pointer med spillet:

Spilstrategier, Kirsten Rosenkilde, september Spilstrategier

Simulering af stokastiske fænomener med Excel

LÆR SKAK+MAT MED. Dansk Skoleskak. Elevhæfte

Der er felter, og på hvert af disse felter har tårnet træk langs linjen og træk langs rækken.

1gma_tændstikopgave.docx

MODELSÆT 2; MATEMATIK TIL LÆREREKSAMEN

Side 1 af 8. Vejledning

KÆNGURUEN International matematikkonkurrence. Del 1. 3 point pr. opgave. 2. Erik har 10 ens metalstænger.

Oprids over grundforløbet i matematik

Løsninger til KÆNGURUEN International matematikkonkurrence. Del 1 Løsninger 3 point pr. opgave. 2. Erik har 10 ens metalstænger.

Mattip om. Statistik 2. Tilhørende kopier: Statistik 3, 4 og 5. Du skal lære om: Faglig læsning. Chance og risiko. Sandsynlighed

Partners er et spil med mange klare regler og en masse uskrevne regler, som varierer alt efter, hvem man spiller sammen med.

Sum af. Beløb. Beløb. Beløb. Beløb. Beløb. Beløb. Beløb. Beløb. Beløb. Beløb. Beløb. Beløb. Samlet sum. Navn

LÆR SKAK+MAT MED. Dansk Skoleskak. Elevhæfte

Eleverne kan med egne ord beskrive, hvordan de med eksperimenter og problemløsning vil strukturere deres arbejde.

Tegn og gæt gennemsnittet

KOPIARK. Format 2.klasse Kopiside

Fraktaler Mandelbrots Mængde

Grådige algoritmer. Et generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer.

Pointen med Funktioner

Statistik og sandsynlighed

Flick em Up! Inden spillets start. Scenarie (opsætning) Hold. Lad os spille! Runder. Inden spillet kan starte skal I vælge: En flade at spille på

Fraktaler. Mandelbrots Mængde. Foredragsnoter. Af Jonas Lindstrøm Jensen. Institut For Matematiske Fag Århus Universitet

TRIX. Træningshæfte 2 FACITLISTE. Side 1. Side 2 Side 3. FACIT, side 1-3 Trix, Træningshæfte 2 Alinea. Byg og tegn

FP9. 1 Esters fritidsjob 2 Katrine maler 3 Backgammon 4 Halvmaratonløb 5 Babyloniernes formel for arealet af en firkant.

Beat the Clock Sorteringsnetværk

4. Snittets kædebrøksfremstilling og dets konvergenter

Skak-regler. Inhold Förmål med spillet Forberedelset Flytning av brikkerne. Flyttning af hver enkel brik

Før-skoleskak Undervisningsbog

Her følger en række opmærksomhedsfelter i relation til undervisningens form og elevens læring:

FP9. 1 Esters fritidsjob 2 Katrine maler 3 Backgammon 4 Halvmaratonløb 5 Babyloniernes formel for arealet af en firkant.

5, 10 og 1 4, 5 og 6 7, 11 og 4. 2, 3, 5 og 4 0, 1, 5 og 2 5, 2, 4 og 3. 2, 3, 4 og 1 4, 2 og 3 1, 8, 4 og 3. 5, 3 og 1 3, 4,og 5 3, 4 og 2

TAKEAWAY TEACHING. Bliv inspireret til at undervise i studiestrategier TEMA: RAMMESÆTNING AF SAMARBEJDE I STUDIEGRUPPER

Seniorspejder: Stifindere

Rækkefølgen af faserne i en spilleomgang Nedenfor ses et resumé af faserne i en spilleomgang, som SKAL udføres i nævnte rækkefølge.

Grådige algoritmer. Et generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer.

Løsning af simple Ligninger

Grådige algoritmer. Et generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer.

Noter om opgaver i diskret matematik, Kirsten Rosenkilde, Maj Diskret matematik

Implikationer og Negationer

Korncirkler og matematik

Dynamisk programmering

Noter om opgaver i diskret matematik, Kirsten Rosenkilde, Maj Diskret matematik

Zhezz. Spillevejledning

Andengradsligninger. Frank Nasser. 12. april 2011

Allan C. Malmberg. Terningkast

Danmarks Tekniske Universitet

JEANNETTE STEEN CAMILLA SIMONSEN BRUG LÅGET. i matematik. Taktile materialer

Invarianter. 1 Paritet. Indhold

SPHERO 2.0 undervisningsforløb til mellemtrinnet i matematik Polygoner og vinkler

Kompetenceområder Kompetencemål Færdigheds- og vidensmål. baggrund af egne og andres spørgsmål

Introduktion til differentialregning 1. Jens Siegstad og Annegrethe Bak

Den gamle togkonduktør

Matematik A og Informationsteknologi B

π er irrationel Frank Nasser 10. december 2011

DARTREGLER. Ikke alle darts scorer

Spillets formål og opsætning

Loddevejledning til samling af CanSat-shields

Den måde, maleren bygger sit billede op på, kaldes billedets komposition.

Kyndig biavler syner for andre

Danmarks Tekniske Universitet

Kombinatorik og Sandsynlighedsregning

Funktionsterminologi

formler og ligninger trin 1 brikkerne til regning & matematik preben bernitt

Hop videre med. Udforskning af opgaverne for 6. og 7. klassetrin i Danmark. 1 a) Tegn alle de mulige symmetriakser på vejskiltene.

Funktionsterminologi

Det forrykte kortspil for hele familien. For 2-10 spillere fra 6 år

Disse regioner er her omkranset med respektive farver: sort og hvid, og bærer navnet: - Create land eller Opbyg eget rige -

Go, go, go Søren Wengel Mogensen

Lad os som eksempel se på samtidigt kast med en terning og en mønt:

Andengradsligninger. Frank Nasser. 11. juli 2011

ZBC Vordingborg Marcus Rasmussen, Oliver Meldola, Mikkel Nielsen 17/ The Board Game

WINDOWS LIVE MAIL

Baggrund for XP turnering

Broer, skak og netværk Carsten Thomassen: Naturens Verden 10, 1992, s

Noter til Perspektiver i Matematikken

Fang Prikkerne. Introduktion. Scratch

Kunstig intelligens. Thomas Bolander, Lektor, DTU Compute. Siri-kommissionen, 17. august Thomas Bolander, Siri-kommissionen, 17/8-16 p.

Hvad er matematik? C, i-bog ISBN

Undo Jo flere jo bedre! 1/9

Titel. Data om læremidlet:

Bumser og Drager. Antal spillere: 3-5 Alder: 16+ Spilletid: 40min+

Matematik i stort format Udematematik med åbne sanser

Hukommelsesspil. Introduktion. Scratch

Sortering. Eksempel: De n tal i sorteret orden

Indhold Forklaring til kortene Antal trylletricks Spillets mål Trick nr. 1: BANK PÅ BUNKEN Materiel Hemmelig forberedelse

Tal og algebra. I hvilke situationer kan det være motiverende at gengive et talmønster som et geometrisk mønster?

F I N N H. K R I S T I A N S E N TES REGNING MED REGNEARK KUGLE SIMULATIONER G Y L D E N D A L LANDMÅLING

Leg og bevægelse. Eleverne kan i grupper samarbejde om en leg/spil. De kan overholde regler i en leg eller et spil.

Transkript:

Matematikken i kunstig intelligens Opgaver om koordinerende robotter LØSNINGER Thomas Bolander 25. april 2018 Vejledning til opgaver Opgave 1 kan eventuelt springes over, hvis man har mindre tid. De resterende opgaver kan løses uafhængigt af opgave 1. Opgave 1 (Tilstandsrum) Når man laver kunstig intelligens til rutefinding, lagerrobotter, satelitter, brætspil, computerspil og en lang række andre anvendelser, prøver man ofte at få en fornemmelse af hvor svært problemet er ved at kigge på størrelsen af tilstandsrummet. Tilstandsrummet er hvor mange forskellige tilstande et system kan være i, og man bruger ofte teknikker indenfor det område af matematikken der hedder kombinatorik for at udregne det. Betragt f.eks. et helt trivielt 1-personers spil, hvor den sorte brik skal flyttes fra den ene ende af brættet til den anden: Der er 5 felter som brikken kan stå på, og derfor bliver størrelsen af tilstandsrummet 5. a) Betragt et spil med 2 brikker (vist nedenfor), hvor brikkerne kan flyttes rundt på alle felter uafhængigt af hinanden, undtagen at der ikke må være 2 brikker på samme felt. Hvad er da størrelsen af tilstandsrummet? Hvordan ændrer størrelsen af tilstandsrummet sig hvis den røde brik ikke kan springe over den sorte, det vil sige, den røde brik altid er til højre for den sorte? Og hvordan ændrer størrelsen af tilstandsrummet sig hvis begge brikker er sorte? LØSNING. Størrelsen af tilstandsrummet er 5 4 = 20: Den sorte brik kan stilles på 5 forskellige felter, og den anden kan derefter stilles på 4 forskellige. Hvis rød ikke kan springe over sort, er der 4 + 3 + 2 + 1 = 10 muligheder: Rød kan stå på 4 forskellige felter når sort er længst til venstre, på 3 forskellige felter når sort er på det næste felt, osv. Hvis begge brikker er sorte er der også kun 10 muligheder. Grunden til størrelsen af tilstandsrummet er relevant for kunstig intelligens er, at det giver en øvre grænse på hvor mange muligheder den kunstige intelligens skal tænke igennem for at løse sit problem. Lad os prøve at tage brætspil som eksempel. I kryds-og-bolle er størrelsen 1

af tilstandsrummet 5478, hvilket gør det utroligt nemt at lave et computerprogram som kan spille kryds-og-bolle optimalt. I skak er størrelsen af tilstandsrummet 10 17, og allerede af dette kan man få en fornemmelse af at det er meget sværere at lave et computerprogram som er god til at spille skak (hvilket det ganske rigtigt er). I brætspillet Go er størrelsen af tilstandsrummet 10 172, hvilket giver en indikation af at det er endnu sværere (hvilket det også netop er). Det er derfor ikke overraskende at det allerede i 1997 lykkedes at lave et computerprogram som kunne blive verdensmester i skak (IBMs Deep Blue), men først sidste år, i 2017, lykkedes det at lave et computerprogram som blev verdensmester i Go (Google DeepMinds AlphaGo). b) Også hvis vi vil programmere robotter til at kunne løse navigationsproblemer, må vi se på størrelsen af det tilstandsrum de befinder sig i. For hvert af nedenstående eksempler skal du finde størrelsen af tilstandsrummet. Vi antager at der kun kan være 1 robot på hvert felt. LØSNING. I den første er størrelsen 14: der er 14 felter den blå robot kan være på. I den anden er der 14 13 = 182: for hvert af de 14 felter den blå kan være på, kan den grønne være på hvert af de 13 andre. Opgave 2 (Korteste løsning) En anden vigtig ting indenfor problemløsning med kunstig intelligens er at finde længden af en korteste løsning. Hvis det handler om rutefinding på en GPS eller i Google Maps svarer det til at finde den korteste rute fra A til B. Hvis det handler om at styre en robot, vil man ofte måle længden af en løsning i antallet af operationer som robotten skal udføre. Betragt følgende eksempel: Robotten skal navigere hen til det blå flag, og den kan kun flytte ét felt af gangen, enten op, ned, til venstre eller til højre. Når robotten flytter sig ét felt kalder vi det et træk ligesom i 2

brætspil. En korteste løsning er i dette tilfælde den korteste vej til det blå flag målt i antal træk. På eksemplet ovenfor har den korteste løsning længden 6, da robotten skal foretage følgende træk: 1. venstre, 2. venstre, 3. venstre, 4. op, 5. op, 6. højre. Der er også en anden løsning: at gå mod uret rundt. Men den løsning er længere: 1. højre, 2. højre, 3. op, 4. op, 5. venstre, 6. venstre, 7. venstre, 8. venstre. Faktisk er der uendeligt mange løsninger, for robotten kan altid flytte sig frem og tilbage mellem to felter så længe den nu gider inden den til slut går hen til flaget. Løsninger som disse er i virkeligheden en slags simple computerprogrammer, som de kunne se ud på en robot: De fortæller robotten præcist hvad den skal gøre i hvilken rækkefølge. Et sådant program er ikke i sig selv kunstig intelligens, det bliver først kunstig intelligens når robotten selv finder løsningerne. Det område af kunstig intelligens som handler om at få robotter eller anden kunstig intelligens til selv at finde løsninger til problemer kaldes automatiseret planlægning. Det bygger i vid udstrækning på forskellige områder af diskret matematik, især kombinatorik, algoritmik, induktion, rekursion og logik. Der er lidt diskret matematik i gymnasiet, især på A-niveau, men ellers er det noget man først for alvor ser på universitetet. a) Betragt følgende eksempel, hvor den grønne robot skal hen til det grønne flag: Find en korteste løsning, skriv den op på samme form som ovenfor, og angiv dens længde. LØSNING. En korteste løsning er: 1. venstre, 2. venstre, 3. op. Den har længden 3. Når der er mere end én robot bliver tingene en smule mere kompliceret. Vi vælger her at antage at kun én robot kan bevæge sig ad gangen, men de behøver ikke nødvendigvis bevæge sig turbaseret (skiftevis grøn og blå) som i almindelige brætspil. Det kan f.eks. være at den ene robot først bevæger sig halvdelen af vejen, så bevæger den anden sig i mål, og til slut bevæger den første sig også i mål. Når vi snakker om en løsning skal vi derfor specificere hvem der bevæger sig i hvert træk. Hvis grøn skal bevæge sig op i det 5. træk kan vi f.eks. skrive 3

det som 5. grøn: op. Betragt følgende eksempel: Her er en korteste løsning følgende: 1. blå: højre, 2. blå: højre, 3. blå: op, 4. blå: op, 5. blå: venstre, 6. blå: venstre, 7. blå: venstre, 8. blå: venstre, 9. grøn: højre, 10. grøn: højre, 11: grøn: op. Længden er 11. Bemærk at længden af en korteste løsning med 2 robotter ikke er lig med summen af en korteste løsning med kun den blå robot (som vi ovenfor fandt til 6) og en korteste løsning med kun den grønne robot (som du fandt løsningen til i spørgsmål a). b) Betragt nu følgende eksempel, hvor begge robotter igen skal til deres respektive målflag: Her er der kun 4 felter, og robotterne skal bytte plads. Hvert træk er enten at flytte ét felt med uret eller ét felt mod uret. Vi kalder disse træk og drej mod uret. Find en korteste løsning, skriv den op på samme form som ovenfor, og angiv dens længde. LØSNING. 1. grøn:, 2. blå:, 3. grøn:, 4. blå:. Længden er 4. 4

Opgave 3 (Strategier) Ovenfor fandt vi løsninger, hvor vi bestemte hvad begge robotter skulle gøre. Men normalt vil det jo være robotterne selv der hver især skal beslutte hvad de vil gøre. Og så er det ikke længere nok at skrive en løsning op som en række af træk, for man ved jo ikke nødvendigvis hvad den anden robot har tænkt sig at gøre. I eksemplet ovenfor, hvor robotterne skulle bytte plads, kan det være at robotterne har planlagt at bevæge sig hver sin vej rundt, og så vil de støde sammen (eller den ene robot vil mislykkes). For at løse sådanne problemer laver man en anden type af løsning som kaldes en strategi. En strategi er ikke en simpel række af træk, men en matematisk funktion, som til hver mulig tilstand knytter det træk som robotten skal foretage i den tilstand. Man kan illustrere en strategi som en tabel, hvor der for hver mulig tilstand er angivet hvad robotten skal gøre i tilstanden. Hver robot har så sin egen strategi. I eksemplet ovenfor kan den grønne robot lave strategien vist til venstre på figur 1, hvor vi har byttet de to robotter ud med farvede cirkler, for at gøre det tydeligere. Den første linje viser f.eks. at at den grønne robot har planlagt at starte med at dreje med uret. Hvis det lykkes for den blå robot at bevæge sig mod uret inden den grønne laver sit første træk, vil den grønne i stedet bevæge sig mod uret. Det ses af tredje linje i strategien nedenfor. a) Udfyld resten af strategien for den blå robot i figur 1. Tænk over hvad der vil give mest mening for den blå robot at gøre i hver tilstand. Målet er stadig at både den blå og grønne robot ender på det felt hvor deres eget flag er. LØSNING. Se figur 2. b) Du skal nu afprøve strategierne fra spørgsmål a. Klip de to cirkler ud af figur 3 og brug dem som robotter. Sæt dem til at starte med på hinandens flag. Kast så med en mønt for at finde ud af hvem der skal foretage et træk. Hvis du slår plat, skal den grønne bevæge sig, ellers den blå. Den som skal bevæge sig, skal bevæge sig ifølge strategierne i tabellen i figur 1. Efter første træk kaster du mønten igen, og bruger igen dens udfald til at bestemme hvem der skal rykke. Sådan fortsætter du, med ét møntkast per træk. Så snart du når til en tilstand hvor den ene robots træk hedder skal du ikke længere kaste mønten, men blot følge strategien for den anden robot, indtil den også når til. Forhåbentlig ender det så med at de to robotter ender hvor de skal og ikke støder ind i hinanden undervejs. Hvis de ikke ender hvor de skal, eller hvis de støder ind i hinanden, er der noget galt med stratagierne, og du må prøve at rette din strategi for blå. Prøv at spille spillet nogen gange og se hvor mange træk der bliver brugt i alt hver gang (at vente tæller også som et træk). I sidste spørgsmål ovenfor viser du kun at strategierne virker ved at afprøve dem nogen gange. Normalt vil man forsøge at give et matematisk bevis for at en strategi er korrekt, og måske også at det er den bedste (den som giver de korteste løsninger). I kunstig intelligens prøver man ofte at give et matematisk bevis for at en bestemt metode til at lægge strategier altid giver en korrekt strategi (eller altid den bedst mulige). Dette kan af og til være ret udfordrende, især i det tilfælde hvor robotterne ikke engang nødvendigvis ved hvor de andre robotter skal hen. Det er stadig et aktivt forskningsområde. Anvendelserne er naturligvis ikke kun robotter på spilleplader, men generelt robotter der skal koordinere deres handlinger i forhold til hinanden, f.eks. når de gerne vil samarbejde eller hjælpe hinanden. 5

vent vent Figur 1: Strategier for den grønne og blå robot. 6

vent vent Figur 2: Løsning 7

Figur 3: 8