Tirsdag 18. december David Pisinger



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

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

Tirsdag 12. december David Pisinger

Branch-and-bound. David Pisinger. Videregående algoritmik, DIKU (2004) 1 Introduktion Gennemgående eksempler Brute-force metoder 10

Funktionalligninger - løsningsstrategier og opgaver

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

DesignMat Uge 11 Vektorrum

Løsning af præmie- og ekstraopgave

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

DM02 opgaver ugeseddel 2

Grafteori, Kirsten Rosenkilde, september Grafteori

Symmetrisk Traveling Salesman Problemet

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

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

TALTEORI Wilsons sætning og Euler-Fermats sætning.

16. december. Resume sidste gang

Ligninger med reelle løsninger

TALTEORI Wilsons sætning og Euler-Fermats sætning.

Analyse 1, Prøve juni r+1. Men vi har øjensynligt, at 2. r r+1

TALTEORI Primfaktoropløsning og divisorer.

Hamilton-veje og kredse:

Funktioner af flere variable

MATEMATIK A-NIVEAU. Eksempel på løsning af matematik A eksamenssæt STX143-MAT/A Matematik A, STX. Anders Jørgensen & Mark Kddafi

Multipel Lineær Regression. Polynomiel regression Ikke-lineære modeller og transformation Multi-kolinearitet Auto-korrelation og Durbin-Watson test

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

Modul 5: Test for én stikprøve

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

Pendulbevægelse. Måling af svingningstid: Jacob Nielsen 1

9. marts. NP -fuldstændighed. Datalogiens største spørgsmål. Hvis kan bevise NP P fås 1 million dollar

Hamiltonkreds, den handelsrejsendes problem, delmængdesum-problemet

Taxageometri og metriske rum

Arealer under grafer

Variabel- sammenhænge

Secret Sharing. Olav Geil Institut for Matematiske Fag Aalborg Universitet URL: olav.

Kvantitative Metoder 1 - Forår 2007

Branch-and-bound. David Pisinger. Videregående algoritmik, DIKU ( ) 1 Introduktion Gennemgående eksempler Brute-force metoder 10

Tal, funktioner og grænseværdi

Afstandsformlerne i Rummet

Minimum udspændende Træer (MST)

Induktion: fra naturlige tal til generaliseret skønhed Dan Saattrup Nielsen

VIA læreruddannelsen Silkeborg. WordMat kompendium

Binære søgetræer. Nærmeste naboer Binære søgetræer Indsættelse Predecessor og successor Sletning Algoritmer på træer og trægennemløb.

Minimum udspændende Træer (MST)

Hypotese test. Repetition fra sidst Hypoteser Test af middelværdi Test af andel Test af varians Type 1 og type 2 fejl Signifikansniveau

Matematik projekt 4. Eksponentiel udvikling. Casper Wandrup Andresen 2.F Underskrift:

Finde invers funktion til en 2-gradsfunktion - ved parallelforskydning. John V Petersen

Matematisk modellering og numeriske metoder. Lektion 18

Projekt 10.1 Er der huller i Euklids argumentation? Et moderne aksiomsystem (især for A)

Hashing. Hashing. Ordbøger. Ordbøger. Ordbøger Hægtet hashing Hashfunktioner Lineær probering. Ordbøger Hægtet hashing Hashfunktioner Lineær probering

Om hvordan Google ordner websider

Tekst Notation og layout Redegørelse og dokumentation Figurer Konklusion

Lektion 6 Logaritmefunktioner

Skoleudvalget i Fredensborg Kommune har besluttet at ca % lønmidlerne skal fordeles på baggrund af sociale indikatorer

Oversigt [S] 2.7, 2.9, 11.4

Forelæsning 8: Inferens for varianser (kap 9)

Formler, ligninger, funktioner og grafer

Eksamensspørgsmål Mat C maj-juni E. TWE

Perspektiverende Datalogikursus

Er A åben? Er A afsluttet? Er A en Borel-mængde? [Vink: Prøv at skriv A som en tællelig forening af afsluttede mængder.

Retningslinjer for bedømmelsen. Georg Mohr-Konkurrencen runde

Perspektiverende Datalogikursus

Oversigt [LA] 6, 7, 8

Konfidensinterval for µ (σ kendt)

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

Skriftlig Eksamen Algoritmer og Datastrukturer (dads)

Differential- regning

Forslag til løsning af Opgaver til ligningsløsning (side172)

Sølvkorn 11 Eksponentialfunktioner og logaritmer

Piger er bedst til at bryde den sociale arv

DesignMat Egenværdier og Egenvektorer

Sudoku. Jørgen Brandt. Sudoku 1

1hf Spørgsmål til mundtlig matematik eksamen sommer 2014

Miniprojekt 3: Fejlkorligerende køder Fejlkorrigerende koder

Den bedste dåse, en optimeringsopgave

Matematik A Vejledende opgaver 5 timers prøven

Kører du altid 110? Af Seniorkonsulent Uwe Hansen, Metro Therm Hvor svært kan det være at vælge varmtvandsbeholder til en-familieboligen?

XII Vektorer i planen

1 Kapitel 5: Forbrugervalg

Perspektiverende Datalogi Klassiske Algoritmer

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

Løsningsforslag 7. januar 2011

Mindste udspændende træ

Undervisningsbeskrivelse

Tilstandsligningen for ideale gasser

P (n): rekursiv beregning af f n kræver f n beregninger af f 1. P (n) er sand for alle n 2.

Modul 3: Kontinuerte stokastiske variable

Areal. Et af de ældste skrifter om matematik, der findes, hedder Rhind Papyrus. NTRO

Udtømmende søgning 1

Kapitel 3 Centraltendens og spredning

INSTITUT FOR DATALOGI, AARHUS UNIVERSITET

Program. 1. Repetition: konfidens-intervaller. 2. Hypotese test, type I og type II fejl, signifikansniveau, styrke, en- og to-sidede test.

Andengradspolynomier

År Løn (kr.) 108,95 112,79 117,69 122,92 127,17 130,76

Differentiation af Logaritmer

Læsevejledning til resultater på regionsplan

INSTITUT FOR DATALOGI, AARHUS UNIVERSITET

Algorithms & Architectures I 2. lektion

Danske Vandværker på vej mod 2020

Symmetrisk traveling salesman problem Dat2A godkendelsesopgave 2

Undervisningsbeskrivelse

Transkript:

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) Negativt resultat om generel TSP Fuldt polynomiel-tids approximations skema FPTAS) for SUBSET-SUM Løsningsmetoder for NP -hårde opt.problemer Opdelingskriterier løsningskvalitet: optimal/ikke-optimal beregningstid: polynomiel/ikke-polynomiel Ikke-optimale metoder: løsningskvalitet: ingen garanti kan gives garanti kan gives, men det kan ikke gøres vilkårligt godt garanti kan gives, og det kan gøres vilkårligt godt beregningstid: ingen garanti kan gives polynomiel i inddata polynomiel i inddata og præcision Eksempel: knapsack problem Heuristik for Knapsack Problemet max s.t. n p j x j j= n j= w j x j c x j {0,} sorter efter aftagende effektivitet p j /w j fyld grådigt,,... så længe plads Vilkårligt dårlig løsning: Vi har: p =,w = p = M,w = M + c = M + heuristisk løsning: = optimal løsning: = M forhold: = M Eksempel: knudeoverdækning En knudeoverdækning af en ikke orienteret graf G = V,E) er en delmængde af V V så u,v) E u V eller v V eller begge) Størrelsen af en knudeoverdækning er V. Find den mindste overdækning i grafen. Approximations algoritme: Vælg tilfældig kant u, v) E. Lad V V {u} {v} Fjern kanter fra E som er incidente med u eller v Approximations algoritmen finder en knudeoverdækning V af størrelse som højst er dobbelt så stor som den optimale knudeoverdækning V af størrelse. 6 3 4 3 4

Approximations-algoritmer Approximations-algoritmer Ikke-eksakte løsningsmetoder, der giver garanti for hvor tæt på optimum man kommer. algoritmens løsningsværdi problemets optimale løsningsværdi Minimeringsproblem ) Mål: gør så lille som muligt Maximeringsproblem ) Mål: gør Generelt krav Gør så lille som mulig. så lille som muligt max ) max, ), ρn) hvor ρn) er ratio bound. Bemærk ρn) Man kan også måle relativ fejl Minimering εn) = så ρn) ρn) Altså: εn) = ρn) Maximering så = ρn) ρn) ρn) = ρn) ρn) Altså: εn) = ρn) ρn) dermed: εn) ρn) ) 6 Approximations-algoritmer approximations skema smuk) Input: instans, ε > 0 Algoritme træffer valg på basis af n og ε Output: Løsning med relativ fejl mindre end ε Skema idet familie af algoritmer Betegnelser A Approximations-algoritme PTA Polynoimel-Tids Approximations-algoritme AS Approximations Skema PTAS Polynomiel-Tids Approximations Skema FPTAS Fuldt Polynomiel-Tids Approximations Skema polynomiel-tids approx. skema smukkere) Approximations skema Algoritme kører i polynomiel tid i størrelsen af n køretid f.eks. /ε n 3 Heuristik Ingen garanti for løsningskvalitet fuldt polynomiel-tids approx. skema smukkest) Approximations skema Algoritmen kører i polynomiel tid målt i n og /ε køretid f.eks. /ε) n 3 findes ej for stærkt NP -hårde problemer) 8

Traveling Salesman Problem Approx. algoritme for TSP trekantsulighed) Givet graf G = V,E), omkostning cu,v) for hvert kant u, v) E. Find billigste Hamilton-kreds. 8 6 4 3 6 APPROX-TSP-TOURG, c) select a vertex r V [G] to be a root vertex grow a minimum spanning tree T for G from root r using MST-PRIMG,c,r) 3 let L be the list of vertices visited in a preorder tree walk of T 4 return the Hamiltonian cycle H that visits the vertices in the order L Eksempel 3 4 9 4 Trekantsulighed: u,v,w V cu,w) cu,v) + cv,w) bemærk: komplet graf) Overholdt: geometriske problemer Ej overholdt: flypriser Definition: pris af kantemængde A E ca) = u,v) A cu, v) 9 0 Sætning APPROX-TSP-TOUR er en approximations algoritme med ratio-bound ρ = for TSP opfyldende trekantsulighed. Dvs: ch) ch ) Bevis Mindste udspændende træ: T ct) ch ) full walk i grafen, besøger hver kant to gange cw) = ct) walk W ej Hamilton kreds sletter knuder. Trekantsulighed sikrer Totalt: ch) cw) ch) cw) = ct) ch ) Approx. algoritme for TSP generel) Hvis NP P findes der ingen polynomieltids approximationsalgoritme for generelt TSP med ratio bound ρ Bevis Antag at fandtes polynomiel approximations algoritme A med ratio bound ρ. Dvs finder tur med ρ Vil vise at HAM-YLE kan løses i polynomiel tid NP = P Givet instans af HAM-YLE defineret på G = V,E). Komplet graf: G = V,E ) hvor Tildel kantvægte E = {u,v) : u,v V og u v} cu,v) = { if u,v) E ρ V + if u,v) E Løs TSP for G,c).

Approx. algoritme for TSP generel) Subset-sum Problem HAM-YLE Afgør problem ρ V + TSP Hvis ρ V så findes der en Hamilton kreds Hvis > ρ V så findes der ikke en Hamilton kreds Vi har Hvis der findes en Hamilton kreds i G har TSP problemet optimal løsning = V. Hvis der ikke findes en Hamilton kreds i G vil TSP problemet vælge mindst en dyr kant cu,v) = ρ V + så > ρ V + Approximations algoritme A finder en løsning med pris opfyldende ρ Subset-sum problem delmængde sum): Givet mængde af heltal S = {x,x,...,x n } samt t Find en delmængde S S så er størst mulig For eksempel j S x j t S = {,4,6,64,6,040,093,84,344} t = 34 har løsning S = {,6,64,6,040,093,84}. Viser: Fuldt polynomiel-tids approximations skema 3 4 Eksponentiel algoritme Dynamisk programmering-lignende algoritme. Lister over tal som kan opnås med en delmængde af S Lad Liste L af positive heltal, f.eks. L =<,, 3,, 9 > x positivt heltal, f.eks. x = L + x =< 3,4,,, > P i = { tal, der kan opnås som sum af {x,...,x i } }. så gælder rekursionsligningen P i = P i P i + x i ) Her kan foreningsmængden L L udregnes i lineær tid da begge lister er sorterede i voksende orden MERGE- LISTS). Eksempel Lad S = {4,,}, t = 4 P 0 = {0} P = {0,4} P = {0,4,,9} P 3 = {0,4,,,9,,,6} Eksponentiel algoritme Algoritme EXAT-SUBSET-SUMS,t) n S L 0 0 3 for i to n do 4 L i MERGE-LISTSL i,l i + x i ) remove from L i every element that is greater than t 6 return the largest element in L n Total køretid: nt. Eksponentiel i input størrelsen n logt. F.eks: t = n, køretid n n = O n ), input n. Idé til forbedring fjern elementer i P i som ligger tæt på hinanden behold det mindste af to tal tæt på hinanden TRIM liste L 6

Trimning Trimning trim parameter med 0 < < L L Fjern så mange elementer tæt på hinanden som muligt For ethvert fjernet element y L eksisterer z L med z y + )z y + z y + ) z ) Algoritme: TRIML, ) m L L y 3 last y 3 for i to m do 4 if y i > last + ) then append y i onto the end of L last y i 6 return L Køretid: lineær. Eksempel: = 0. L =< 0,,,,0,,,3,4,9 > L =< 0,,,0,3,9 > 8 Approximations algoritme Givet instans S,t), tilladt fejl ε. vælg trimningsfaktor = ε n APPROX-SUBSET-SUMS,t, ε) n S L 0 0 3 for i to n do 4 L i MERGE-LISTSL i,l i + x i ) L i TRIML i,ε/n) 6 remove from L i every element that is greater than t return z A given by the largest element in L n Bogen kalder returnerede værdi, hvilket ikke harmonerer med at angiver optimal løsning) Sætning Fuldt polynomiel-tids approximations skema Finder en lovlig løsning z A Relative fejl er mindre end ε z A ε 3 Algoritmen kører i polynomiel tid i n og /ε Vi kan antage ε <, da -approximation nem overvej!) 9 Eksempel Instans: S = {04,0,0,0}, t = 308, ε = 0.40 Vælger = ε/n = 0.40/8 = 0.0. Forløb: line : L 0 = 0 line 4: L = 0,04 line : L = 0,04 line 6: L = 0,04 line 4: L = 0,0,04,06 line : L = 0,0,06 line 6: L = 0,0,06 line 4: L 3 = 0,0,0,06,303,40 line : L 3 = 0,0,0,303,40 line 6: L 3 = 0,0,0,303 line 4: L 4 = 0,0,0,0,03,30,303,404 line : L 4 = 0,0,0,30,404 line 6: L 4 = 0,0,0,30 Approximativ løsning: z A = 30 Optimal løsning: = 30, faktisk afvigelse %) 0

Finder en lovlig løsning Kun lovlige summer i L, alle t Naturligvis lovlig sum i sidste iteration Relativ fejl mindre end ε For ethvert fjernet element y P eksisterer z L så y + z y Ved induktion i i kan det vises at efter i iterationer gælder: For ethvert fjernet element y P i eksisterer z L i så y + ) i z y Gælder specielt for P n, dvs. der findes z L n så + ) n z z Må også gælde for z A som er den største værdi i L n så eller + ) n za + )n za Vil vise at + ) n + ε når = ε/n Relativ fejl mindre end ε Betragter f n,ε) = + ε n )n. Formel 3.3) side 3 siger at lim + x ) n = e x n n og da d dn f n,ε) > 0 er f voksende. + ε ) n e ε/ n Formel 3.) side 3 siger e x + x + x for x < så + ε ) n + ε/ + ε/) n og da ε < er ε ε, så + ε ) n + ε n Kombineret med formlen forrige side fås z A + ε og dermed z A = za z + ε = + ε ε + ε Kører i polynomiel tid i n og /ε TRIM sletter et element z z hvis z + ) z Så på ethvert tidspunkt vil elementerne i L i overholde z > + )z = αz Den tættest mulige liste ser ud som 0,,α,α,α 3,...,α k t α = + ) afstands-faktor Antal elementer er k +, hvor k findes som: α k = t k lnα = lnt k = lnt lnα = lnt ln + ) Formel 3.6) side 4 siger at for > gælder + ln + ) ln + ) + så + )lnt + ε/n)lnt k = ε/n Da ε < gælder at + ε/n) så k 4nlnt ε Køretid: Onk + )) = O ε n lnt) 3 Indsigt Approximabilitet og reduktion af problemer Da SUBSET-SUM er NP -fuldstændigt gælder f.eks. TSP p SUBSET-SUM Vi kan approximere SUBSET-SUM vilkårligt godt i polynomiel tid Gælder tilsvarende resultat for TSP? Reduktion gælder kun for afgørlighedsproblemer Såfremt vi vil løse SUBSET-SUM-DEISION skal ε = 0 4

Branch-and-bound som Approximations Skema Minimeringsproblem: givet ε > 0) For ethvert underproblem knude) lad l være en nedre grænseværdi Lad z være hidtil bedste løsning Forkast underproblem hvis l + ε) z Eksempel: ε = 0., l =, z =. Forkast knude Approximations skema. Relativ afvigelse < ε. Køretid:??? Branch-and-bound i Polynomiel tid Undersøg kun et polynomielt antal knuder M = n k Best-first søgning Stop efter M knuder Køretid polynomiel. Løsningskvalitet:???