heuristieken – kennisbits 1 guszti eiben. i can't find an efficient algorithm, i guess...

Post on 04-Jun-2015

239 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

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 no such algorithm is possible.

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

Onderwerpen

Problemen Oplossingsmethodes Applicaties Evalueren en vergelijken van oplossings-

methodes Statistieken Experimenteren Rapporteren

8 koninginnen probleem

Goed of fout ? (#1)

Waarom? Hoe goed / fout?

Goed of fout ? (#2)

Waarom? Hoe goed / fout?

Goed of fout ? (#3)

Waarom? Hoe goed / fout?

Algemeen vs. specifiek

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

Tegeltjes probleem? Vliegtuig probleem?

Probleem ≠ probleem instantie

Wat is de (een) oplossing? 8-konninginnen

Configuratie van koninginnen

Mokum Air Dienstregeling

TegelsConfiguratie van tegelsAlgoritme

Wat is de (een) oplossing? Freecell

Configuratie van kaarten ?Reeks stappen (kaartverplaatsingen)Algoritme

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?

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” ?

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?

Probleem, oplossing, oplosser

Probleem, probleem instantie

versus Oplossingsmethode, algoritme

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

Vraag: heuristiek = algoritme?

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 ...”

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

8 koninginnen oplossen versie 1.a Methode:

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

8 koninginnen oplossen versie 1.b Methode:

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

Effect van strategie

Eerste de beste Bezet zo min mogelijk

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

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

8 koninginnen oplossen versie 21

654

32

Dit algoritme

Gericht op verbetering (iterative improvement method)

Heuristiek: maximaliseer verbetering via “educated guess”

Oplossingstraject via volledige maar incorrecte configuraties

top related