Heuristieken – kennisbits 2

Slides:



Advertisements
Verwante presentaties
H3 Tweedegraads Verbanden
Advertisements

Omgang met kwaliteitscriteria en beoordelen
Het Nieuwe Werken De optimale werkplek Olivier van Noort Product Manager – Windows Microsoft B.V. Bastiaan de Wilde Solution.
Staafdiagram Strookdiagram
Heuristieken – kennisbits 1
Gegevensbeheer Karin Diederiks KOAC•NPC.
Muziek downloaden PVGE Computerclub 5 JANUARI 2012.
Advanced Algorithms Groep: EII7AAb
Ontwerpregels voor kruispunten
Tussenpresentatie Modelleren C Random Seeds Sanne Ernst Jarno van Roosmalen.
Blogs Annette Ficker Tim Oosterwijk Opdrachtgever: Matthieu Jonckheere
De basis Les 1 Inleiding tot het bieden
Eindpresentatie Modelleren C Random Seeds
Hoofdstuk 6: Controle structuren
The new Amazon Easy Intuitive Clean Powerful Tags User friendly.
Overzicht presentatie
Internationale hogeschool Breda Wiskunde bij het ontwerpen en evalueren van verkeerslichtenregelingen Wachten voor een verkeerslicht duurt altijd te lang…..
1 Datastructuren Sorteren: alleen of niet alleen vergelijkingen College 5.
1 Datastructuren Sorteren: alleen of niet alleen vergelijkingen (II) College 6.
Visibility-based Probabilistic Roadmaps for Motion Planning Tim Schlechter 13 februari 2003.
IJspakketten Annette Ficker Tim Oosterwijk
Insertie van etheen in BH 3 en NH 3 Doorrekenen van een reactiepad.
BiO-M Wiskundig Modelleren BiO-M Wiskundig Modelleren Lineair Programmerings-modellen Hoorcollege 2.
Fast and Effective Query Refinement B. Velez, R. Weiss, M.A. Sheldon, D.K. Gifford SIGIR 1997.
Onderzoeksmethode Oftewel: met welke specifieke onderzoeksmethode kan ik het best mijn onderzoeksvraag beantwoorden.
T U Delft Parallel and Distributed Systems group PGS Fundamentele Informatica in345 Deel 2 College 5 Cees Witteveen.
Divide and Conquer in Multi-agent Planning Multi-Agent Planning as the Process of Merging Distributed Sub-plans Eithan Ephrati and Jeffrey S. Rosenschein.
Hoofdstuk 10 Prestaties beoordelen en bijsturen
Voorspellende analyse
Workshop Onderzoeksontwerp
1 Complexiteit Bij motion planning is er sprake van drie typen van complexiteit –Complexiteit van de obstakels (aantal, aantal hoekpunten, algebraische.
Practicum I&M College deel 1
Motion planning with complete knowledge using a colored SOM Jules Vleugels, Joost N. Kok, & Mark Overmars Presentatie: Richard Jacobs.
Indeling Inleiding op PRM-planners & Medial Axis Retraction van configuraties op de Medial Axis Verbetering van retraction Verbetering van sampling Expliciete.
Path planning voor elastische objecten Robin Langerak Planning paths for elastic objects under manipulation constraints LamirauxKavraki.
Lokale zoekmethoden Goed in de praktijk:
Gedrag in organisaties, 10e editie
Ruimtevaartquiz De Maan De.
Tweedegraadsfuncties
1 Datastructuren Een informele inleiding tot Skiplists Onderwerp 13.
Grote opdracht Optimalisering Roel Wijgers MSc CQM Eindhoven
Sorteeralgoritmen. Sorteren: aanpak 1 Hoe ga je een rij getallen sorteren met PC? Sorteren door selectie (= selection sort): Zoek de kleinste waarde Sorteer.
Cooperative Transport Planning
TEKST 13 SAMENWERKING IN HET ALGEMEEN
T U Delft Parallel and Distributed Systems group PGS Fundamentele Informatica in345 Deel 2 College 3 Cees Witteveen.
TU Delft Groep Parallelle en Gedistribueerde Systemen Fundamentele Informatica IN3120 Cees Witteveen Parallelle en Gedistribueerde Systemen Faculteit EWI,
MET DANK AAN COLLEGA’S IN DEN LANDE ! vee 2012
September 2013 – 5 vwo – van der Capellen
Inhoud college Bespreken opdracht Lijnbalancering: TPM
Presentatie resultaten monitor landelijk versus lokaal maart 2014.
Baarde en de goede Hoofdstuk 11: Data-analyse
Representatie & Zoeken
T U Delft Parallel and Distributed Systems group PGS Fundamentele Informatica in345 Deel 2 College 6 Cees Witteveen.
Workshop evalueren Dcp
MBR AtT1 College 9 Diagnose met correctmodellen. Verdieping in de formalisatie. In reader: Characterizing diagnoses and Systems J. de Kleer, A.
Wat is een backup? Een back-up is een reservekopie van gegevens die zich op een gegevensdrager (bv. de harde schijf) bevinden.
Onderzoeksvaardigheden 3
Hoorcollege 1: efficiëntie en complexiteitsontwikkeling.
Rekenen en Redeneren met Oneindig Jeroen Spandaw NWD, 5 februari 2016.
Basics SERP = Search Engine Results Page Betaalde resultaten = SEA Natuurlijke resultaten = SEO Search Engine Optimization SEO is een lange termijn verhaal.
Minimum Opspannende Bomen Algoritmiek. 2 Inhoud Het minimum opspannende bomen probleem Een principe om een minimum opspannende boom te laten groeien Twee.
Gerandomiseerde algoritmes
Uitschieters Zijn alle gegevens wel bruikbaar?
Sneller een beter personeelsrooster voor de gynaecologieafdeling van het JBZ Maartje van de Vrugt PhD.
Slim tellen.
Modderdorp UNPLUGGED Bron: csunplugged.org.
Voorspellende analyse
Slim tellen.
A forest of trees even with modest numbers of tip species, the number of possible trees is frightening. De meest voor de hand liggende methode om de meest.
Transcript van de presentatie:

Heuristieken – kennisbits 2 Guszti Eiben

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

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

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

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

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

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

Probleemtypes Optimialisatie-criteria Constraints Ja Nee Free optimization problem

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

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

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

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} )

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

Constraint satisfaction via optimalisatie

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

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

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

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?

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

Welk stochastisch algoritme is beter? Waarom?

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)

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

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

Scale-up vergelijking Welk algoritme is beter? Waarom?

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

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

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

GROTE VRAAG P = NP ? 28

NP-complete P NP NP-hard

NP-complete P = NP = NP-hard