Dynamisk programmering. Hvilke problemer? Optimalitetsprinsippet. Overlappende delproblemer

Like dokumenter
Dynamisk programmering. Hvilke problemer? Overlappende delproblemer. Optimalitetsprinsippet

Dynamisk programmering. Hvilke problemer? Overlappende delproblemer. Optimalitetsprinsippet

Dynamisk programmering

Dynamisk programmering

Dynamisk programmering Undervises av Stein Krogdahl

Dagens stoff er hentet fra kapittel 9 i læreboka, samt kapittel 20.5 (som vi «hoppet over» sist)

IT1105 Algoritmer og datastrukturer

MA1301 Tallteori Høsten 2014

Forelesning 3 mandag den 25. august

Balanserte søketrær. AVL-trær. AVL-trær. AVL-trær høyde AVL AVL. AVL-trær (Adelson-Velskii og Landis, 1962) Splay-trær (Sleator og Tarjan, 1985)

Geometriske operasjoner

EKSAMEN ny og utsatt løsningsforslag

TMA4265 Stokastiske prosesser

Anvendelser. Kapittel 12. Minste kvadraters metode

Appendiks 1: Organisering av Riksdagsdata i SPSS. Sannerstedt- og Sjölins data er klargjort for logitanalyse i SPSS filen på følgende måte:

STK1100 våren 2015 P A B P B A. Betinget sannsynlighet. Vi trenger en definisjon av betinget sannsynlighet! Eksemplet motiverer definisjonen:

EKSAMEN Løsningsforslag

Sorterings- Algoritmer

Geometriske operasjoner

EKSAMEN I FAG SIF5040 NUMERISKE METODER Tirsdag 15. mai 2001 Tid: 09:00 14:00

TMA4265 Stokastiske prosesser

TMA4240/4245 Statistikk Eksamen august 2016

Løsningsforslag øving 10 TMA4110 høsten 2018

Eksamen i emne SIB8005 TRAFIKKREGULERING GRUNNKURS

Alternerende rekker og absolutt konvergens

Fourieranalyse. Fourierrekker på reell form. Eksempel La. TMA4135 Matematikk 4D. En funksjon sies å ha periode p > 0 dersom

Oppgaven består av 9 delspørsmål som anbefales å veie like mye, Kommentarer og tallsvar er skrevet inn mellom <<, >>, Oppgave 1

Oppgaver. Multiple regresjon. Forelesning 3 MET3592 Økonometri ved David Kreiberg Vår 2011

TALLSVAR. Det anbefales at de 9 deloppgavene merket med A, B, teller likt uansett variasjon i vanskelighetsgrad. Svarene er gitt i << >>.

Oppgave 3, SØK400 våren 2002, v/d. Lund

EKSAMEN Ny og utsatt Løsningsforslag

Prosjektering av Ferskvannsgenerator

Statistikk og økonomi, våren 2017

Forelesning nr.3 INF 1411 Elektroniske systemer

UNIVERSITETET I OSLO ØKONOMISK INSTITUTT

Løsningsskisse til eksamen i TFY112 Elektromagnetisme,

Forelesning nr.3 INF 1411 Elektroniske systemer. Parallelle og parallell-serielle kretser Kirchhoffs strømlov

FYS3140 KORT INTRODUKSJON TIL KONTINUERLIGE GRUPPER

Videreutvikling i retn. velferdsteori: Komplette markeder, S tilstander, homogene oppfatninger

Simpleksmetoden. Initiell basistabell Fase I for å skaffe initiell, brukbar løsning. Fase II: Iterativ prosess for å finne optimal løsning Pivotering

Sluttrapport. utprøvingen av

Fast valutakurs, selvstendig rentepolitikk og frie kapitalbevegelser er ikke forenlig på samme tid

TALLSVAR. Det anbefales at de 9 deloppgavene merket med A, B, teller likt uansett variasjon i vanskelighetsgrad. Svarene er gitt i <<< >>>.

Rullingslager. Innhold. Kap. 5 Dimensjonering av Rullingslager. Friksjon: glide- og rullefriksjon. Et lager er

Forelesning Z-, t-test, test for forventningsdifferanser

Løsningskisse for oppgaver til uke 15 ( april)

NÆRINGSSTRUKTUR OG INTERNASJONAL HANDEL

i kjemiske forbindelser 5. Hydrogen har oksidasjonstall Oksygen har oksidsjonstall -2

Eksamen Nynorsk side 2 4. Bokmål side 5 7. Felles vedlegg side 9 17

Illustrasjon av regel 5.19 om sentralgrenseteoremet og litt om heltallskorreksjon (som i eksempel 5.18).

Eksamen ECON 2200, Sensorveiledning Våren Deriver følgende funksjoner. Deriver med hensyn på begge argumenter i e) og f).

Løsningsforslag ST2301 Øving 8

Norske CO 2 -avgifter - differensiert eller uniform skatt?

Sparing gir mulighet for å forskyve forbruk over tid; spesielt kan ujevne inntekter transformeres til jevnere forbruk.

Fleksibelt arbeidsliv. Befolkningsundersøkelse utført for Manpower September 2015

Tema for forelesningen var Carnot-sykel (Carnot-maskin) og entropibegrepet.

Studieprogramundersøkelsen 2013

Investering under usikkerhet Risiko og avkastning Høy risiko. Risikokostnad prosjekt Snøskuffe. Presisering av risikobegrepet

ØVINGER 2017 Løsninger til oppgaver

Søking i strenger. Prefiks-søking Naiv algoritme Knuth-Morris-Pratt-algoritmen Suffiks-søking Boyer-Moore-algoritmen Hash-basert Karp-Rabin-algoritmen

Asker og Bærum tingrett Postboks SANDVIKA Oslo, 24. oktober Ansvarlig advokat: Lage Sverdnip-Thygcson Vår ref.

SIF4012 og MNFFY103 høst 2002: Sammendrag uke 44 (Alonso&Finn )

Arbeid og potensiell energi

Seleksjon og uttak av alderspensjon fra Folketrygden

Terrasser TRAPPER OG REKKVERK LAG DIN EGEN UTEPLASS! VÅRE PRODUKTER HAR LANG LEVETID OG DU VIL HA GLEDE I DET DU HAR BYGGET I MANGE ÅR FREMOVER

DEN NORSKE AKTUARFORENING

Arbeid og potensiell energi

1653B/1654B. Installasjonstest på et IT anlegg i drift

DET KONGELIGE FISKERI- OG KYSTDEPARTEMENT. prisbestemmelsen

Turingmaskiner.

Forelesning nr.3 INF 1410

INF2310 Digital bildebehandling

X ijk = µ+α i +β j +γ ij +ǫ ijk ; k = 1,2; j = 1,2,3; i = 1,2,3; i=1 γ ij = 3. i=1 α i = 3. j=1 β j = 3. j=1 γ ij = 0.

Litt om empirisk Markedsavgrensning i form av sjokkanalyse

Brukermanual. Appen som gjør varebestilling enkelt og oversiktlig. DentalSpar OrdreApp - Brukermanual V01.4

Anvendelser. Plass og tid. INF2310 Digital bildebehandling. Eksempler: Plassbehov uten kompresjon. Forelesning 10. Kompresjon og koding I

4 Energibalanse. TKT4124 Mekanikk 3, høst Energibalanse

FORELESNINGSNOTATER I INFORMASJONSØKONOMI Geir B. Asheim, våren 2001 (oppdatert ). 4.1 LIKEVEKTSBEGREP FOR SIGNALISERINGSSPILL.

må det justeres for i avkastningsberegningene. se nærmere nedenfor om valg av beregningsmetoder.

Veiledning til obligatorisk oppgave i ECON 3610/4610 høsten N. Vi skal bestemme den fordeling av denne gitte arbeidsstyrken som

Forelesning 4 og 5 MET3592 Økonometri ved David Kreiberg Vår 2011

FOLKETELLINGEN 1. NOVEMBER Tellingsresultater Tilbakegående tall - Prognoser SARPSBORG 0102 STATISTISK SENTRALBYRÅ - OSLO

Spenningsforsterkningen til JFET kretsen er gitt ved A = g

C(s) + 2 H 2 (g) CH 4 (g) f H m = -74,85 kj/mol ( angir standardtilstand, m angir molar størrelse)

Positive rekker. Forelest: 3. Sept, 2004

Forelesninger i spillteori V 2003, del 1. Telenor Mobil, NetCom Rimi, Rema, andre SAS, lavprisselskaper Charterselskaper

Innkalling til andelseiermøte

UNIVERSITETET I OSLO ØKONOMISK INSTITUTT

(iii) Når 5 er blitt trukket ut, er det tre igjen som kan blir trukket ut til den siste plassen, altså:

NOEN SANNSYNLIGHETER I BRIDGE Av Hans-Wilhelm Mørch.

Alderseffekter i NVEs kostnadsnormer. - evaluering og analyser

Arbeid og potensiell energi

2006/27 Notater 2006 Om samordning av utvalg ved bruk av PRN-tall

NA Dok. 52 Angivelse av måleusikkerhet ved kalibreringer

Makroøkonomi - B1. Innledning. Begrep. Mundells trilemma 1 går ut på følgende:

En teoretisk studie av tv-markedets effisiens

MoD233 - Geir Hasle - Leksjon 10 2

Introduksjon Online Rapport Din trinn for trinn-guide til den nye Online Rapporten (OLR) Online Rapport

' FARA INNKALLING TIL ORDINÆR GENERALFORSAMLING (FARA ASA

KVIKKSØLVEKSPONERING VED DENTALLABORATORIER. Nils Gundersen og Arve Lie HD 807/790814

Transkript:

ynask prograerng Metoden ble foralsert av Rchard Bellann (RAN Corporaton på -tallet. Prograerng betydnngen planlegge, ta beslutnnger. (Har kke noe ed kode eller å skrve kode å gøre. ynask for å ndkere at det er en stegvs prosess. Men også et pynteord. Hvlke probleer? ynask prograerng brukes typsk tl å løse optalserngsprobleer. (Probleer hvor det kan være ange ulge løsnnger, og hvor v ønsker å fnne den beste. Skal v kunne løse et proble ed dynask prograerng, å det kunne deles opp ndre og ndre bter helt tl v koer tl et delproble så lte at løsnngen lett kan fnnes. V starter ed løsnngene på så delprobleer, og kobnerer dsse tl løsnnger på større delprobleer, helt tl v har løsnngen på hele probleet. Skal det bl en effektv algorte å: Optaltetsprnsppet holde, delprobleer å overlappe, og antall delprobleer være polynosk. Optaltetsprnsppet Gtt et optalserngsproble, og en funksonen cobne so kobnerer løsnnger på delprobleer tl løsnnger på større probleer, så ser v at Optaltetsprnsppet holder hvs følgende alltd er sant: Hvs S = cobne(s, S,, S, og S er en optal løsnng på sn problenstans, Overlappende delprobleer En dynask prograerngs-algorte starter ed å løse de nste delprobleene, og setter saen dsse løsnngene tl løsnnger på større og større probleer. Hvs sae delproble forekoer flere ganger, unngår v dobbeltarbed. Løsnngene på delprobleene lagres nelg, og v slpper å løse dette delprobleet flere ganger. så er S, S,, S optale løsnnger på sne respektve problenstanser. Hvs optaltetsprnsppet holder, er probleet egnet for løsnng ed dynask prograerng. a genereres bare optale løsnnger på delprobleer når v starter fra optale løsnnger på de nste delprobleene, og kobnerer dsse tl løsnnger på større probleer.

Overlappende delprobleer En dynask prograerngs-algorte starter ed å løse de nste delprobleene, og setter saen dsse løsnngene tl løsnnger på større og større probleer. Hvs sae delproble forekoer flere ganger, unngår v dobbeltarbed. Løsnngene på delprobleene lagres nelg, og v slpper å løse dette delprobleet flere ganger. vde and conquer vs. ynask prograerng vde and conquer (f.eks Qucksort Top down (rekursvt kall Best egnet når delprobleene er uavhengge av hverandre. a re-beregnes kke løsnnger på delprobleer. Kun relevante delprobleer løses. ynask prograerng Botto up Egnet når delprobleer overlapper, etterso løsnnger lagres en tabell og v kan slå opp når v støter på et delproble v har løst. Ulepen er at v beregner løsnnger på alle delprobleer. Metodene kan kobneres, såkalt eoserng, en dvde and conquer algorte kan lagre løsnnger på delprobleer en tabell og slå opp for å unngå dobbeltarbed. Fre enkle(? steg. Beskrv strukturen probleet, hvordan en løsnng er satt saen av delløsnnger. Verfser at optalserngsprnsppet faktsk holder.. Lag en forel for verden av en optal løsnng (ut fra verden av av optale delløsnnger.. Beregn verden tl en optal løsnng, botto up (lagre verden av optale delløsnnger en tabell. (kap.. En streng P er en k-approksason av en streng T derso T kan konverteres tl P ved å utføre aksalt k av følgende operasoner: Substtuson Et sybol T byttes ut ed et annet. Tllegg Et nytt sybol legges tl T. Slettng Et sybol slettes fra T. Edt dstance, E(P,T, ello to strenger P og T er det nste antall slke operasoner so trengs for å konvertere P tl T.. Konstruer en optal løsnng ut fra beregnede verder. (O v faktsk ønsker løsnngen, og kke bare nøyer oss ed verden av en optal løsnng. Eks. logarth alogarth algarth algorth (+a, -o, a/o

.. Gtt to strenger T og P, ønsker v å fnne edt dstance ello dsse. Gtt to strenger T og P, ønsker v å fnne edt dstance ello dsse. La [ ] = E( P [: ], T [: ]. (Edt dstance ello delstrenger La [ ] = E( P [: ], T [: ]. (Edt dstance ello delstrenger V deler følgende delprobleer: V deler følgende delprobleer:. Hvs P [ ] = T [ ], så er [ ] = [ -, -]. a P[: ] = a T[: ]. Hvs P [ ] T [ ], å v se på en optal sekvens av operasoner so transforerer T [: ] tl P [: ]. La oss se på operasonen for å få T [ ] = P [ ], dette kan være: Substtuson T sette T [ ] = P [ ], Tllegg T legge tl sybol T pos T [ ], Slettng T slettng sybol T på pos T [ ]. a P[: ] b T[: ]. Substtuson settet [ ] = P [ ] a n n e P[: ] a n n f T[: ] Tllegg T legge tl sybol T pos T [ ] slettng av P [ ] a n n e P[: ] a n n T[: ] Slettng T slettng sybol T på pos T [ ] a n n P[: ] a n n e T[: ] Regner ut [ ]ved å fnne [ -, -] (edt dstance for det grå orådet, og legger tl en for substtusonen. Å legge tl en e T er det sae so å slette en P.. Regner ut [ ]ved å fnne [ -, ] (edt dstance for det grå orådet, og legger tl en for slettngen P. Regner ut [ ]ved å fnne [, -] (edt dstance for det grå orådet, og legger tl en for slettngen T.. S t r e n g e r s o l g n e r Forelen (rekursv defnson for ] vl altså være so følger:, ] ] n{ [, ], [, ], [ ] substtuson tllegg T slettng T slettng P, ], ], ]. ellers Løsnngen, edt dstance ello strengene, fnnes,n] (P er av lengde og T av lengde n. } hvs P[ ] T[ ]

.. Forelen (rekursv defnson for ] vl altså være so følger: Forelen (rekursv defnson for ] vl altså være so følger:, ] ] n{, ], substtuson, ], ], ]., ], slettng tllegg T P ] slettng T } hvs P[ ] T[ ] ellers, ] ] n{, ], substtuson, ], ], ]., ], slettng tllegg T P ] slettng T } hvs P[ ] T[ ] ellers - - - -...... - - - - +./../. functon Edtstance ( P [:n ], T [: ] for to n do ] for to do, ] for to n do for to do If P [ ] = T [ ] then ] -, - ] else ] n { -, - ] +, -, ] +, - ] + } endf endfor endfor return( n, ] end Edtstance eks. P T a n e a del T del T ns T n n e

./. eks. T a n e Optal atrseultplkason V er gtt en sekvens M, M,, M n - av atrser og ønsker å beregne produktet M M M n -. V gør dette ved å sette parenteser, og ultplsere par av atrser, f.eks slk: P a del T del T ns T n n e M M M M = (M (M M M Parentesene kan settes på ange åter: (M (M (M M (M ((M M M ((M M (M M ((M (M M M (((M M M M Kostnaden (antall skalare ultplkasoner kan varere veldg ello de ulke åtene å sette parenteser på. Gtt to atrser A = p q atrse, B = q r atrse. Optal atrseultplkason Kostnaden (antall skalare ultplkasoner ved å beregne A B er p q r (A B er en p r atrse. Eks. Beregn A B C, hvor A er en atrse, B er en atrse, og C er en atrse. Å beregne = (A B koster, og gr en atrse. Å beregne C koster,. Total kostnad for (A B C blr 7,. Å beregne E = (B C koster, og gr en atrse. Å beregne A E koster,. Total kostnad for A (B C blr 7,.. Optal atrseultplkason Gtt en sekvens av atrser M, M,, M n -, ønsker v å beregne produktet på bllgst ulg åte v å fnne optal parentes-struktur. En parenterserng av sekvensen er en oppdelng to delsekvenser, so hver for seg å parenterseres: (M M M k (M k + M k + M n- V å prøve alle ulge k for å fnne hvor det er best å dele sekvensen. Hvert delngspunkt gr opphav tl to delprobleer paranterserng av venstre og høyre delsekvens. Består sekvensen bare av en atrse, er denne en parenterserng av seg selv. Har v en optal parenterserng av en sekvens av atrser, så å parenterserngen av hver delsekvens også være optal. Ellers kan v o bare bytte ut den so kke var optal ed en bedre en. (Optaltetsprnsppet holder.

. Optal atrseultplkason. Optal atrseultplkason La d, d,, d n være densonene tl sekvensen av atrser M, M,, M n-, slk at atrse M har denson d d +. d La være kostnaden av en optal parenterserng av M, M +,, M Forelen (rekursv defnson for vl være so følger:, d d d, for alle n n k k, k k,87, 9,7 7,,7,, for alle n 7,87,7,,,7,6 7,, Kostnaden av å utføre ultplkasonen ed den optale parenterserngen fnner v,n -. Optal atrseultplkason./. Optal atrseultplkason d, 9,7 7,,7 7,87,7,,,7,6 7,,,87,, = n(d d d + (, + (,, d d d + (, + (,, d d d + (, + (, = n( + +,, +,6 +,, +,7 + M M M M = M (M M M = (M M (M M = (M M M M,,87, 9,7 7,,7 7,87,7,,,7,6 7,, c

./. Optal atrseultplkason. Optal atrseultplkason M M M M = M (M M M = (M M (M M = (M M M M, c c,87, 9,7 7,,7 7,87,7,,,7,6 7,, M M M M M M = (M M M (M M M = ((M (M M ((M M (M./. Optal atrseultplkason functon OptalParens( d[ : n ] for to n- do [ ] for dag to n do for to n dagdo + dag [ ] for k to do q [ k] + [k +, ] + d[] d[k + ] d[ + ] f q < [ ] then [ ] q c[] k endf return [, n ] end OptalParens Ann Joe Pat Ray

Pat Pat Joe Ray Joe Ray Ann Ann Ann Joe Pat Ray Ann Joe Pat Ray p p p p p p p p q q q q q q q q q q Gennosnttlg søketd: p + p + p + p + q + q + q + q + q For generelle søketrær får v følgende forel for gennosnttlg antall saenlknnger so gøres: T et tre ed n nøkler (søkeord lagret nterne noder K,, K n-. n+ bladnoder tlsvarer ntervaller I,, I n ello nøklene. sannsynlghetsvektorer p og q for nøklene og ntervallene ello de. d er nvået tl nøkkel K, e er nvået tl bladnode so korresponderer ed I. n A ( T, n, p, q p( d n qe Hvs p -ene er lke og q -ene er lke, vl det koplette bnære søketreet være det optale. Men noen ord kan være oftere søkt etter enn andre (p -ene ulke, derfor kan det lønne seg ed skeve trær og deltrær, for å få ord so det ofte blr søkt etter så høyt so ulg opp treet. V ønsker å fnne det optale bnære søketreet T over alle ulge, gtt søkesannsynlghetene (p -ene og q -ene. vs treet so nerer gennosnttlg antall saenlknnger A(T,n,p,q: n A( T, n, P, Q T p -ene og q -ene er utgangspunktet sannsynlgheter (tall ntervallet [,], so suerer tl, en v kan slakke på kravet og anta at de er postve reelle tall, det er uansett bare tall so saenlknes. La ( p, q n n p q

. Et bnært tre T for nøklene K, K n- består av en rot ed nøkkel K, og to deltrær L og R. K. La T være et søketre for nøklene K,, K, n. (T er det toe treet o <. K,, K - p,, p - q,, q K +,, K n - p +,, p n - p +,, q n La ( k p k q k k V å prøve alle ulge røtter K for å fnne hvor det er best å dele treet. Hver ulge rot gr opphav tl to delprobleer optalserng av de korresponderende venstre og høyre deltrærne. Forelen (rekursv defnson for A(T vl være so følger: A ( T, k n{ A( T, k A( Tk } ( A( T ( Gennosnttlg antall operasoner for treet T er gtt ved: A( T, n, p, q A( L, p,..., p, q,..., q A( R, n, p,..., p, q,..., q ( p, q n n Kostnaden av det optale treet fnner v A(T,n-. For enkelthets skyld skrver v A(T = A(L + A(R + (p,q./. Fyller ut ulke typer tabeller En algorte kan nå relatvt enkelt lages ved å fylle ut en tabell ed verdene for A(T so defnert av forelen (sae åte so for atrseultplkason: Botto up A( T n{ A( T, k A( Tk, } ( k A( T ( I tllegg tl verden A(T å også en representason av de aktuelle trærne vedlkeholdes, slk at v fnner selve treet.