23
Heuristieken – kennisbits 1 Guszti Eiben

Heuristieken – kennisbits 1 Guszti Eiben. I can't find an efficient algorithm, I guess I'm just too dumb. I can't find an efficient algorithm, because

Embed Size (px)

Citation preview

Page 1: Heuristieken – kennisbits 1 Guszti Eiben. I can't find an efficient algorithm, I guess I'm just too dumb. I can't find an efficient algorithm, because

Heuristieken – kennisbits 1

Guszti Eiben

Page 2: Heuristieken – kennisbits 1 Guszti Eiben. I can't find an efficient algorithm, I guess I'm just too dumb. I can't find an efficient algorithm, because

I can't find an efficient algorithm, I guess I'm just too dumb.

I can't find an efficient algorithm, because no such algorithm is possible.

I can't find an efficient algorithm, but neither can all these famous people.

Page 3: Heuristieken – kennisbits 1 Guszti Eiben. I can't find an efficient algorithm, I guess I'm just too dumb. I can't find an efficient algorithm, because

Onderwerpen

Problemen Oplossingsmethodes Applicaties Evalueren en vergelijken van oplossings-

methodes Statistieken Experimenteren Rapporteren

Page 4: Heuristieken – kennisbits 1 Guszti Eiben. I can't find an efficient algorithm, I guess I'm just too dumb. I can't find an efficient algorithm, because

8 koninginnen probleem

Page 5: Heuristieken – kennisbits 1 Guszti Eiben. I can't find an efficient algorithm, I guess I'm just too dumb. I can't find an efficient algorithm, because

Goed of fout ? (#1)

Waarom? Hoe goed / fout?

Page 6: Heuristieken – kennisbits 1 Guszti Eiben. I can't find an efficient algorithm, I guess I'm just too dumb. I can't find an efficient algorithm, because

Goed of fout ? (#2)

Waarom? Hoe goed / fout?

Page 7: Heuristieken – kennisbits 1 Guszti Eiben. I can't find an efficient algorithm, I guess I'm just too dumb. I can't find an efficient algorithm, because

Goed of fout ? (#3)

Waarom? Hoe goed / fout?

Page 8: Heuristieken – kennisbits 1 Guszti Eiben. I can't find an efficient algorithm, I guess I'm just too dumb. I can't find an efficient algorithm, because

Algemeen vs. specifiek

Algemeen: N > 1 koninginnen Specifiek: N = 8 Eigenschap “grootte” is voldoende specifiek

Tegeltjes probleem? Vliegtuig probleem?

Probleem ≠ probleem instantie

Page 9: Heuristieken – kennisbits 1 Guszti Eiben. I can't find an efficient algorithm, I guess I'm just too dumb. I can't find an efficient algorithm, because

Wat is de (een) oplossing? 8-konninginnen

Configuratie van koninginnen

Mokum Air Dienstregeling

TegelsConfiguratie van tegelsAlgoritme

Page 10: Heuristieken – kennisbits 1 Guszti Eiben. I can't find an efficient algorithm, I guess I'm just too dumb. I can't find an efficient algorithm, because

Wat is de (een) oplossing? Freecell

Configuratie van kaarten ?Reeks stappen (kaartverplaatsingen)Algoritme

Page 11: Heuristieken – kennisbits 1 Guszti Eiben. I can't find an efficient algorithm, I guess I'm just too dumb. I can't find an efficient algorithm, because

Een oplossing is …

Afhankelijk van de probleemformulering: Een object Een traject (tussen objecten) Een algoritme om objecten / trajecten te vinden

Vraag: Zijn er goede / slechte oplossingen? Zijn er betere / slechtere oplossingen? Waar hang dat vanaf? Hoe meten we dat?

Page 12: Heuristieken – kennisbits 1 Guszti Eiben. I can't find an efficient algorithm, I guess I'm just too dumb. I can't find an efficient algorithm, because

Algoritme

Algoritme generaliseert de zoektocht naar een object of traject.

Niet oplossing voor een probleeminstantie, maar voor een hele klasse van problemen.

Herbruikbaar

Vraag: wat is een “algoritme” ?

Page 13: Heuristieken – kennisbits 1 Guszti Eiben. I can't find an efficient algorithm, I guess I'm just too dumb. I can't find an efficient algorithm, because

Representatie

(3, 14, 24, 25, 36, 47, 53, 58) (5, 1, 8, 4, 2, 7, 3, 6) Zijn er goede / slechte representaties? Waar hangt dat vanaf?

Page 14: Heuristieken – kennisbits 1 Guszti Eiben. I can't find an efficient algorithm, I guess I'm just too dumb. I can't find an efficient algorithm, because

Probleem, oplossing, oplosser

Probleem, probleem instantie

versus Oplossingsmethode, algoritme

Oplossing (≠ representatie) Representatie: hoort bij probleem of algoritme?

Vraag: heuristiek = algoritme?

Page 15: Heuristieken – kennisbits 1 Guszti Eiben. I can't find an efficient algorithm, I guess I'm just too dumb. I can't find an efficient algorithm, because

Gevraagde oplossingen bij dit vakVolgens de presentaties van de opdrachten Mokum Air:

“Stel een dienstregeling op voor … ” Amstelhaege:

“Lever twee plattegronden af …” Tegels:

“Verzin een algoritme om …” Free cell:

“Maak een solver die ...”

Page 16: Heuristieken – kennisbits 1 Guszti Eiben. I can't find an efficient algorithm, I guess I'm just too dumb. I can't find an efficient algorithm, because

Waarom is het oplossen moeilijk? Probleem nieuw Probleem onoverzichtelijk

Niet helder gespecificeerdHelder maar complex (complicated?)

Probleem instantie te groot (grootte = ?)

N # velden # configuraties van koninginnen

8 64 4426165368

12 144 103619293824707000

16 256 10078751602022300000000000

20 400 2788360983670900000000000000000000

Page 17: Heuristieken – kennisbits 1 Guszti Eiben. I can't find an efficient algorithm, I guess I'm just too dumb. I can't find an efficient algorithm, because

8 koninginnen oplossen versie 1.a Methode:

Koninginnen één voor éénPositiekeuze: eerste de besteBij vastlopen backtracken

Page 18: Heuristieken – kennisbits 1 Guszti Eiben. I can't find an efficient algorithm, I guess I'm just too dumb. I can't find an efficient algorithm, because

8 koninginnen oplossen versie 1.b Methode:

Koninginnen één voor éénPositiekeuze: bezet zo min mogelijk vrije veldenBij vastlopen backtracken

Page 19: Heuristieken – kennisbits 1 Guszti Eiben. I can't find an efficient algorithm, I guess I'm just too dumb. I can't find an efficient algorithm, because

Effect van strategie

Eerste de beste Bezet zo min mogelijk

Page 20: Heuristieken – kennisbits 1 Guszti Eiben. I can't find an efficient algorithm, I guess I'm just too dumb. I can't find an efficient algorithm, because

Dit algoritme

Gericht op uitbreiding (vanaf leeg, één voor één) – constructive method

Recursief geprogrammeerd (?) Heuristiek: verminder kans op backtracks Oplossingstraject via correcte maar

onvolledige configuraties

Page 21: Heuristieken – kennisbits 1 Guszti Eiben. I can't find an efficient algorithm, I guess I'm just too dumb. I can't find an efficient algorithm, because

8 koninginnen oplossen versie 2 Methode:

Alle koninginnen tegelijkVerminder fouten door

○ Kies koningin met de meeste conflicten○ Verplaats die naar het beste vak in dezelfde rij○ “beste vak”= met de minste conflicten

Bij vastlopen: random verplaatsing

Page 22: Heuristieken – kennisbits 1 Guszti Eiben. I can't find an efficient algorithm, I guess I'm just too dumb. I can't find an efficient algorithm, because

8 koninginnen oplossen versie 21

654

32

Page 23: Heuristieken – kennisbits 1 Guszti Eiben. I can't find an efficient algorithm, I guess I'm just too dumb. I can't find an efficient algorithm, because

Dit algoritme

Gericht op verbetering (iterative improvement method)

Heuristiek: maximaliseer verbetering via “educated guess”

Oplossingstraject via volledige maar incorrecte configuraties