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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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 Kursus nr. 02326. Tilladte hjælpemidler: Alle hjælpemidler. Vægtning af opgaverne:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Sortering. De n tal i sorteret orden. Eksempel: Kommentarer:

Sortering. De n tal i sorteret orden. Eksempel: Kommentarer: Sortering Sortering Input: Output: n tal De n tal i sorteret orden Eksempel: Kommentarer: 6, 2, 9, 4, 5, 1, 4, 3 1, 2, 3, 4, 4, 5, 9 Sorteret orden kan være stigende eller faldende. Vi vil i dette kursus

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

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

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

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

Projekt - Visual Basic for Applications N på stribe

Projekt - Visual Basic for Applications N på stribe Projekt - Visual Basic for Applications N på stribe Mikkel Kaas og Troels Henriksen - 03x 3. november 2005 1 Introduktion Spillet tager udgangspunkt i det gamle kendte 4 på stribe, dog med den ændring,

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

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

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

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

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

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

Simulering af AntNet

Simulering af AntNet Simulering af AntNet - en routingsalgoritme baseret på ACO metaheuristikken af Sanne Bjerg Vejleder: Keld Helsgaun 2.modul Forår 2007 Bachelorprojekt Datalogi Roskilde Universitetscenter 2007 Resumé Resumé

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

19 Hashtabeller. Noter. PS1 -- Hashtabeller. Hashing problemet. Hashfunktioner. Kollision. Søgning og indsættelse.

19 Hashtabeller. Noter. PS1 -- Hashtabeller. Hashing problemet. Hashfunktioner. Kollision. Søgning og indsættelse. 19 Hashtabeller. Hashing problemet. Hashfunktioner. Kollision. Søgning og indsættelse. Sammenligning af hashtabeller og søgetræer. 281 Hashing-problemet (1). Vi ønsker at afbilde n objekter på en tabel

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

Søgning og Sortering. Søgning og Sortering. Søgning. Linæer søgning

Søgning og Sortering. Søgning og Sortering. Søgning. Linæer søgning Søgning og Sortering Søgning og Sortering Philip Bille Søgning. Givet en sorteret tabel A og et tal x, afgør om der findes indgang i, så A[i] = x. Sorteret tabel. En tabel A[0..n-1] er sorteret hvis A[0]

Læs mere

Tilgang til data. To udbredte metoder for at tilgå data: Sekventiel tilgang Random access: tilgang via ID (også kaldet key, nøgle) for dataelementer.

Tilgang til data. To udbredte metoder for at tilgå data: Sekventiel tilgang Random access: tilgang via ID (også kaldet key, nøgle) for dataelementer. Merging og Hashing Tilgang til data To udbredte metoder for at tilgå data: Sekventiel tilgang Random access: tilgang via ID (også kaldet key, nøgle) for dataelementer. API for sekventiel tilgang (API =

Læs mere

Danmarks Tekniske Universitet

Danmarks Tekniske Universitet side af 3 sider anmarks Tekniske Universitet Skriftlig prøve, den 29. maj 203. ursusnavn: lgoritmer og datastrukturer ursus nr. 02326. jælpemidler: Skriftlige hjælpemidler. et er ikke tilladt at medbringe

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

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

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

Rangerplanlægning. Per Munk Jacobsen. 31. december 2007

Rangerplanlægning. Per Munk Jacobsen. 31. december 2007 Rangerplanlægning Per Munk Jacobsen 31. december 2007 Indhold 1 Resume 4 2 Indledning 6 3 Forhold ved værkstederne 9 4 Problemformulering 14 5 Litteratur 16 5.1 Tog rute problemet for en station..................

Læs mere

HVORDAN SIKRES EN EFFEKTIV LADE INFRASTRUKTUR i DANMARK? Allan Olsen, 18. november 2014

HVORDAN SIKRES EN EFFEKTIV LADE INFRASTRUKTUR i DANMARK? Allan Olsen, 18. november 2014 HVORDAN SIKRES EN EFFEKTIV LADE INFRASTRUKTUR i DANMARK? Allan Olsen, 18. november 2014 Kørestil virkningsgrad fra batteri til elmotor 80-95 % (benzin 20 %) uøkonomisk kørsel / speeder i bund / mange opbremsninger

Læs mere

Algoritmisk geometri

Algoritmisk geometri Algoritmisk geometri 1 Intervalsøgning 2 Motivation for intervaltræer Lad der være givet en database over ansatte i en virksomhed Ansat Alder Løn Ansættelsesdato post i databasen Antag, at vi ønsker at

Læs mere

Rolf Fagerberg. Forår 2015

Rolf Fagerberg. Forår 2015 Forår 2015 Dagens program 1 2 3 4 5 Underviser:, IMADA Forskningsområde: algoritmer og datastrukturer Underviser:, IMADA Forskningsområde: algoritmer og datastrukturer Deltagere: BA i Datalogi BA i Software

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

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

Klasserne af problemer, der kan løses i deterministisk og i ikke-deterministisk polynomiel tid; polynomiel reduktion; N P-fuldstændighed

Klasserne af problemer, der kan løses i deterministisk og i ikke-deterministisk polynomiel tid; polynomiel reduktion; N P-fuldstændighed Klasserne af problemer, der kan løses i deterministisk og i ikke-deterministisk polynomiel tid; polynomiel reduktion; N P-fuldstændighed Videregående algoritmik Cormen et al. 34.1 34.3 Fredag den 12. december

Læs mere

Notat om populationsstørrelse for bæredygtigt avlsarbejde

Notat om populationsstørrelse for bæredygtigt avlsarbejde NOTAT Notat om populationsstørrelse for bæredygtigt avlsarbejde Peer Berg Seniorforsker Dato: 30. marts 2011 Side 1/5 Dette notat er udarbejdet efter aftale med Fødevarestyrelsen med henblik på, at konkretisere

Læs mere

16. marts P NP. Essentielle spørgsmål: NP P? Et problem Q kaldes NP -fuldstændigt 1 Q NP 2 R NP : R pol Q. Resume sidste gang

16. marts P NP. Essentielle spørgsmål: NP P? Et problem Q kaldes NP -fuldstændigt 1 Q NP 2 R NP : R pol Q. Resume sidste gang 16. marts 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 svaret

Læs mere

Introduktion til DM507

Introduktion til DM507 Introduktion til DM507 Rolf Fagerberg Forår 2017 1 / 20 Hvem er vi? Underviser: Rolf Fagerberg, IMADA Forskningsområde: algoritmer og datastrukturer 2 / 20 Hvem er vi? Underviser: Rolf Fagerberg, IMADA

Læs mere

Algoritmer og Datastrukturer 1. Gerth Stølting Brodal Aarhus Universitet

Algoritmer og Datastrukturer 1. Gerth Stølting Brodal Aarhus Universitet Algoritmer og Datastrukturer 1 Gerth Stølting Brodal Aarhus Universitet Kursusbeskrivelsen Kursusbeskrivelsen: Algoritmer og datastrukturer 1 Formål Deltagerne vil efter kurset have indsigt i algoritmer

Læs mere

Analyse af ombytningspuslespil

Analyse af ombytningspuslespil Analyse af ombytningspuslespil 1 / 7 Konkret eksempel på algoritmeanalyse Prøv ombytningspuslespillet på kurset webside. 2 / 7 Konkret eksempel på algoritmeanalyse Prøv ombytningspuslespillet på kurset

Læs mere

af koblede differentialligninger (se Apostol Bind II, s 229ff) 3. En n te ordens differentialligning

af koblede differentialligninger (se Apostol Bind II, s 229ff) 3. En n te ordens differentialligning EKSISTENS- OG ENTYDIGHEDSSÆTNINGEN Vi vil nu bevise eksistens- og entydighedssætningen for ordinære differentialligninger. For overskuelighedens skyld vil vi indskrænke os til at undersøge een 1. ordens

Læs mere

BRP Sortering og søgning. Hægtede lister

BRP Sortering og søgning. Hægtede lister BRP 18.10.2006 Sortering og søgning. Hægtede lister 1. Opgaver 2. Selection sort (udvælgelsessortering) 3. Kompleksitetsanalyse 4. Merge sort (flettesortering) 5. Binær søgning 6. Hægtede lister 7. Øvelser:

Læs mere

Et udtrykstrç med de ære regnearter, heltalskonstanter og variabler beskrives. Type Expr = Sumèplus, minus, times, div: Args, const: Int, name: Textè

Et udtrykstrç med de ære regnearter, heltalskonstanter og variabler beskrives. Type Expr = Sumèplus, minus, times, div: Args, const: Int, name: Textè Opgave 1 è20èè Et udtrykstrç med de ære regnearter, heltalskonstanter og variabler beskrives af fçlgende rekursive Trine-type: Type Expr = Sumèplus, minus, times, div: rgs, const: Int, name: Textè Type

Læs mere

Algoritmeskabeloner: Sweep- og søgealgoritmer C#-version

Algoritmeskabeloner: Sweep- og søgealgoritmer C#-version Note til Programmeringsteknologi Akademiuddannelsen i Informationsteknologi Algoritmeskabeloner: Sweep- og søgealgoritmer C#-version Finn Nordbjerg 1/9 Indledning I det følgende introduceres et par abstrakte

Læs mere

Ideer til datalogiprojekter. Keld Helsgaun

Ideer til datalogiprojekter. Keld Helsgaun Ideer til datalogiprojekter Keld Helsgaun 1 Keld Helsgaun Forskning: kombinatorisk optimering heuristisk søgning (kunstig intelligens) programmeringsværktøjer Undervisning: programmering, datastrukturer

Læs mere

Nærskibsfart med bundlinieeffekt: Klima og miljø. Hans Otto Kristensen. hohk@mek.dtu.dk. Tlf: 45 25 13 95 alt. 40 45 90 20

Nærskibsfart med bundlinieeffekt: Klima og miljø. Hans Otto Kristensen. hohk@mek.dtu.dk. Tlf: 45 25 13 95 alt. 40 45 90 20 Nærskibsfart med bundlinieeffekt: Klima og Hans Otto Kristensen hohk@mek.dtu.dk Tlf: 45 25 13 95 alt. 4 45 9 2 Sidste nyt vedr. TEMA 21 ang. lastbiler Effekt og fartafhængighed for skibe Baggrund for DTU

Læs mere

Danmarks Tekniske Universitet

Danmarks Tekniske Universitet ksamen 06, side af sider anmarks Tekniske Universitet Skriftlig prøve, den 6. maj 0. ursusnavn: lgoritmer og datastrukturer ursus nr. 06. Tilladte hjælpemidler: Skriftlige hjælpemidler. Varighed: timer

Læs mere

Skemalægning med genetiske algoritmer Datalogisk speciale, RUC 2/6/2009 Skrevet af: Flemming R.P. Rasch Vejleder: Henning Christiansen

Skemalægning med genetiske algoritmer Datalogisk speciale, RUC 2/6/2009 Skrevet af: Flemming R.P. Rasch Vejleder: Henning Christiansen Skemalægning med genetiske algoritmer Datalogisk speciale, RUC 2/6/2009 Skrevet af: Flemming R.P. Rasch Vejleder: Henning Christiansen 2 Resume: I dette speciale præsenteres skemalægning som et datalogisk

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

Bits DM534. Rolf Fagerberg, 2012

Bits DM534. Rolf Fagerberg, 2012 Bits DM534 Rolf Fagerberg, 2012 Resume af sidst Overblik over kursus Introduktion. Tre pointer: Datalogi er menneskeskabt og dynamisk. Tidslinie over fremskridt mht. ideer og hardware. Algoritme er et

Læs mere