Approximationsalgoritme giver garanti for løsningskvalitet Heuristik giver ingen garanti for løsningskvalitet

Størrelse: px
Starte visningen fra side:

Download "Approximationsalgoritme giver garanti for løsningskvalitet Heuristik giver ingen garanti for løsningskvalitet"

Transkript

1 Generelle optimeringsheuristikker Også kaldet metaheuristikker. Idag gennemgås: Indplacering Lokal søgning Simuleret udgløding Tabusøgning Genetiske algoritmer Løsningsmetoder for NP -hårde opimeringsproblemer Opdelingskriterier løsningskvalitet: optimal/ikke-optimal beregningstid: polynomiel/ikke-polynomiel Approximationsalgoritme giver garanti for løsningskvalitet Heuristik giver ingen garanti for løsningskvalitet 1

2 Generelle optimeringsheuristikker Branch-and-bound helhedsbetragtninger til at finde grænseværdier global struktur holder styr på alle delproblemer Konstruktionsheuristikker konstruerer en løsning fra grunden når først et valg er truffet er det låst Lokalsøgning forbedrer løsninger, tidligere valg ændres omegn, validering, objektfunktion Definitioner Løsningsrum S Objektfunktion f : S R skal minimeres Omegn N s S for hver løsning s S Omegn skal opfylde at alle løsninger kan nås Skridt (overgang) betegner s s 2

3 Simpleste lokalsøgning algorithm lokalsøgning vælg en initiel løsning s S repeat vælg en løsning s N s if accepter ny løsning(s s ) then s : s until stopkriterium; Acceptkriterium: f.eks. trinvis forbedring f s s Eksempel: TSP 3

4 Design af lokalsøgningsalgoritmer Balanceakt mellem Intensivering (skal forfølge gode løsninger til bunds) Diversifikation (skal komme rundt i løsningsrummet) Intensivering Grådigt paradigme Selvom havner i lokalt minimum, undersøges omegn Diversifikation Genstart fra tilfældigt sted Accepter dårligere løsninger nogle gange Undgå at besøge tidligere besøgte løsninger tilfældighed i valg af naboløsninger forbyd alle tidligere besøgte løsninger 4

5 Varianter af lokalsøgning algorithm trinvis forbedring vælg en initiel løsning s S repeat vælg en løsning s N s if f s f s then s : s until s er et lokalt minimum return s Løsning s er lokalt minimum hvis s N s : f s f s Trinvis forbedring: Vælg en vilkårlig s N s hvor f s f s. Stejleste nedstigning: Vælg s N s så f s f ŝ for alle ŝ N s Genstart: Benyt forskellige initielle løsninger for trinvis forbedring eller stejleste nedstigning. 5

6 Simuleret udglødning Fysiske systemer: metal, glas (Metropolis 1953) Heuristik (Kirkpatrick 1983) f s s Heuristik har intet at gøre med fysiske systemer s N s vælges tilfældigt Intensivering: accepter altid f s f s Diversifikation: accepter f s f s med sandsynlighed P s s e f s f s T hvor T er aftagende kontrolparamter (såkaldt temperatur) 1 e x x 6

7 Ordbog Dowsland (1995) viser følgende sammenhæng mellem fysisk nedkøling og optimering Thermodynamic Simulation Combinatorial Optimisation System States Feasible Solutions Energy Cost Change of State Neighbouring Solutions Temperature Control Parameter Frozen State Heuristic Solution 7

8 Simuleret udglødning algorithm simuleret udglødning vælg en initiel løsning s S vælg en initiel temperatur T repeat vælg en løsning s N s if f s f s then s : s else p : rand 0 1 f s f s T then s : s if p e end T : ny temperatur T until stopkriterium return s Hvad skal initiel temperatur T 0 være? Hvorledes skal T i 1 udregnes på basis af T i? Hvornår skal algoritmen slutte? 8

9 Simuleret udglødning Initiel temperatur Bestemmes eksperimentelt Accept ratio χ T 0 5 ved T 0 Kølingsrate T i 1 : αt i, 0 α 1 jo større α des længere køretid Stopkriterie Temperaturen T kommer under en given grænse T s Ingen forbedring sidste K iterationer Der findes også en variant af simuleret udglødning hvor der foretages M skridt for hver temperatur, inden denne sænkes. Ingen signifikant forskel. 9

10 Simuleret udglødning Laarhoven (1988) viste at hvis temperatur sænkes uendeligt langsomt,og der er uendeligt mange skridt til rådighed, så vil simuleret udglødning returnere optimal løsning. lim P optimal løsning 1 langsom afkøling mange iterationer Bevis baseret på Markovkæder 10

11 Simuleret udglødning for grafdeling a 2 4 b e 1 V E og omkostnings funktion c : E N. Del V i to lige store dele V 1 og V 2 så omkostningen af kanter u v hvor u V 1 og v V 2 minimeres. Givet graf G Lad x v 1 hvis v V 1 mens x v 0 hvis v V 2. Kvadratisk minimeringsproblem: min c u v uv x u 1 x v V hvor 8 3 f 7 6 x v v V 2 V 9 c d 5 11

12 Simuleret udglødning for grafdeling Objektfunktion: f x c u v uv x u V 1 x v Omegn: Ombyt to elementer k hvor k V 1 og V 2 Udregning af objektfunktion: Trivielt O V 2 Ved ombytning af knuder ændres objektfunktionen f v V v V x v c kv 1 x v c kv v V 1 x v c v v V x v c v (idet x k 1 x k 0 og x 0 x 1). Kan beregnes i O V tid. 12

13 Simuleret udglødning, diskussion Intensivering Fordele diversifikation Intensivering: Accepter altid forbedrende løsning Diversifikation: Accepter forværret løsning med lille sandsynlighed Algoritmen gennemløber kontinuum fra stærk diversifikation til intensiv søgning ulæmper + Robust algoritme uanset omegn N s + Få parametre (T 0 α), disse kan justeres automatisk Ikke videre grådig, meget tid bruges på at gætte Hints Mest vellykket søgning midt i udglødning, derfor varianter med genopvarmning Udregn f s : f s f Kan være hensigtsmæssigt at tillade ulovlige løsninger mod straf i objektfunktion Genstart 13

14 Tabusøgning Tidligere algoritmer Trinvis forbedring Stejleste nedstigning Genstart Simuleret udglødning Ingen af ovenstående har hukommelse Tabusøgning opsamler information og bruger hukommelse til at styre søgning har ingen simpel definition er svær at analysere matematisk kræver mere tilpasning til hvert problem/omegn 14

15 Tabusøgning Paradigmet anvendt i 1970 erne, nuværende form indført af Glover (1986)... a framework that links the perspectives of artificial intelligence and operations research... effective strategies for combinatorial problems can require methods that formal theorems are unable to justify Methods that are intelligently flexible lie in some yet-to-be-defined realm to which theorems do not apply, yet which embraces enough structure to exclude aimless wandering Vellykkede anvendelser og klogt valgt navn har gjort tabusøgning til standard metaheuristik Ordbog AI ordinary meaning tabu forbidden (change of solution vector) tabu list table of previous solutions (compact) aspiration level objective function value aspiration criterion accept criterion long time memory statistics of good/bad solutions 15

16 Tabusøgning f s s Videreudvikling af stejleste nedstigning algorithm tabusøgning vælg en initiel løsning s S sæt s : s intialiser tabuliste repeat find bedste løsning s s : s opdater tabuliste if f s until stopkriterium return s f s then s : s N s som ikke er tabu 16

17 Tabusøgning Grundlæggende strategi vælg mest forbedrende (eller mindst forværrende) skridt i hver iteration undgå cykler ved at forbyde visse løsninger/skridt, såkaldte tabuløsninger Implementation forbyd alle tidligere løsninger forbyd max k tidligere løsninger forbyd max k tidligere skridt forbyd løsninger med en given attribut Tabuliste: hvis ændrer x i a til x i b tilføjes x i a x 3 1 x 4 7 x

18 Tabusøgning Tabulistens længde for lille: cykler for stor: tidskrævende at kontrollere tabu alt for restriktiv Med længde M garanteres cykler M 1 Aspirationskriterie Giver mulighed for at bryde forbud i tabulisten hvis objektfunktion bedre end hidtil globalt bedste hvis objektfunktion bedre end daværende bedste x 3 1 x 4 7 x

19 Tabusøgning for grafdeling Objektfunktion: f x c u v uv x u V 1 x v Omegn: Ombyt to elementer k hvor k V 1 og V 2 Mindre Omegn: Flyt et element fra V 1 til V 2 eller omvendt. Straf for ej overholdt begrænsning. Effektiv udregning af objektfunktion f s : f s f Tabuliste: Hvis knude k flyttes fra V 1 til V 2 (x k 1 x k 0) variabel k forbudt tilstand Hvis aspirationskriterie benyttes husker jeg gældende objektfunktion sammen med tabu listen: variabel k forbudt tilstand objektfunktion

20 Tabu Søgning for Kvadratisk Tildeling n faciliteter med strøm a i j fra facilitet i til j n lokaliteter med afstand b i j fra lokalitet i til j find en permutation π der minimerer f π n i 1 π i er facilitet i s placering n a i j b π i π j j 1 lokalitet facilitet Løsningsrum: alle mulige permutationer af n tal, O n! 20

21 Tabu Søgning for Kvadratisk Tildeling Omegn N π π π opnås ved at ombytte to elementer i π lokalitet facilitet I tabu-listen gemmes følgende skridt i j : facilitet i og j bytter plads u v : lokalitet u og v bytter plads Dårlig repræsentation da i j k l i k j l l k j i l k i j k l i j i l k j i j k l forhindrer ikke cyklisk opførsel I tabu-listen gemmes følgende skridt i π i og j π j 21

22 Sammenligning Iteration 2 Iteration 7 Global optimum Iteration 1 High quality area Low quality area Iteration 4 Iteration 3 Iteration 5 Iteration 6 High quality area a) Solution space model b) Random restart Start Start c) Simulated annealing d) Tabu search 22

23 Tabusøgning, diskussion Intensivering Fordele diversifikation Intensivering: Bedste løsning i N s vælges Diversifikation: Tabuliste, aspirationskriterier ulæmper + Meget grådig Følsom overfor omegns størrelse da hele N s skal gennemsøges Flere parametre end simuleret udglødning Deterministisk, kan derfor cykle + Veldesignet algoritme giver gode løsninger Hints Betragt kun en delmængde af N s hvis N s er stor Udregn f s : f s f Kan være hensigtsmæssigt at tillade ulovlige løsninger mod straf i objektfunktion Reaktiv tabusøgning, langtidshukommelse, genstart 23

24 Genetiske algoritmer Indført af Holland (1975) motiveret af Darvinisme Princip population af løsninger udvælgelse krydsning mutation algorithm genetisk optimering vælg en initiel population P s i, hvor s i S repeat evaluer population(p); udvælg individer(p, basis); kryds individer(basis, P ); muter individer(p ); P : P until stopkriterium return P 24

25 Genetiske algoritmer Udvælgelse survival of the fittest objektfuntion f s K s kvalitetsmål udvælgelsessandsynlighed p u s K s s P K s vælger probabilistisk P gange Krydsning: gentag til P individer 1 udvælg en tilfældig løsning s 1 fra basis 2 overfør s 1 direkte til nye generation med sandsynlighed p d 3 udvælg en anden løsning s 2, kryds s 1 og s 2 overfør afkom til ny generation med sandsynlighed 1 p d. Bemærk: gamle individer kan overleve, typisk p d

26 Genetiske algoritmer Krydsning to-punkts krydsning s 1 : s 2 : s 1 : s 2 : bedste eller begge medtages i næste generation Mutation ændrer et tegn s 1 : s 1 : sikre spredning i population da risiko for at alle ens sandsynlighed p m 1 P krydsning skal være vigtigste operator 26

27 Genetiske algoritmer, TSP G V E med vægte d i j, find korteste Hamilton-kreds Permutation π af n som minimierer f π n d π i π i 1 i 1 Krydsning skal bevare at π er permutation π 1 : π 2 : π 1 : π 2 : (to-punkts) π 1 : π 2 : (et-punkts) Mutation π: π : (ombyt to elementer) 27

28 Genetiske algoritmer, diskussion Intensivering diversifikation Intensivering: Population af løsninger Diversifikation: Krydsning, mutation Fordele ulæmper + Returnerer familie af løsninger + Bevarer lokale egenskaber Dyrt at vedligeholde mange ens løsninger Svært at finde god kodning for mange problemer Temmelig mange paramtere + Parametre kan indgå som del af strengen (mod øget beregning) Hints Population P 100 Stopkriterium: uændret bedste løsning K gange 28

29 Litteratur P.J.M. van Laarhoven (1988), Theoretical and computational aspects of simulated annealing, Erasmus University, Rotterdam, PhD thesis. N. Metropolis m.fl. (1953) Equation of state calculations by fast computing machines, Journal of Chemical Physics, 21, S. Kirkpatrick, C.D. Gelatt, M.P. Vecchi (1983) Optimization by Simulated Annealing, Science 220, J.H. Holland (1975) Adaptation in Natural and Artificial Systems, University of Michigan Press, Ann Arbor. Reeves (1995) Modern Heuristic Techniques for Combinatorial Problems, McGraw-Hill. F. Glover (1986) Tabu Search, part I, ORSA Journal on Computing 1, Dowsland (1995) Variants of Simulated Annealing for Practical Problem Solving in V. J. Rayward-Smith (Ed) Applications of Modern Heuristic Methods, Henley-on- Thames, Alfred Waller,

Generelle optimeringsheuristikker

Generelle optimeringsheuristikker Generelle optimeringheuritikker Ogå kaldet metaheuritikker. Idag gennemgå: Indplacering Lokal øgning Simuleret udgløding Genetike algoritmer Generelle optimeringheuritikker Branch-and-bound helhedbetragtninger

Læs mere

Løs til optimalitet i eksponentiel tid Find tilnærmet løsning i polynomielt tid Optimeringsproblemer kan ikke altid verificeres i polynomiel

Løs til optimalitet i eksponentiel tid Find tilnærmet løsning i polynomielt tid Optimeringsproblemer kan ikke altid verificeres i polynomiel I dag Løsning af NP -hårde optimeringsproblemer Repetition: branch-and-bound Flere begreber Konkret eksempel: TSP Lagrange relaxering Parallel branch-and-bound 1 Opsummering Løsning af NP -hårde optimeringsproblemer

Læs mere

Symmetrisk Traveling Salesman Problemet

Symmetrisk Traveling Salesman Problemet Symmetrisk Traveling Salesman Problemet Videregående Algoritmik, Blok 2 2008/2009, Projektopgave 2 Bjørn Petersen 9. december 2008 Dette er den anden af to projektopgaver på kurset Videregående Algoritmik,

Læs mere

Sidste gang Motivation Definitioner Approximations-algoritme for knudeoverdækning Approximations-algoritme for TSP med trekantsulighed

Sidste gang Motivation Definitioner Approximations-algoritme for knudeoverdækning Approximations-algoritme for TSP med trekantsulighed Approximations-algoritmer Sidste gang Motivation Definitioner Approximations-algoritme for knudeoverdækning Approximations-algoritme for TSP med trekantsulighed Negativt resultat om generel TSP Approximations-algoritme

Læs mere

Løs til optimalitet i eksponentiel tid Find tilnærmet løsning i polynomiel tid

Løs til optimalitet i eksponentiel tid Find tilnærmet løsning i polynomiel tid 6 april Løsning af N P -hårde problemer Løs til optimalitet i eksponentiel tid Find tilnærmet løsning i polynomiel tid Oversigt Grænseværdier (repetition) Branch-and-bound algoritmens komponenter Eksempler

Læs mere

Tirsdag 12. december David Pisinger

Tirsdag 12. december David Pisinger Videregående Algoritmik, DIKU 2006/07 Tirsdag 12. december David Pisinger Resume sidste to gang Sprog L : mængden af instanser for et afgørlighedsproblem hvor svaret er 1. P = {L : L genkendes af en algoritme

Læs mere

Noter til kursusgang 8, IMAT og IMATØ

Noter til kursusgang 8, IMAT og IMATØ Noter til kursusgang 8, IMAT og IMATØ matematik og matematik-økonomi studierne 1. basissemester Esben Høg 25. oktober 2013 Institut for Matematiske Fag Aalborg Universitet Esben Høg Noter til kursusgang

Læs mere

Branch-and-bound. David Pisinger. Videregående algoritmik, DIKU (2007-08) 1 Introduktion 5 1.1 Gennemgående eksempler... 7. 2 Brute-force metoder 10

Branch-and-bound. David Pisinger. Videregående algoritmik, DIKU (2007-08) 1 Introduktion 5 1.1 Gennemgående eksempler... 7. 2 Brute-force metoder 10 Branch-and-bound David Pisinger Videregående algoritmik, DIKU (2007-08) Indhold 1 Introduktion 5 1.1 Gennemgående eksempler..................... 7 2 Brute-force metoder 10 3 Divide and Conquer 11 4 Grænseværdier

Læs mere

Dynamisk programmering

Dynamisk programmering Dynamisk programmering Dynamisk programmering Et algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer. Har en hvis lighed med divide-and-conquer: Begge opbygger løsninger til større problemer

Læs mere

Parallelisering/Distribuering af Genetiske Algoritmer

Parallelisering/Distribuering af Genetiske Algoritmer Parallelisering/Distribuering af Genetiske Algoritmer Hvorfor parallelisere/distribuere? Standard GA algoritme Modeller Embarassing parallel Global (fitness evaluering) Island (subpopulation) Grid/Cellular

Læs mere

Dynamisk programmering

Dynamisk programmering Dynamisk programmering Dynamisk programmering Optimeringsproblem: man ønsker at finde bedste den kombinatoriske struktur blandt mange mulige. Dynamisk programmering Optimeringsproblem: man ønsker at finde

Læs mere

Grådige algoritmer. Et generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer.

Grådige algoritmer. Et generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer. Grådige algoritmer Grådige algoritmer Et generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer. Grådige algoritmer Et generelt algoritme-konstruktionsprincip ( paradigme ) for

Læs mere

.. if L(u) + w(u, v) < L(v) then.. begin... L(v) := L(u) + w(u, v)... F (v) := u.. end. med længde L(z)}

.. if L(u) + w(u, v) < L(v) then.. begin... L(v) := L(u) + w(u, v)... F (v) := u.. end. med længde L(z)} Procedure Dijkstra(G = (V, E): vægtet sh. graf,. a, z: punkter) { Det antages at w(e) > 0 for alle e E} For alle v V : L(v) := L(a) := 0, S := while z / S begin. u := punkt ikke i S, så L(u) er mindst

Læs mere

Netværksalgoritmer 1

Netværksalgoritmer 1 Netværksalgoritmer 1 Netværksalgoritmer Netværksalgoritmer er algoritmer, der udføres på et netværk af computere Deres udførelse er distribueret Omfatter algoritmer for, hvorledes routere sender pakker

Læs mere

Algoritmedesign med internetanvendelser ved Keld Helsgaun

Algoritmedesign med internetanvendelser ved Keld Helsgaun Algoritmedesign med internetanvendelser ved Keld Helsgaun 1 Analyse af algoritmer Input Algoritme Output En algoritme er en trinvis metode til løsning af et problem i endelig tid 2 Algoritmebegrebet D.

Læs mere

Et generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer. Ideen er simpel:

Et generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer. Ideen er simpel: Grådige algoritmer Grådige algoritmer Et generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer. Ideen er simpel: Opbyg løsningen skridt for skridt ved hele tiden af vælge lige

Læs mere

Grådige algoritmer. Et generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer.

Grådige algoritmer. Et generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer. Grådige algoritmer Grådige algoritmer Et generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer. Grådige algoritmer Et generelt algoritme-konstruktionsprincip ( paradigme ) for

Læs mere

Dynamisk programmering

Dynamisk programmering Dynamisk programmering Dynamisk programmering Optimeringsproblem: man ønsker at finde bedste den kombinatoriske struktur (struktur opbygget af et endeligt antal enkeltdele) blandt mange mulige. Eksempler:

Læs mere

Sprog L : mængden af instanser for et afgørlighedsproblem

Sprog L : mængden af instanser for et afgørlighedsproblem 26. marts Resume sidste to gang Sprog L : mængden af instanser for et afgørlighedsproblem hvor svaret er 1. P NP L : L genkendes af en algoritme i polynomiel tid L : L verificeres af en polynomiel tids

Læs mere

Korteste veje i vægtede grafer. Længde af sti = sum af vægte af kanter på sti.

Korteste veje i vægtede grafer. Længde af sti = sum af vægte af kanter på sti. Korteste veje Korteste veje i vægtede grafer Længde af sti = sum af vægte af kanter på sti. Korteste veje i vægtede grafer Længde af sti = sum af vægte af kanter på sti. δ(u, v) = længden af en korteste

Læs mere

Skriftlig Eksamen Algoritmer og Datastrukturer (DM507)

Skriftlig Eksamen Algoritmer og Datastrukturer (DM507) Skriftlig Eksamen Algoritmer og Datastrukturer (DM507) Institut for Matematik og Datalogi Syddansk Universitet, Odense Onsdag den 0. juni 009, kl. 9 Alle sædvanlige hjælpemidler (lærebøger, notater, osv.)

Læs mere

Videregående Algoritmik. Version med vejledende løsninger indsat!

Videregående Algoritmik. Version med vejledende løsninger indsat! Videregående Algoritmik DIKU, timers skriftlig eksamen, 1. april 009 Nils Andersen og Pawel Winter Alle hjælpemidler må benyttes, dog ikke lommeregner, computer eller mobiltelefon. Opgavesættet består

Læs mere

Grådige algoritmer. Et generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer.

Grådige algoritmer. Et generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer. Grådige algoritmer Grådige algoritmer Et generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer. Grådige algoritmer Et generelt algoritme-konstruktionsprincip ( paradigme ) for

Læs mere

Grundlæggende køretidsanalyse af algoritmer

Grundlæggende køretidsanalyse af algoritmer Grundlæggende køretidsanalyse af algoritmer Algoritmers effektivitet Størrelse af inddata Forskellige mål for køretid Store -notationen Klassiske effektivitetsklasser Martin Zachariasen DIKU 1 Algoritmers

Læs mere

Korteste veje i vægtede grafer. Længde af sti = sum af vægte af kanter på sti.

Korteste veje i vægtede grafer. Længde af sti = sum af vægte af kanter på sti. Korteste veje Korteste veje i vægtede grafer Længde af sti = sum af vægte af kanter på sti. Korteste veje i vægtede grafer Længde af sti = sum af vægte af kanter på sti. δ(u, v) = længden af en korteste

Læs mere

Tirsdag 18. december David Pisinger

Tirsdag 18. december David Pisinger Videregående Algoritmik, DIKU 00-08 Tirsdag 8. december David Pisinger Approximations-algoritmer Motivation Definitioner Approximations-algoritme for knudeoverdækning Approximations-algoritme for TSP trekantsulighed)

Læs mere

Analyse af algoritmer

Analyse af algoritmer Analyse af algoritmer Analyse af algoritmer Køretid Pladsforbrug Asymptotisk notation O, Θ og Ω-notation. Eksperimentiel analyse af algoritmer Philip Bille Analyse af algoritmer Analyse af algoritmer Køretid

Læs mere

Approksimationsalgoritmer for k-median og facility location problemer, vha. lokalsøgning

Approksimationsalgoritmer for k-median og facility location problemer, vha. lokalsøgning Approksimationsalgoritmer for k-median og facility location problemer, vha. lokalsøgning Peter Neergaard Jensen, Christian Plum & Mette Gamst 8. januar 2006 1 Indledning I forbindelse med kurset Approkismationsalgoritmer,

Læs mere

Tabusøgning til effektivisering af eksakt VRP algoritme baseret på søjlegenerering

Tabusøgning til effektivisering af eksakt VRP algoritme baseret på søjlegenerering Institut for Regnskab, Finansiering og Logistik Kandidatafhandling Forfattere: Anders K. Knudsen Jutta J. Jørgensen Vejleder: Jens Lysgaard Tabusøgning til effektivisering af eksakt VRP algoritme baseret

Læs mere

Mobile Robotter på Bispebjerg Hospital

Mobile Robotter på Bispebjerg Hospital Mobile Robotter på Bispebjerg Hospital Bachelorprojekt af Emil Brøgger Kjer (s062379) Anders Hersland (s062216) Vejleder: Thomas Bolander 6. Juli 2009 IMM Danmarks Tekniske Universitet 1 Abstract The aim

Læs mere

Danmarks Tekniske Universitet

Danmarks Tekniske Universitet side af sider Danmarks Tekniske Universitet Skriftlig prøve, den. maj 00. Kursusnavn Algoritmer og datastrukturer Kursus nr. 06. Tilladte hjælpemidler: Alle hjælpemidler. Vægtning af opgaverne: Opgave

Læs mere

M=3 kunde forbindelse. oprettet lokation Steinerkant

M=3 kunde forbindelse. oprettet lokation Steinerkant M=3 åben facilitet kunde forbindelse lukket facilitet oprettet lokation Steinerkant v Connected facility location-problemet min i f i y i + d j c ij x ij + M c e z e (1) j i e hvorom gælder: x ij 1 j (2)

Læs mere

Hamilton-veje og kredse:

Hamilton-veje og kredse: Hamilton-veje og kredse: Definition: En sti x 1, x 2,...,x n i en simpel graf G = (V, E) kaldes en hamiltonvej hvis V = n og x i x j for 1 i < j n. En kreds x 1, x 2,...,x n, x 1 i G kaldes en hamiltonkreds

Læs mere

Danmarks Tekniske Universitet

Danmarks Tekniske Universitet side af sider Danmarks Tekniske Universitet Skriftlig prøve, den 6. maj 0. Kursusnavn: Algoritmer og datastrukturer I Kursus nr. 005. Tilladte hjælpemidler: Skriftlige hjælpemidler. Varighed: timer Vægtning

Læs mere

Udtømmende søgning 1

Udtømmende søgning 1 Udtømmende søgning Udtømmende søgning (kombinatorisk søgning) Systematisk gennemsøgning af alle potentielle løsninger Den rejsende sælgers problem (TSP): En sælger skal besøge N byer Find den korteste

Læs mere

DM559/DM545 Linear and integer programming

DM559/DM545 Linear and integer programming Department of Mathematics and Computer Science University of Southern Denmark, Odense June 10, 2017 Marco Chiarandini DM559/DM545 Linear and integer programming Sheet 12, Spring 2017 [pdf format] The following

Læs mere

Danmarks Tekniske Universitet

Danmarks Tekniske Universitet side af sider Danmarks Tekniske Universitet Skriftlig prøve, den 6. maj 0. Kursusnavn: Algoritmer og datastrukturer Kursus nr. 06. Tilladte hjælpemidler: Skriftlige hjælpemidler. Varighed: timer Vægtning

Læs mere

Mindste udspændende træ. Mindste udspændende træ. Introduktion. Introduktion

Mindste udspændende træ. Mindste udspændende træ. Introduktion. Introduktion Philip Bille Introduktion (MST). Udspændende træ af minimal samlet vægt. Introduktion (MST). Udspændende træ af minimal samlet vægt. 0 0 Graf G Ikke sammenhængende Introduktion (MST). Udspændende træ af

Læs mere

Orienterede grafer. Orienterede grafer. Orienterede grafer. Vejnetværk

Orienterede grafer. Orienterede grafer. Orienterede grafer. Vejnetværk Philip Bille Orienteret graf (directed graph). Mængde af knuder forbundet parvis med orienterede kanter. Vejnetværk Knude = vejkryds, kant = ensrettet vej. deg + (6) =, deg - (6) = sti fra til 6 8 7 9

Læs mere

Algoritmer og invarianter

Algoritmer og invarianter Algoritmer og invarianter Iterative algoritmer Algoritmen er overordnet set een eller flere while eller for-løkker. Iterative algoritmer Algoritmen er overordnet set een eller flere while eller for-løkker.

Læs mere

Grådige algoritmer. Et algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer.

Grådige algoritmer. Et algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer. Grådige algoritmer Grådige algoritmer Et algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer. Grådige algoritmer Et algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer.

Læs mere

Logistik og optimering

Logistik og optimering Logistik og optimering JENS LYSGAARD Professor Institut for Økonomi Aarhus Universitet Forskningscentret CORAL v. Institut for Økonomi Logistik og optimering CORAL: Cluster for Operations Research And

Læs mere

Danmarks Tekniske Universitet

Danmarks Tekniske Universitet side af 2 sider Danmarks Tekniske Universitet Skriftlig prøve, den 2. maj 200. Kursusnavn Algoritmer og datastrukturer I Kursus nr. 0205. Tilladte hjælpemidler: Alle skriftlige hjælpemidler. Vægtning af

Læs mere

Danmarks Tekniske Universitet

Danmarks Tekniske Universitet side af 2 sider Danmarks Tekniske Universitet Skriftlig prøve, den 2. maj 200. Kursusnavn Algoritmer og datastrukturer Kursus nr. 02326. Tilladte hjælpemidler: Alle hjælpemidler. Vægtning af opgaverne:

Læs mere

Udtømmende søgning. Udtømmende søgning (kombinatorisk søgning) Problem med 4461 byer Udtømmende søgning i grafer. Find den korteste rundtur

Udtømmende søgning. Udtømmende søgning (kombinatorisk søgning) Problem med 4461 byer Udtømmende søgning i grafer. Find den korteste rundtur Udtømmende søgning Udtømmende søgning (kombinatorisk søgning) Systematisk gennemsøgning af alle potentielle løsninger Den rejsende sælgers problem (TSP): En sælger skal besøge N byer ind den korteste rundtur

Læs mere

Hamiltonkreds, den handelsrejsendes problem, delmængdesum-problemet

Hamiltonkreds, den handelsrejsendes problem, delmængdesum-problemet , den handelsrejsendes problem, delmængdesum-problemet Videregående algoritmik Cormen et al. 34.5.3 34.5.5 Fredag den 19. december 2008 1 N P-fuldstændige problemer 1 N P-fuldstændige problemer 2 Reduktion

Læs mere

Sortering. Eksempel: De n tal i sorteret orden

Sortering. Eksempel: De n tal i sorteret orden Sortering 1 / 34 Sortering Input: Output: Eksempel: n tal De n tal i sorteret orden 6, 2, 9, 4, 5, 1, 4, 3 1, 2, 3, 4, 4, 5, 9 2 / 34 Sortering Input: Output: Eksempel: n tal De n tal i sorteret orden

Læs mere

Skriftlig Eksamen Algoritmer og Datastrukturer 2 (2003-ordning)

Skriftlig Eksamen Algoritmer og Datastrukturer 2 (2003-ordning) Skriftlig Eksamen Algoritmer og Datastrukturer 2 (2003-ordning) Datalogisk Institut Aarhus Universitet Fredag den 28. maj 2004, kl. 9.00 13.00 Opgave 1 (20%) En (r, k) kryds-graf er en orienteret graf

Læs mere

Pointen med Funktioner

Pointen med Funktioner Pointen med Funktioner Frank Nasser 0. april 0 c 0080. Dette dokument må kun anvendes til undervisning i klasser som abonnerer på MatBog.dk. Se yderligere betingelser for brug her. Bemærk: Dette er en

Læs mere

Divide-and-Conquer algoritmer

Divide-and-Conquer algoritmer Divide-and-Conquer algoritmer Divide-and-Conquer algoritmer Det samme som rekursive algoritmer. Divide-and-Conquer algoritmer Det samme som rekursive algoritmer. 1. Opdel problem i mindre delproblemer

Læs mere

Mindste udspændende træ

Mindste udspændende træ Mindste udspændende træ Introduktion Repræsentation af vægtede grafer Egenskaber for mindste udspændende træer Prims algoritme Kruskals algoritme Philip Bille Mindste udspændende træ Introduktion Repræsentation

Læs mere

Mindste udspændende træ. Mindste udspændende træ. Introduktion. Introduktion

Mindste udspændende træ. Mindste udspændende træ. Introduktion. Introduktion Philip Bille Introduktion (MST). Udspændende træ af minimal samlet vægt. Introduktion (MST). Udspændende træ af minimal samlet vægt. 0 0 Graf G Ikke sammenhængende Introduktion (MST). Udspændende træ af

Læs mere

Dynamisk programmering. Flere eksempler

Dynamisk programmering. Flere eksempler Dynamisk programmering Flere eksempler Eksempel 1: Længste fælles delstreng Alfabet = mængde af tegn: {a,b,c,...,z}, {A,C,G,T}, {,1} Streng = sekvens x 1 x 2 x 3... x n af tegn fra et alfabet: helloworld

Læs mere

Ugeseddel 12(10.12 14.12)

Ugeseddel 12(10.12 14.12) Ugeseddel (..) Matematisk Programmering Niels Lauritzen..7 FORELÆSNINGER I ugen. 7. gennemgik vi algoritmer til løsning af heltalsprogrammer ved hjælp af simplex algoritmen. Dette er heltalsprogrammeringsugesedlen

Læs mere

Skriftlig Eksamen Beregnelighed (DM517)

Skriftlig Eksamen Beregnelighed (DM517) Skriftlig Eksamen Beregnelighed (DM517) Institut for Matematik & Datalogi Syddansk Universitet Mandag den 31 Oktober 2011, kl. 9 13 Alle sædvanlige hjælpemidler (lærebøger, notater etc.) samt brug af lommeregner

Læs mere

Grafer og graf-gennemløb

Grafer og graf-gennemløb Grafer og graf-gennemløb Grafer En mængde V af knuder (vertices). En mængde E V V af kanter (edges). Dvs. ordnede par af knuder. Grafer En mængde V af knuder (vertices). En mængde E V V af kanter (edges).

Læs mere

Divide-and-Conquer algoritmer

Divide-and-Conquer algoritmer Divide-and-Conquer algoritmer Divide-and-Conquer algoritmer Det samme som rekursive algoritmer. Divide-and-Conquer algoritmer Det samme som rekursive algoritmer. 1. Opdel problem i mindre delproblemer

Læs mere

Danmarks Tekniske Universitet

Danmarks Tekniske Universitet side af sider Danmarks Tekniske Universitet Skriftlig prøve, den. maj 00. Kursusnavn Algoritmer og datastrukturer I Kursus nr. 005. Tilladte hjælpemidler: Alle skriftlige hjælpemidler. Vægtning af opgaverne:

Læs mere

Sortering. Eksempel: De n tal i sorteret orden

Sortering. Eksempel: De n tal i sorteret orden Sortering 1 / 32 Sortering Input: Output: Eksempel: n tal De n tal i sorteret orden 6, 2, 9, 4, 5, 1, 4, 3 1, 2, 3, 4, 4, 5, 9 2 / 32 Sortering Input: Output: Eksempel: n tal De n tal i sorteret orden

Læs mere

Differential Evolution (DE) "Biologically-inspired computing", T. Krink, EVALife Group, Univ. of Aarhus, Denmark

Differential Evolution (DE) Biologically-inspired computing, T. Krink, EVALife Group, Univ. of Aarhus, Denmark Differential Evolution (DE) Differential Evolution (DE) (Storn and Price, 199) Step 1 - Initialize and evaluate Generate a random start population and evaluate the individuals x 2 search space x 1 Differential

Læs mere

Sortering af information er en fundamental og central opgave.

Sortering af information er en fundamental og central opgave. Sortering Sortering Input: Output: Eksempel: n tal De n tal i sorteret orden 6, 2, 9, 4, 5, 1, 4, 3 1, 2, 3, 4, 4, 5, 9 Mange opgaver er hurtigere i sorteret information (tænk på ordbøger, telefonbøger,

Læs mere

Divide-and-Conquer algoritmer

Divide-and-Conquer algoritmer Divide-and-Conquer algoritmer Divide-and-Conquer algoritmer Det samme som rekursive algoritmer. 1. Opdel problem i mindre delproblemer (af samme type). 2. Løs delproblemerne ved rekursion (dvs. kald algoritmen

Læs mere

Rolf Fagerberg. Forår 2013

Rolf Fagerberg. Forår 2013 Forår 2013 Mål for i dag Dagens program: 1 2 3 4 5 6 Forudsætninger: DM536 og DM537 Timer: 50% forelæsninger, 50% øvelser Forudsætninger: DM536 og DM537 Eksamenform: Skriftlig eksamen: Timer: 50% forelæsninger,

Læs mere

Approximations-algoritmer. Løsningsmetoder for NP -hårde opt.problemer

Approximations-algoritmer. Løsningsmetoder for NP -hårde opt.problemer Motivation Definitioner Approximations-algoritme for nudeoverdæning Approximations-algoritme for TSP med treantsulighed Negativt resultat om generel TSP Approximations-algoritme for SET-OVERING Fuldt polynomiel-tids

Læs mere

Divide-and-Conquer algoritmer

Divide-and-Conquer algoritmer Divide-and-Conquer algoritmer Divide-and-Conquer algoritmer Det samme som rekursive algoritmer. Divide-and-Conquer algoritmer Det samme som rekursive algoritmer. 1. Opdel problem i mindre delproblemer

Læs mere

En karakteristik af de regulære sprog. Ugens emner. FA minimering [5.1-5.2] MyHill-Nerode-sætningen en algoritme til minimering af FA er

En karakteristik af de regulære sprog. Ugens emner. FA minimering [5.1-5.2] MyHill-Nerode-sætningen en algoritme til minimering af FA er Ugens emner FA minimering [.-.] MyHill-Nerode-sætningen en algoritme til minimering af FA er En karakteristik af de regulære sprog Et sprog L er regulært hvis og kun hvis L beskrives af et regulært udtryk

Læs mere

Datastrukturer (recap)

Datastrukturer (recap) Dictionaries Datastrukturer (recap) Data: Datastruktur = data + operationer herpå En ID (nøgle) + associeret data. Operationer: Datastrukturens egenskaber udgøres af de tilbudte operationer (API for adgang

Læs mere

Algoritmer og datastrukturer Course No. 02105 Cheat Sheet 2012. May 15, 2012

Algoritmer og datastrukturer Course No. 02105 Cheat Sheet 2012. May 15, 2012 Algoritmer og datastrukturer Course No. 02105 Cheat Sheet 2012 May 15, 2012 1 CONTENTS 2012 CONTENTS Contents 1 Kompleksitet 3 1.1 Køretid................................................ 3 1.2 Asymptotisk

Læs mere

Korteste veje. Introduktion Egenskaber for korteste veje Dijkstras algoritme Korteste veje på DAGs. Philip Bille

Korteste veje. Introduktion Egenskaber for korteste veje Dijkstras algoritme Korteste veje på DAGs. Philip Bille Korteste veje Introduktion Egenskaber for korteste veje Dijkstras algoritme Korteste veje på DAGs Philip Bille Korteste veje Introduktion Egenskaber for korteste veje Dijkstras algoritme Korteste veje

Læs mere

Sortering af information er en fundamental og central opgave.

Sortering af information er en fundamental og central opgave. Sortering 1 / 36 Sortering Input: Output: Eksempel: n tal De n tal i sorteret orden 6, 2, 9, 4, 5, 1, 4, 3 1, 2, 3, 4, 4, 5, 6, 9 Mange opgaver er hurtigere i sorteret information (tænk på ordbøger, telefonbøger,

Læs mere

Fractal compression a technology in search of a problem

Fractal compression a technology in search of a problem Fractal compression a technology in search of a problem Bryggervej 30, 8240 Århus N 4. januar 2011 Oversigt 1 Magien bag ved Matematikken Kopimaskinen Simsalabim Partitioneret IFS 2 Collage theorem De

Læs mere

Skriftlig eksamen i Datalogi

Skriftlig eksamen i Datalogi Roskilde Universitetscenter side 1 af 9 sider Skriftlig eksamen i Datalogi Modul 1 Vinter 1999/2000 Opgavesættet består af 6 opgaver, der ved bedømmelsen tillægges følgende vægte: Opgave 1 5% Opgave 2

Læs mere

16. december. Resume sidste gang

16. december. Resume sidste gang 16. december Resume sidste gang Abstrakt problem, konkret instans, afgørlighedsproblem Effektiv kodning (pol. relateret til binær kodning) Sprog L : mængden af instanser for et afgørlighedsproblem hvor

Læs mere

DM559/DM545 Linear and integer programming

DM559/DM545 Linear and integer programming Department of Mathematics and Computer Science University of Southern Denmark, Odense June 10, 2017 Marco Chiarandini DM559/DM545 Linear and integer programming Sheet 12, Spring 2017 [pdf format] The following

Læs mere

Orienterede grafer. Orienterede grafer. Orienterede grafer. Orienterede grafer

Orienterede grafer. Orienterede grafer. Orienterede grafer. Orienterede grafer Philip Bille Orienteret graf. Mængde af knuder forbundet parvis med orienterede kanter. deg + (7) =, deg - (7) = Lemma. v V deg - (v) = v V deg + (v) = m. Bevis. Hver kant har netop en startknude og slutknude.

Læs mere

Korteste veje. Introduktion Egenskaber for korteste veje Dijkstras algoritme Korteste veje på DAGs. Philip Bille

Korteste veje. Introduktion Egenskaber for korteste veje Dijkstras algoritme Korteste veje på DAGs. Philip Bille Korteste veje Introduktion Egenskaber for korteste veje Dijkstras algoritme Korteste veje på DAGs Philip Bille Korteste veje Introduktion Egenskaber for korteste veje Dijkstras algoritme Korteste veje

Læs mere

Målet for disse slides er at beskrive nogle algoritmer og datastrukturer relateret til at gemme og hente data effektivt.

Målet for disse slides er at beskrive nogle algoritmer og datastrukturer relateret til at gemme og hente data effektivt. Merging og hashing Mål Målet for disse slides er at beskrive nogle algoritmer og datastrukturer relateret til at gemme og hente data effektivt. Dette emne er et uddrag af kurset DM507 Algoritmer og datastrukturer

Læs mere

Mindste udspændende træ

Mindste udspændende træ Mindste udspændende træ Introduktion Repræsentation af vægtede grafer Egenskaber for mindste udspændende træer Prims algoritme Kruskals algoritme Philip Bille Mindste udspændende træ Introduktion Repræsentation

Læs mere

Undersøgelse af en genetisk algoritme

Undersøgelse af en genetisk algoritme Undersøgelse af en genetisk algoritme Study of a genetic algorithm Gruppe 2, hus 13.2 Gruppemedlemmer: Sanne Bjerg Tanja Josefsen Pernille Hviid Petersen Claus Daldorph Nielsen Rasmus Rasmussen Vejleder:

Læs mere

Perspektiverende Datalogi Klassiske Algoritmer

Perspektiverende Datalogi Klassiske Algoritmer Perspektiverende Datalogi Klassiske Algoritmer Gerth Stølting Brodal 1 Indhold Eksempler på beregningsproblemer Algoritmer og deres analyse Korrekthed af algoritmer Ressourceforbrug for algoritmer Kompleksitet

Læs mere

Symmetrisk traveling salesman problem Dat2A godkendelsesopgave 2

Symmetrisk traveling salesman problem Dat2A godkendelsesopgave 2 Symmetrisk traveling salesman problem Dat2A godkendelsesopgave 2 Jens Kristian Jensen, David Pisinger og Martin Zachariasen 13. april 2003 1 Formalia Dette er den anden af to godkendelsesopgaver på kurset

Læs mere

Orienterede grafer. Introduktion Repræsentation Søgning Topologisk sortering og DAGs Stærke sammenhængskomponenter Implicitte grafer.

Orienterede grafer. Introduktion Repræsentation Søgning Topologisk sortering og DAGs Stærke sammenhængskomponenter Implicitte grafer. Orienterede grafer Introduktion Repræsentation Søgning Topologisk sortering og DAGs Stærke sammenhængskomponenter Implicitte grafer Philip Bille Orienterede grafer Introduktion Repræsentation Søgning Topologisk

Læs mere

Skriftlig Eksamen Algoritmer og Datastrukturer (dads)

Skriftlig Eksamen Algoritmer og Datastrukturer (dads) Skriftlig Eksamen Algoritmer og Datastrukturer (dads) Datalogisk Institut Aarhus Universitet Mandag den 27. maj 2002, kl. 9.00 13.00 Opgave 1 (25%) Denne opgave handler om multiplikation af positive heltal.

Læs mere

DREAM s livsforløbsmodel - Model og algoritme

DREAM s livsforløbsmodel - Model og algoritme DREAM s livsforløbsmodel - Model og algoritme Peter Stephensen, DREAM 9. September 2009, version.0 Indledning DREAM har påbegyndt et forskningsprojekt finansieret af EPRN-netværkert med titlen Livsforløbsanalyse

Læs mere

DM517:Supplerende noter om uafgørlighedsbeviser:

DM517:Supplerende noter om uafgørlighedsbeviser: DM517:Supplerende noter om uafgørlighedsbeviser: Jørgen Bang-Jensen October 9, 2013 Abstract Formålet med denne note er at give en form for kogebogsopskrift på, hvorledes man bygger et uafgørlighedsbevis

Læs mere

Perspektiverende Datalogikursus

Perspektiverende Datalogikursus Perspektiverende Datalogikursus Uge 1 - Algoritmer og kompleksitet Gerth Stølting Brodal 27. august 2004 1 Indhold Mere om Eksempler på beregningsproblemer Algoritmer og deres analyse Korrekthed af algoritmer

Læs mere

Ruteplanlægning i praksis. Allan H. Rasmussen. Kgs. Lyngby 2004 IMM-THESIS

Ruteplanlægning i praksis. Allan H. Rasmussen. Kgs. Lyngby 2004 IMM-THESIS Ruteplanlægning i praksis Allan H. Rasmussen Kgs. Lyngby 2004 IMM-THESIS-2004-51 Ruteplanlægning i praksis Allan H. Rasmussen Kgs. Lyngby 2004 Technical University of Denmark Informatics and Mathematical

Læs mere

Korteste veje i vægtede grafer. Længde af sti = sum af vægte af kanter på sti.

Korteste veje i vægtede grafer. Længde af sti = sum af vægte af kanter på sti. Korteste veje Korteste veje i vægtede grafer Længde af sti = sum af vægte af kanter på sti. Korteste veje i vægtede grafer Længde af sti = sum af vægte af kanter på sti. δ(u, v) = længden af en korteste

Læs mere

Broer, skak og netværk Carsten Thomassen: Naturens Verden 10, 1992, s. 388-393.

Broer, skak og netværk Carsten Thomassen: Naturens Verden 10, 1992, s. 388-393. Broer, skak og netværk Side 1 af 6 Broer, skak og netværk Carsten Thomassen: Naturens Verden 10, 1992, s. 388-393. Eksempler på praktiske anvendelser af matematik og nogle uløste problemer Indledning Figur

Læs mere

Algorithms & Architectures I 2. lektion

Algorithms & Architectures I 2. lektion Algorithms & Architectures I 2. lektion Design-teknikker: Divide-and-conquer Rekursive algoritmer (Recurrences) Dynamisk programmering Greedy algorithms Backtracking Dagens lektion Case eksempel: Triple

Læs mere

Sammenhængskomponenter i grafer

Sammenhængskomponenter i grafer Sammenhængskomponenter i grafer Ækvivalensrelationer Repetition: En relation R på en mængde S er en delmængde af S S. Når (x, y) R siges x at stå i relation til y. Ofte skrives x y, og relationen selv

Læs mere

Den rejsende sælgers problem. Den rejsende sælgers problem. Første omtale af problemet 1832

Den rejsende sælgers problem. Den rejsende sælgers problem. Første omtale af problemet 1832 Den rejsende sælgers problem? En sælger skal besøge n byer og vende tilbage til sit udgangspunkt I hvilken rækkefølge skal han besøge byerne, hvis han ønsker at minimere sine rejseomkostninger? Den rejsende

Læs mere

Sekvensafstand DM34 - Eksamensopgave. Jacob Aae Mikkelsen

Sekvensafstand DM34 - Eksamensopgave. Jacob Aae Mikkelsen Sekvensafstand DM34 - Eksamensopgave Jacob Aae Mikkelsen 19 10 76 kokken@grydeske.dk 27. maj 2005 Resumé Rapporten her beskriver tre forskellige rekursive metoder til at sammenligne tekst strenge med.

Læs mere

Analyse af algoritmer. Analyse af algoritmer. Analyse af algoritmer. Køretid

Analyse af algoritmer. Analyse af algoritmer. Analyse af algoritmer. Køretid Philip Bille Mål. At bestemme og forudsige resourceforbrug og korrekthed af algoritmer Eks. Virker min algoritme til at beregne korteste veje i grafer? Hvor hurtigt kører min algoritme til at søge efter

Læs mere

22 Hobe. Noter. PS1 -- Hobe. Binære hobe. Minimum-hob og maximum-hob. Den abstrakte datatype minimum-hob. Opbygning af hobe. Operationen siv-ned.

22 Hobe. Noter. PS1 -- Hobe. Binære hobe. Minimum-hob og maximum-hob. Den abstrakte datatype minimum-hob. Opbygning af hobe. Operationen siv-ned. 22 Hobe. Binære hobe. Minimum-hob og maximum-hob. Den abstrakte datatype minimum-hob. Opbygning af hobe. Operationen siv-ned. Indsættelse i hobe. Sletning af minimalt element i hobe. Repræsentation. 327

Læs mere

Introduktion. Introduktion. Algoritmer og datastrukturer. Eksempel: Maksimalt tal

Introduktion. Introduktion. Algoritmer og datastrukturer. Eksempel: Maksimalt tal Philip Bille Algoritmer og datastrukturer Algoritmisk problem. Præcist defineret relation mellem input og output. Algoritme. Metode til at løse et algoritmisk problem. Beskrevet i diskrete og entydige

Læs mere

Introduktion. Algoritmer og datastrukturer Toppunkter Algoritme 1 Algoritme 2 Algoritme 3. Philip Bille

Introduktion. Algoritmer og datastrukturer Toppunkter Algoritme 1 Algoritme 2 Algoritme 3. Philip Bille Introduktion Algoritmer og datastrukturer Toppunkter Algoritme 1 Algoritme 2 Algoritme 3 Philip Bille Introduktion Algoritmer og datastrukturer Toppunkter Algoritme 1 Algoritme 2 Algoritme 3 Algoritmer

Læs mere

Målet for disse slides er at diskutere nogle metoder til at gemme og hente data effektivt.

Målet for disse slides er at diskutere nogle metoder til at gemme og hente data effektivt. Merging og hashing Mål Målet for disse slides er at diskutere nogle metoder til at gemme og hente data effektivt. Dette emne er et uddrag af kurset DM507 Algoritmer og datastrukturer (2. semester). Mål

Læs mere

Dynamisk programmering. Flere eksempler

Dynamisk programmering. Flere eksempler Dynamisk programmering Flere eksempler Eksempel 1: Længste fælles delstreng Alfabet = mængde af tegn: {a,b,c,...,z}, {A,C,G,T}, {,1} Eksempel 1: Længste fælles delstreng Alfabet = mængde af tegn: {a,b,c,...,z},

Læs mere

Analyse 2. Bevis af Fatous lemma (Theorem 9.11) Supplerende opgave 1. Øvelser

Analyse 2. Bevis af Fatous lemma (Theorem 9.11) Supplerende opgave 1. Øvelser Analyse 2 Øvelser Rasmus Sylvester Bryder 24. og 27. september 203 Bevis af Fatous lemma (Theorem 9.) Hvis (u j ) j er en følge af positive, målelige, numeriske funktioner (dvs. med værdier i [, ]) over

Læs mere