De presentatie wordt gedownload. Even geduld aub

De presentatie wordt gedownload. Even geduld aub

Heuristieken – kennisbits 2 Guszti Eiben. 8 koninginnen oplossen versie 3  Methode: Alle koninginnen tegelijk Verbeter configuratie door ○ Maak K > 1.

Verwante presentaties


Presentatie over: "Heuristieken – kennisbits 2 Guszti Eiben. 8 koninginnen oplossen versie 3  Methode: Alle koninginnen tegelijk Verbeter configuratie door ○ Maak K > 1."— Transcript van de presentatie:

1 Heuristieken – kennisbits 2 Guszti Eiben

2 8 koninginnen oplossen versie 3  Methode: Alle koninginnen tegelijk Verbeter configuratie door ○ Maak K > 1 nieuwe configuraties door een paar random veranderingen (“mutaties”) ○ Gooi de slechtste K- 1 “mutanten” weg Itereer

3 Dit algoritme  Gericht op verbetering (iterative improvement method)  Heuristiek: maximaliseer verbetering via blinde “mutatie” en kwaliteitgestuurde selectie  Oplossingstraject via volledige maar incorrecte configuraties

4 “Definitie” van heuristiek  Leer van het vinden, de wetenschap die langs methodische weg tot oplossingen leert komen.  De kunst om door logisch redeneren stap voor stap tot een bepaalde waarheid te komen.  Leer van het methodisch zoeken, gebruikmakend van een bepaald aantal vuistregels in een acceptabele rekentijd. Het resultaat is bruikbaar in de praktijk, maar niet altijd optimaal.  Heuristics rapidly come to a solution that is hoped to be close to the best possible answer. Heuristics are "rules of thumb", educated guesses, intuitive judgments or simply common sense. Welke heuristieken waren er in de voorbeelden?

5 Oplossingmethoden  Constructive vs. iterative improvement  Zoeken via Correct maar onvolledig Volledig maar incorrect kandidaat-oplossingen  Deterministische vs. stochastische methoden  Heuristische methode ≠ stochastische methode  Manieren, maten om onvolledigheid, incorrectheid te meten  heuristiek sturen

6 Concepten bij probleem- definities  Concept 1: constraints, beperkingen, eisen, voorwaarden, … zijn Boolean: waar of onwaar  Voorbeeld 1: N koninginnen probleem Één constraint per tweetal koninginnen: niet slaan N * (N-1) / 2 constraints in totaal (lokaal – globaal)  Voorbeeld 2: graafkleuringsprobleem Één constraint per edge: nodes met andere kleuren # constraints in totaal = # edges (lokaal – globaal)  Praktijk: hard constraints vs. soft constraints

7  Concept 2: optimalisatie-criterium, doelfunctie, kwaliteitsfunctie, … heeft een schaal (“graded”)  Voorbeeld 1:  Voorbeeld 2: lengte vd route bij handelsreiziger  Er kunnen meer optimalisatie-criteria zijn, bij voorbeeld: prijs, kwaliteit, energieverbruik, looks Concepten bij probleem- definities

8 Probleemtypes Optimialisatie-criteria ConstraintsJaNee Ja Nee Free optimization problem

9 Probleemtypes Optimialisatie-criteria ConstraintsJaNee Ja Constraint satisfaction problem Nee Free optimization problem

10 Probleemtypes Optimialisatie-criteria ConstraintsJaNee Ja Constrained optimization problem Constraint satisfaction problem Nee Free optimization problem

11 Probleemtypes Optimialisatie-criteria ConstraintsJaNee Ja Constrained optimization problem Constraint satisfaction problem Nee Free optimization problem No problem

12 Probleemtypes & oplossingen FOP = Free Optimization Problem: (S,., f)  Oplossing: s  S zdd f (s) is optimaal in S CSP = Constraint Satisfaction Problem: (S, Φ,. )  Oplossing: s  S zdd Φ(s) = true COP = Constrained Optimization Problem: (S, Φ, f )  Oplossing: s  S zdd Φ(s) = true en f(s) is optimaal in S Φ (S Φ = {s  S | Φ (s) = true} )

13 Constraints ↔ optimalisatiecriteria Neem het 8 koninginnen probleem:  Strafpunten voor een koningin q: s(q) = # koninginnen die zij kan slaan  Foute koningin: q is fout als s(q) > 0  Kwaliteit van een configuratie c : Q 1 (c) = som van strafpunten voor alle koninginnen Q 2 (c) = aantal foute koninginnen  Voor beide geldt: Q i (c) = 0  alle constraints OK, dus oplossing Q i minimaliseren = aantal fouten reduceren  Constraint satisfaction via optimalisatie

14 Constraint satisfaction via optimalisatie

15 COP voorbeeld: Handelsreiziger  Gegeven N steden, incl. “thuis” vind de route die A: Alle steden één keer aandoet B: Terugkeert naar “thuis” C: Minmaal is qua lengte / tijd / benzineverbruik …  A en B zijn constraints  C is een doelfunctie Alle routes van lengte N Alle “A routes” van lengte N Alle “B routes” van lengte N

16 16 Eenmalige applicaties Voorbeeld: Optimaliseren van wegennetwerk rondom een nieuw vliegveld  Totale kosten: 100en miljoenen euro’s, rekenkosten verwaarloosbaar in vergelijking  De taak is eenmalig  Veel tijd om algoritme te runnen (meerdere runs)  Moet maar één keer een superieure oplossing vinden

17 17 Terugkerende applicaties Voorbeeld: Optimaliseren van Internet shopping bezorg-routes  Iedere dag verschillende adressen  Toch min of meer dezelfde taak  Beperkte tijd om algoritme te runnen  Moet altijd een redelijke oplossing binnen redelijke tijd vinden

18 18 Real-time applicaties Voorbeeld: Optimaliseren van groentijden van verkeerslichten  Steeds verschillende toevoer van auto’s  Toch min of meer dezelfde taak  Beperkte tijd om algoritme te runnen  Moet altijd een redelijke oplossing binnen een zéér korte tijd vinden  Special case van terugkerende applicaties?

19 Applicaties en algoritmen  Type applicatie bepaalt de eisen jegens een oplossing en de eisen jegens de oplossingsmethode  Uitspraken over oplossingsmethodes moeten rekening houden met de applicatie  B.v., voorkeur voor een bepaalde methode verschilt per applicatie

20 20 Welk stochastisch algoritme is beter? Waarom?

21 Algoritmen vergelijken  Theorie vs. praktijk (bewijs vs. empirische data)  Belangrijkste dimensies: Kwaliteit van de oplossing Hoeveelheid rekenwerk – inspanning, snelheid Robuustheid  Verbanden tussen dimensies Fix (max) hoeveelheid werk, meet kwaliteit Fix (min) kwaliteit, meet hoeveelheid werk Fix beide, meet succes (ja of nee)

22 22 Hoeveelheid werk vs. kwalitiet Algoritme B Algoritme A Hoeveelheid werk (tijd, # stappen, …) NB Dit is de zgn “anytime behaviour” Kwaliteit van de oplossing

23 Hoeveelheid rekenwerk meten  Afhankelijk van fysieke opstelling “Echte” tijd (wall clock time) Computer tijd, CPU time, user time  Onafhankelijk van fysieke opstelling Aantal rekenstappen Aantal pogingen Aantal punten bekeken in de zoekruimte  Appels met peren vergelijken  Scale-up

24 Scale-up vergelijking Welk algoritme is beter? Waarom?

25 Testproblemen  Gedrag van het algoritme hangt af van de probleeminstantie  Beoordeling van het algoritme hangt af van het gedrag  hangt af van de probleeminstantie  Test suite: collectie van probleeminstanties gebruikt om een algoritme te beoordelen  Opties: probleeminstanties uit de echte praktijk academische collecties (internet) uit problem instance generators uit eigen makelij

26 Experimenteren  Vergelijkend vs. beschrijvend  Doelen en/of vragen  Factoren om te bestuderen / te negeren  Design (opstelling, ontwerp) vd experimenten, incl. Wat & hoe vast te leggen, variëren Wat & hoe te meten Test problemen (instanties)  Rapporteren !

27 NP en zo … Probleem X hoort bij de klasse  P:  alg. dat X oplost in polynomiale tijd  NP:  alg. dat X oplost &  alg. dat oplossingen van X verifieert in polyn. tijd  NP-complete: hoort bij NP & elk probleem Y in NP kan getransformeerd worden naar X in polynomiale tijd  NP-hard: elk probleem Y in NP kan getransformeerd worden naar X

28 GROTE VRAAG P = NP ?

29 P NP NP-complete NP-hard

30 P = NP = NP-complete NP-hard


Download ppt "Heuristieken – kennisbits 2 Guszti Eiben. 8 koninginnen oplossen versie 3  Methode: Alle koninginnen tegelijk Verbeter configuratie door ○ Maak K > 1."

Verwante presentaties


Ads door Google