De presentatie wordt gedownload. Even geduld aub

De presentatie wordt gedownload. Even geduld aub

Heuristieken – kennisbits 2

Verwante presentaties


Presentatie over: "Heuristieken – kennisbits 2"— 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 Concepten bij probleem- definities
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

8 Probleemtypes Optimialisatie-criteria Constraints Ja Nee
Free optimization problem

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

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

11 Probleemtypes Optimialisatie-criteria Constraints Ja Nee
Constrained optimization problem Constraint satisfaction problem 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 : Q1(c) = som van strafpunten voor alle koninginnen Q2(c) = aantal foute koninginnen Voor beide geldt: Qi(c) = 0  alle constraints OK, dus oplossing Qi 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 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 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 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 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 Hoeveelheid werk vs. kwalitiet
Algoritme B Algoritme A Kwaliteit van de oplossing Hoeveelheid werk (tijd, # stappen, …) NB Dit is de zgn “anytime behaviour”

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 ! 26

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 27

28 GROTE VRAAG P = NP ? 28

29 NP-complete P NP NP-hard

30 NP-complete P = NP = NP-hard


Download ppt "Heuristieken – kennisbits 2"

Verwante presentaties


Ads door Google