CMD + K

Introduksjon til kunstig intelligensCSP I: formulering og konsistensBegreper & formler21
16 min lesing

CSP I: formulering og konsistens

Timeplaner, vaktlister og kartfarging handler alle om å gi variabler verdier som oppfyller et sett begrensninger. Formuler slike problemer med variabler, domener og begrensninger, tegn begrensningsgrafen, og krymp domenene med node- og buekonsistens før søket starter. Du sporer AC-3 bue for bue og ser hvordan sterkere konsistens fjerner enda flere verdier.

Læringsmål
  • 01Formaliser et begrensningsproblem som med alle begrensningene, også de som virker selvsagte
  • 02Klassifiser begrensninger som unære, binære eller globale, og lag begrensningsgrafen
  • 03Spor AC-3 i en tabell med kø, bue og domene før og etter, og oppgi sluttdomenene
  • 04Regn ut antall buer i startkøen, antall komplette tilordninger og hvor mange verdier propageringen fjerner
  • 05Forklar hvorfor buekonsistens ikke garanterer en løsning, og hva sti- og k-konsistens tilfører
  • 06Bruk alldiff-sjekken og grensepropagering til å finne inkonsistens som AC-3 på binære ulikheter ikke ser
0 av 16 aktiviteter
Kjerneidé

Et begrensningsproblem ligner på å legge en timeplan: hvert emne skal ha en dag, og en håndfull regler sier hvilke kombinasjoner som er lov. I stedet for å prøve plan etter plan ser vi på reglene selv og stryker verdier som umulig kan være med i en løsning. Mange problemer krymper kraftig før søket i det hele tatt starter, og noen blir løst helt.

Steg 1 av 6

Variabler, domener og begrensninger

Konsept

Et institutt skal legge eksamen i fem emner over tre dager: Algoritmer, Databaser, Etikk, Logikk og Planlegging. Noen studenter tar flere av emnene og kan ikke ha to eksamener samme dag. Etikk er forkurs for Databaser, og instituttet vil ha etikkeksamenen først. Den store salen er opptatt dag 1, og Algoritmer trenger den.

Et søkeproblem fra kapittel 2 behandler en tilstand som en svart boks: algoritmen vet bare hvilke handlinger som finnes, og om målet er nådd. Et begrensningsproblem (constraint satisfaction problem, CSP) åpner boksen. Tilstanden er en samling variabler med verdier, og målet er gitt av eksplisitte regler. Formelt er problemet en ƒCSP-trippel:

  • er variablene, her med én eksamen hver.
  • er domenene. Et domene (domain) er mengden verdier en variabel kan få, her dagene .
  • er mengden begrensninger. En begrensning (constraint) har et omfang, altså variablene den gjelder, og en relasjon som sier hvilke kombinasjoner av verdier som er lov, for eksempel .

En tilordning (assignment) gir verdier til noen eller alle variablene. Den er konsistent når den ikke bryter noen begrensning, og komplett når alle variablene har fått en verdi. En løsning er en tilordning som er både konsistent og komplett. Delvise tilordninger er like viktige: søket i kapittel 10 bygger dem opp én variabel om gangen.

Sjekk deg selvEr tilordningen , , konsistent, og er den komplett?Vis svar

Nei til begge. og bryter , så den er ikke konsistent. Logikk og Planlegging mangler verdi, så den er heller ikke komplett.

Laster interaktiv figur …
Figur 9.1Eksamensplanen som CSP. Fem emner over tre dager, der ≠ betyr felles studenter og < betyr før.

Hvor mange komplette tilordninger finnes? Hver av de variablene kan få hver av de verdiene, så ƒantall komplette tilordninger er . For eksamensplanen er det , regnet med de fulle domenene før er brukt. Det er overkommelig her, men med 30 emner og 10 dager er det planer. Formuleringen lønner seg fordi begrensningene lar oss forkaste store deler av rommet uten å se på planene én og én.

Det finnes en gevinst til. Fordi tilstanden har en fast struktur, kan de samme algoritmene løse alle problemer som er skrevet på denne formen: timeplaner, vaktlister, kartfarging og puslespill. Vi trenger ingen problemspesifikk heuristikk av typen fra kapittel 3. Heuristikkene i kapittel 10 leser bare domenene og grafen.

RegneeksempelFormuler bemanningen av tre skranker på et bibliotek som et CSP, og tell de komplette tilordningene og løsningene.

Steg 1. Variabler. Én variabel per skranke: for utlån, informasjon og retur.

Steg 2. Domener. Fire ansatte kan stå i skranke, så hvert domene er .

Steg 3. Begrensninger. Én person kan bare stå ett sted: , som betyr , og . Liv har ikke opplæring i utlån: .

Steg 4. Tell. Uten begrensninger er det komplette tilordninger. Med begrensningene er det løsninger: tre valg for utlån (alle unntatt Liv), tre for informasjon (alle unntatt den i utlånet) og to for retur.

Øving 1 av 2

Et konferansesenter skal legge fire møter på tidspunktene kl. 9, 11 og 13. To møter med felles deltakere kan ikke gå samtidig. Hvilken formulering som CSP er riktig?

Øving 2 av 2

En festival fordeler fem frivillige på vakter, med én variabel per frivillig. Tre av dem har domenet {1, 2, 3, 4}, de to andre {1, 2, 3}. Hvor mange komplette tilordninger finnes?

Mine notater

Skriv egne notater for dette kapittelet. De lagres automatisk og dukker opp i «Mine notater»-oversikten paa fag-siden.

Laster…