Programoza s I. 13. elo ada s Moho algoritmusok. Sergya n Szabolcs

Hasonló dokumentumok
Programoza s I. 10. elo ada s Rendezett to mbo k. Sergya n Szabolcs

Programoza s I. 11. elo ada s Oszd meg e s uralkodj! elvu algoritmusok. Sergya n Szabolcs

Analı zis elo ada sok

PRECÍZ Információs füzetek

PRCX PRCX. Perdületes mennyezeti befúvóelem

II. orsza gos magyar matematikaolimpia XXIX. EMMV Szatma rne meti, februa r 28. ma rcius 3. VIII. oszta ly

Speciális bútorok. Laborbútor. Oktatási bútor. Ipari bútor. Mérlegasztal. Laborszék

RAP-4 ELEKTROMECHANIKUS SOROMPÓ

Hírlevél február. Fejleszte sek e s va ltoza sok a Precıź Integra lt U gyviteli Informa cio s rendszerben I.

Scherlein Márta Dr. Hajdu Sándor Köves Gabriella Novák Lászlóné MATEMATIKA 2. A FELMÉRŐ FELADATSOROK ÉRTÉKELÉSE

33. szám A MAGYAR KÖZTÁRSASÁG HIVATALOS LAPJA. Budapest, már ci us 27., hétfõ TARTALOMJEGYZÉK. Ára: 3887, Ft

VII. Az Al kot m ny b r s g el n k nek v g z se

A f ldm vel s gyi s vid kfejleszt si miniszter 81/2009. (VII. 10.) FVM rendelete

NEFAG Zrt. SZARVASGOMBA-VADÁSZAT KARCAG-APAVÁRA ERDŐTERÜLETÉN. PÁRATLAN ÉLMÉNYT NYÚJTÓ KALAND A NEFAG Zrt. VENDÉGEKÉNT

A MAGYAR KÖZTÁRSASÁG HIVATALOS LAPJA. Budapest, már ci us 17., hétfõ. 44. szám. Ára: 250, Ft

Informa cio k, Mo dszerek, O tletek e s Megolda sok a Precıź Integra lt U gyviteli Informa cio s rendszerhez. T31. Standolás

MESEBÁL 3.A hõs kisegér Huszti Zoltán

LVII. ÉVFOLYAM 2. SZÁM ÁRA: 874 Ft ja nu ár 27.

CLEAN-PRECÍZ Integrált ügyviteli rendszer. Őstermelői bevallás készítése

40. szám A MAGYAR KÖZTÁRSASÁG HIVATALOS LAPJA. Budapest, áp ri lis 7., péntek TARTALOMJEGYZÉK. Ára: 207, Ft. Oldal

12. szám A MAGYAR KÖZTÁRSASÁG HIVATALOS LAPJA. Budapest, február 3., péntek TARTALOMJEGYZÉK. Ára: 1311, Ft. Oldal

75. szám A MAGYAR KÖZTÁRSASÁG HIVATALOS LAPJA. Budapest, jú ni us 15., péntek TARTALOMJEGYZÉK. Ára: 2478, Ft. Oldal

10288 M A G Y A R K Z L N Y 2004/120. sz $)A (" m II. r $)A (& sz JOGSZABLYOK A Korm $)A (" ny tagjainak rendeletei Az igazs $)A (" g (9 gy-miniszter

A MAGYAR KÖZLÖNY MELLÉKLETE TARTALOM

AZ EGÉSZSÉGÜGYI MINISZTÉRIUM HIVATALOS LAPJA FELHÍVÁS!

Közbeszerzési Értesítő száma: 2015/15

38. szám A MAGYAR KÖZTÁRSASÁG HIVATALOS LAPJA. Budapest, áp ri lis 5., szerda TARTALOMJEGYZÉK. Ára: 1311, Ft. Oldal

II. rész JOGSZABÁLYOK. A Kormány rendeletei. A Kormány 219/2004. (VII. 21.) Korm. rendelete M A G Y A R K Ö Z L Ö N Y 2004/102.

A MAGYAR TÖRTÉNELMI TÁRSULAT KIADVÁNYAI

A MAGYAR KÖZTÁRSASÁG HIVATALOS LAPJA. Budapest, jú ni us 25., szerda. 93. szám. Ára: 2400, Ft

Hírlevél július. Fejlesztések és változások a Precíz Integrált Ügyviteli Információs rendszerben III. negyedév

148. szám A MAGYAR KÖZTÁRSASÁG HIVATALOS LAPJA. Budapest, de cem ber 5., kedd TARTALOMJEGYZÉK. Ára: 1701, Ft. Oldal

AZ EGÉSZSÉGÜGYI MINISZTÉRIUM HIVATALOS LAPJA

BALATON szelet Nyerj vagy Nyerj!

A SZOCIÁLIS ÉS MUNKAÜGYI MINISZTÉRIUM ÉS AZ ORSZÁGOS MUNKAVÉDELMI ÉS MUNKAÜGYI FÕFELÜGYELÕSÉG HIVATALOS LAPJA FELHÍVÁS! Tartalom

166. szám A MAGYAR KÖZTÁRSASÁG HIVATALOS LAPJA. Budapest, de cem ber 22., csütörtök TARTALOMJEGYZÉK. Ára: 2921, Ft. Oldal

79. szám A MAGYAR KÖZTÁRSASÁG HIVATALOS LAPJA. Budapest, jú ni us 14., kedd TARTALOMJEGYZÉK. Ára: 1472, Ft. Oldal

A Kormány rendeletei

Kötelező gépjármű-felelősségbiztosítás Ügyfél-tájékoztató

155. szám A MAGYAR KÖZTÁRSASÁG HIVATALOS LAPJA. Budapest, ok tó ber 31., péntek TARTALOMJEGYZÉK. Ára: 1110, Ft. Oldal

1. Bevezetés. Szent-Györgyi Albert: Psalmus Humanus. œ œ. A-nyám? œ œ œ Œ Ó. Te al - kot - tál en-gem, vagyté-ged. œ Ó. meg-osz-szam?

2007/9. szám TURISZTIKAI ÉRTESÍTÕ 401 AZ ÖNKORMÁNYZATI ÉS TERÜLETFEJLESZTÉSI MINISZTÉRIUM HIVATALOS ÉRTESÍTÕJE

A MAGYAR KÖZTÁRSASÁG HIVATALOS LAPJA

172. szám II. kö tet. II. rész JOGSZABÁLYOK. A Kormány tagjainak A MAGYAR KÖZTÁRSASÁG HIVATALOS LAPJA

A MAGYAR KÖZLÖNY MELLÉKLETE T A R T A L O M

Hírlevél október. Fejlesztések és változások a. Precíz Integrált Ügyviteli Információs rendszerben IV. negyedév

TARTALOMJEGYZÉK. Bu da pest, feb ru ár 14. Ára: 1518 Ft 3. szám évi CLXIII. tv.

Futo cipo k e rte kelemze se

A MAGYAR KÖZTÁRSASÁG HIVATALOS LAPJA. Budapest, szep tem ber 12., péntek szám. Ára: 465, Ft

III. ÉVFOLYAM, 7. SZÁM Ára: 2100 Ft MÁRCIUS 31. TARTALOM. oldal oldal. Az ARTISJUS Ma gyar Szer zõi Jog vé dõ Iro da Egye sü let

A MAGYAR KÖZTÁRSASÁG HIVATALOS LAPJA

A SZÓRVÁNNYÁ VÁLÁS FOLYAMATA MINT A NEMZETI KISEBBSÉGI KÖZÖSSÉG LEBOMLÁSÁNAK TERMÉKE

6. szám. 2006/6. szám HATÁROZATOK TÁRA 51. Budapest, feb ru ár 13., hétfõ TARTALOMJEGYZÉK. Ára: 414, Ft. Oldal

A KÖZBESZERZÉSEK TANÁCSÁNAK HIVATALOS LAPJA

A SZOCIÁLIS ÉS MUNKAÜGYI MINISZTÉRIUM ÉS AZ ORSZÁGOS MUNKAVÉDELMI ÉS MUNKAÜGYI FÕFELÜGYELÕSÉG HIVATALOS LAPJA. Tartalom

SZOCIÁLPOLITIKAI HELYZETKÉP ALULNÉZETBŐL. Szabó János szociálpolitikus

A szakképz. jtható 2009.

A MAGYAR KÖZLÖNY MELLÉKLETE T A R T A L O M

ARCULATI KÉZIKÖNYV TESTNEVELÉSI EGYETEM HELVETICA NEUE EXTENDED ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLM

A MAGYAR KÖZLÖNY MELLÉKLETE T A R T A L O M

AZ EGÉSZSÉGÜGYI MINISZTÉRIUM HIVATALOS LAPJA

85. szám A MAGYAR KÖZTÁRSASÁG HIVATALOS LAPJA. Budapest, jú ni us 19., szombat TARTALOMJEGYZÉK. Ára: 3381, Ft. Oldal

A MAGYAR KÖZLÖNY MELLÉKLETE T A R T A L O M

A MAGYAR KÖZTÁRSASÁG HIVATALOS LAPJA

118. szám A MAGYAR KÖZTÁRSASÁG HIVATALOS LAPJA. Budapest, szep tem ber 1., csütörtök TARTALOMJEGYZÉK. Ára: 506, Ft. Oldal

Automaták. Tartalom. Automaták. Automaták Bevezetés I.2 I.1. Vezetékdaraboló automaták I.3. Csupaszoló automaták I.4

147. szám A MAGYAR KÖZTÁRSASÁG HIVATALOS LAPJA. Budapest, no vem ber 10., csütörtök TARTALOMJEGYZÉK. Ára: 2116, Ft. Oldal

123. szám A MAGYAR KÖZTÁRSASÁG HIVATALOS LAPJA. Budapest, szep tem ber 21., péntek TARTALOMJEGYZÉK. Ára: 1155, Ft

A MAGYAR KÖZTÁRSASÁG HIVATALOS LAPJA

ELŐTERJESZTÉS a Képviselő- testület július 30.-án tartandó ülésére

A földmûvelésügyi és vidékfejlesztési miniszter 27/2007. (IV. 17.) FVM rendelete

34. szám A MAGYAR KÖZTÁRSASÁG HIVATALOS LAPJA. Budapest, már ci us 28., kedd TARTALOMJEGYZÉK. Ára: 1495, Ft. Oldal

6060 Ti sza kécs ke, Er kel fa sor 10. Te le fon: 76/ , 76/ Fax: 76/ , 76/ OM azo no sí tó:

A SZOCIÁLIS ÉS MUNKAÜGYI MINISZTÉRIUM HIVATALOS LAPJA TARTALOM

III. Az Alkotmánybíróság teljes ülésének a Magyar Közlönyben közzétett végzése

TARTALOM. III. ÉVFOLYAM, 14. SZÁM Ára: 1700 Ft JÚLIUS 15. oldal oldal. A köz tár sa sá gi el nök 101/2011. (V. 20.) KE ha tá ro za ta

Berente Község Önkormányzat Képviselő-testületének 9/2016.(V.26.) önkormányzati rendelete

Az Európai Unió regionális politikája

I. rész HATÁROZATOK. A Kormány határozatai. A Kormány 2168/2007. (IX. 24.) Korm. határozata

LIX. ÉVFOLYAM ÁRA: 1365 Ft 4. SZÁM TARTALOM MAGYARORSZÁG ALAPTÖRVÉNYE. Ma gyar or szág Alap tör vé nye (2011. áp ri lis 25.)...

Garay János: Viszontlátás Szegszárdon. kk s s. kz k k t. Kö - szönt-ve, szü-lı - föl-dem szép ha - tá-ra, Kö - szönt-ve tı-lem any-nyi év u-

TARTALOM. III. ÉVFOLYAM, 12. SZÁM Ára: 820 Ft JÚNIUS 8. oldal oldal

A földmûvelésügyi és vidékfejlesztési miniszter 18/2009. (III. 6.) FVM rendelete. 2009/27. szám M A G Y A R K Ö Z L Ö N Y 5065

72. szám A MAGYAR KÖZTÁRSASÁG HIVATALOS LAPJA. Budapest, május 31., kedd TARTALOMJEGYZÉK. Ára: 506, Ft. Oldal

A vadon élő állatok természeti környezetükre gyakorolt terhelésének csökkentése az Ipoly Erdő Zrt. Börzsöny vadászterületén

Feltétel. Perfekt Vagyonés üzemszünet biztosítás. Érvényes: januártól

Budapest, június 12.

19. szám. II. rész JOGSZABÁLYOK. A Kormány tagjainak A MAGYAR KÖZTÁRSASÁG HIVATALOS LAPJA. A pénzügyminiszter 12/2005. (II. 16.

Gyõr Megyei Jogú Város Önkormányzata egyszerû eljárás ajánlattételi felhívása (12070/2004)

160. szám A MAGYAR KÖZTÁRSASÁG HIVATALOS LAPJA. Budapest, no vem ber 23., péntek TARTALOMJEGYZÉK. Ára: 3801, Ft. Oldal

KÖRNYEZETVÉDELMI ÉS VÍZÜGYI ÉRTESÍTÕ

PÁLYÁZATI SZABÁLYZATOT

97. szám. II. rész JOGSZABÁLYOK. Törvények A MAGYAR KÖZTÁRSASÁG HIVATALOS LAPJA évi LXXI. tör vény. Budapest, au gusz tus 2.

ALAPÍTÓ OKIRAT módosítás egységes szerkezetben

III. ÉVFOLYAM, 1. SZÁM Ára: 715 Ft JANUÁR 17.

A MAGYAR KÖZTÁRSASÁG HIVATALOS LAPJA. 2006: CXXVII. tv. A Ma gyar Köz tár sa ság évi költ ség ve té sé rõl

Bullzip PDF Printer 9.8. PDF mindenes ingyen


A földmûvelésügyi és vidékfejlesztési miniszter 61/2009. (V. 14.) FVM rendelete

CXIV. ÉVFOLYAM ÁRA: 1357 Ft 2. SZÁM

Átírás:

. elo ada s Moho algoritmusok Sergya n Szabolcs sergyan.szabolcs@nik.uni-obuda.hu O budai Egyetem Neumann Ja nos Informatikai Kar Alkalmazott Informatikai Inte zet / 6

Tartalom Pe nzkifizete s 0- ha tizsa k proble ma Moho algoritmusok a dinamikus programoza ssal szemben Moho strate gia 5 U temeze si feladatok Eseme ny kiva laszta si proble ma Eseme ny elku lo nı te si proble ma U temeze s ke se s minimaliza la ssal / 6

Tartalom Pe nzkifizete s 0- ha tizsa k proble ma Moho algoritmusok a dinamikus programoza ssal szemben Moho strate gia 5 U temeze si feladatok Eseme ny kiva laszta si proble ma Eseme ny elku lo nı te si proble ma U temeze s ke se s minimaliza la ssal / 6

Postai pe nzta ros Feladat Egy nyugdı jas elmegy a posta ra, hogy felvegye 79.85 Ft-os nyugdı ja t. Hogyan tudja a postai pe nzta ros kifizetni neki ezt az o sszeget u gy, hogy a kifizete shez a leheto legkevesebb darab cı mletet haszna lja? Megjegyze sek Rendelkeze sre a llo cı mletek: 0.000, 0.000, 5.000,.000,.000, 500, 00, 00, 50, 0, 0 e s 5 Ft-os. Tegyu k fel, hogy minden cı mletbo l korla tlan mennyise g van a posta n. Az nem tekintheto megolda snak, ha a nyugdı jasnak vissza kell adnia. (Pl.: a pe nzta ros ad 80.000 Ft-ot db 0.000 Ft-os cı mlettel, majd a nyugdı jas visszaad 55 Ft-ot.) / 6

Postai pe nzta ros Megolda s A pe nzta ros az ala bbi cı mleteket fogja adni: db 0.000 Ft-os = 60.000 Ft db 0.000 Ft-os = 0.000 Ft db 5.000 Ft-os = 5.000 Ft db.000 Ft-os =.000 Ft db 500 Ft-os = 500 Ft db 00 Ft-os = 00 Ft db 00 Ft-os = 00Ft db 0 Ft-os = 0 Ft db 5 Ft-os = 5 Ft 79.85 Ft Ez o sszesen db papı r pe nzt, illetve pe nze rme t jelent. 5 / 6

Postai pe nzta ros Ke rde s Megoldhato a feladat kevesebb cı mlettel is? Va lasz Nem. (Ezt nem fogjuk pontosan bizonyı tani, de az eddigi tapasztalataink alapja n tudjuk, hogy egy optima lis megolda st adtunk meg.) 6 / 6

Pe nzkifizete s Pszudoko d Bemenet: x ege sz, c ege sz rendezett to mb, n ege sz Kimenet: db ege sz to mb fu ggve ny Pe nzkifizete s(x, c, n) db Le trehoz(ege sz)[n] ciklus i -to l n-ig db[i] 0 ciklus ve ge j n ciklus amı g x > 0 ciklus amı g c[j] > x j j ciklus ve ge db[j] db[j] + x x c[j] ciklus ve ge vissza db fu ggve ny ve ge 7 / 6

Postai pe nzta ros A bemutatott algoritmus egy moho algoritmus, mert mindig a legnagyobb va laszthato cı mletet va lasztja ki. A moho algoritmus ebben a pe lda ban optima lis megolda st ad. 8 / 6

Leve lfelada s Feladat Nyugdı jasunk szeretne feladni egy levelet, mely 00 Ft-ba keru l. Hogyan lehet ezt megtenni, ha a leheto legkevesebb sza mu be lyeget szeretne nk a borı te kra tenni. Megjegyze s Rendelkeze sre a llo be lyegcı mletek:.500 Ft.000 Ft 700 Ft 0 Ft 0 Ft 00 Ft 0 Ft 9 / 6

Leve lfelada s Megolda s Ha a moho algoritmust haszna ljuk oly mo don, hogy mindig a leheto legnagyobb cı mletu be lyeget ragasztjuk fel, akkor az ala bbi megolda st kapjuk: 0 db.500 Ft-os = 0 Ft db.000 Ft-os =.000 Ft 0 db 700 Ft-os = 0 Ft db 0 Ft-os = 0 Ft 0 db 0 Ft-os = 0 Ft 0 db 00 Ft-os = 0 Ft 6 db 0 Ft-os = 60 Ft.00 Ft-os Az algoritmus szerint 8 db be lyegre van szu kse gu nk. 0 / 6

Leve lfelada s Megolda s elemze se Ko nnyen la thato, hogy a moho algoritmus a ltal adott megolda s most nem optima lis. Az optima lis megolda s db 700 Ft-os be lyeg va laszta sa lenne. / 6

Tartalom Pe nzkifizete s 0- ha tizsa k proble ma Moho algoritmusok a dinamikus programoza ssal szemben Moho strate gia 5 U temeze si feladatok Eseme ny kiva laszta si proble ma Eseme ny elku lo nı te si proble ma U temeze s ke se s minimaliza la ssal / 6

0- ha tizsa k proble ma Vizsga ljuk meg, hogy a dinamikus programoza sna l megismert 0- ha tizsa k proble ma megoldhato -e moho strate gia val. A proble ma megfogalmaza sa Adott n darab ta rgy Az i-edik ta rgy e rte ke: pi Az i-edik ta rgy su lya: wi Kiva lasztando a ta rgyak olyan re szhalmaza, melyek e rte ke nek o sszege a leheto legnagyobb, miko zben a su lyuk o sszege nem haladja meg a ha tizsa k c kapacita sa t. / 6

0- ha tizsa k proble ma Megolda s moho algoritmussal Elso ko rben el kell do ntenu nk, hogy milyen jellemzo alapja n akarunk moho strate gia t folytatni: E rte k alapja n Su ly alapja n E rte k/su ly ara ny alapja n Tekintsu k pl. az e rte k/su ly ara ny alapu megko zelı te st. Legyenek a ta rgyak e rte k/su ly ara ny alapja n cso kkeno mo don rendezettek, azaz p pn p.... w w wn / 6

0- ha tizsa k proble ma Pszeudoko d Bemenet: p ege sz to mb, w ege sz to mb, n ege sz (to mb me rete), c ege sz Kimenet: S ege sz halmaz fu ggve ny Moho 0-Ha tizsa k(p, w, n, c) S i ciklus amı g (c > 0) (i n) ha w [i] c akkor S S {i} c c w [i] ela gaza s ve ge i i + ciklus ve ge vissza S fu ggve ny ve ge 5 / 6

0- ha tizsa k proble ma Optima lis megolda st ad a moho strate gia? Tekintsu k az ala bbi pe lda t: Ha rom ta rgyunk van: p = 60, w = 0; p = 00, w = 0; p = 0, w = 0. A ha tizsa kunk me rete c = 50 egyse gnyi. A moho strate gia alapja n az. e s. ta rgyat fogjuk kiva lasztani, ı gy tele rakjuk a zsa kot e s o sszesen 60 e rte ku ta rgyat viszu nk el. Ha viszont a. e s. vagy aka r az. e s. va lasztottuk volna, akkor a zsa kunkba azok is befe rne nek, de nagyobb lenne az elvitt e rte k. A moho strate gia itt nem ad optima lis megolda st! 6 / 6

Tartalom Pe nzkifizete s 0- ha tizsa k proble ma Moho algoritmusok a dinamikus programoza ssal szemben Moho strate gia 5 U temeze si feladatok Eseme ny kiva laszta si proble ma Eseme ny elku lo nı te si proble ma U temeze s ke se s minimaliza la ssal 7 / 6

Kincsek begyu jte se Feladat Egy te glalap ege sz koordina ta ju ra cspontjaiban ku lo nbo zo e rte ku kincsek vannak elhelyezve. Menju nk el a bal also ra cspontbo l a jobb felso ra cspontba u gy, hogy ko zben a leheto legto bb kincset gyu jtju k be! Beja ra sunk sora n csak jobbra e s felfele haladhatunk. 5 6 5 6 0 0 9 8 8 / 6

Megolda s dinamikus programoza ssal Egy mezo ig o sszegyu jtheto kincsek maxima lis e rte ke C [i, j], ha i = e s j F [i, j ] + C [i, j], ha i = e s j F [i, j] = F [i, j] + C [i, j], ha i e s j max {F [i, j], F [i, j ]} + C [i, j], ha i e s j 5 6 9 9 55 6 5 8 0 5 5 6 0 0 9 7 7 7 6 8 8 6 C =,, =,. F 9 / 6

O sszegyu jto tt kincsek o sszege (Dinamikus programoza s) Pszeudoko d Bemenet: C ege sz to mb, m ege sz (C sorainak sza ma), n ege sz (C oszlopainak sza ma) Kimenet: F ege sz to mb fu ggve ny KincsO sszeg(c, m, n) F Le trehoz(ege sz)[m, n] F [, ] = C [, ] ciklus j -to l n-ig F [, j] = F [, j ] + C [i, j] ciklus ve ge ciklus i -to l m-ig F [i, ] = F [i, ] + C [i, j] ciklus ve ge ciklus i -to l m-ig ciklus j -to l n-ig F [i, j] = max (F [i, j], F [i, j ]) + C [i, j] ciklus ve ge ciklus ve ge vissza F fu ggve ny ve ge 0 / 6

Beja ra si u t kiolvasa sa Pszeudoko d Bemenet: F ege sz to mb, m ege sz (F sorainak sza ma), n ege sz (F oszlopainak sza ma) Kimenet: P ege sz to mb fu ggve ny Beja ra siu tkiolvas(f, m, n) P Le trehoz(ege sz)[m + n ] i m; j n; k m + n ciklus amı g (i ) (j ) P[k] (i, j); k k ha F [i, j] > F [i, j ] akkor i i ku lo nben j j ela gaza s ve ge ciklus ve ge ciklus amı g i P[k] (i, j); k k ; i i ciklus ve ge ciklus amı g j P[k] (i, j); k k ; j j ciklus ve ge P[] (, ) vissza P fu ggve ny ve ge / 6

Beja ra si u t Egy optima lis beja ra si u t dinamikus programoza ssal 5 6 9 9 55 6 9 9 55 6 5 8 0 5 5 8 0 5 5 6 0 0 9 7 7 7 6 7 7 7 6 8 8 6 8 6 C F F / 6

Megolda s moho algoritmussal O tlet Elindulunk a bal also sarokbo l. Megvizsga ljuk, hogy a jobb- vagy a felso szomsze d e rte ke nagyobb-e, e s arra megyu nk tova bb. / 6

Megolda s moho algoritmussal Pszeudoko d Bemenet: C ege sz to mb, m ege sz (C sorainak sza ma), n ege sz (C oszlopainak sza ma) Kimenet: P ege sz to mb fu ggve ny Moho KincsGyu jte s(c, m, n) P Le trehoz(ege sz)[m + n ] i ; j ; k 0 ciklus amı g (i < m) (j < n) k k + ; P[k] (i, j) ha C [i +, j] > C [i, j + ] akkor i i + ku lo nben j j + ela gaza s ve ge ciklus ve ge ciklus amı g i < m k k + ; P[k] (i, j); i i + ciklus ve ge ciklus amı g j < n k k + ; P[k] (i, j); j j + ciklus ve ge k k + ; P[k] (i, j) vissza P fu ggve ny ve ge / 6

Beja ra s moho algoritmussal Eredme ny 5 6 5 6 0 0 9 8 5 / 6

Lehetse ges beja ra si u tvonalak (, ) (, ) (, ) (, ) (, ) (, ) (, ) (, ) (, ) (, ) (, ) (, ) (, ) (, ) (, ) (, ) 6 / 6

Tartalom Pe nzkifizete s 0- ha tizsa k proble ma Moho algoritmusok a dinamikus programoza ssal szemben Moho strate gia 5 U temeze si feladatok Eseme ny kiva laszta si proble ma Eseme ny elku lo nı te si proble ma U temeze s ke se s minimaliza la ssal 7 / 6

Moho strate gia A moho algoritmus egy proble ma optima lis megolda sa t u gy alkotja meg, hogy va laszta sok sorozata t hajtja ve gre. Minden do nte si pontban azt az esetet va lasztja az algoritmus, mely az adott pillanatban e ppen optima lisnak tu nik. Ke t fontos alkoto eleme van az olyan proble ma knak, melyek moho algoritmussal megoldhato k: Moho -va laszta si tulajdonsa g Optima lis re szstruktu ra k tulajdonsa g 8 / 6

Moho -va laszta si tulajdonsa g Globa lis optima lis tulajdonsa g ele rheto loka lis optimum va laszta sa val Itt van ku lo nbse g a moho algoritmusok e s a dinamikus programoza s ko zo tt Dinamikus programoza sna l minden le pe sben va lasztunk, de a va laszta s fu gg(het) a re szproble ma k megolda sa to l. Moho esetben viszont az adott pillanatban legjobbnak tu no va laszta st hajtjuk ve gre, majd uta na oldjuk meg a va laszta s hata sa ra felle po re szproble ma kat. A dinamikus programoza s alulro l-felfele haladva ad megolda st, a moho strate gia viszont felu lfo l-lefele halad, ı gy egyma s uta n ve grehajt moho va laszta sokat, melyekkel folyamatosan reduka lja a proble ma me rete t. 9 / 6

Optima lis re szstruktu ra k tulajdonsa g Egy proble ma teljesı ti az optima lis re szstruktu ra tulajdonsa got, ha az optima lis megolda s fele pı theto a re szproble ma k optima lis megolda sa bo l. Ez az alkoto elem kulcsfontossa gu, mind a dinamikus programoza s, mind a moho strate gia alkalmazhato sa ga nak vizsga lata na l. 0 / 6

Tartalom Pe nzkifizete s 0- ha tizsa k proble ma Moho algoritmusok a dinamikus programoza ssal szemben Moho strate gia 5 U temeze si feladatok Eseme ny kiva laszta si proble ma Eseme ny elku lo nı te si proble ma U temeze s ke se s minimaliza la ssal / 6

Tartalom Pe nzkifizete s 0- ha tizsa k proble ma Moho algoritmusok a dinamikus programoza ssal szemben Moho strate gia 5 U temeze si feladatok Eseme ny kiva laszta si proble ma Eseme ny elku lo nı te si proble ma U temeze s ke se s minimaliza la ssal / 6

Eseme ny kiva laszta si proble ma Ero forra s u temeze st szeretne nk megvalo sı tani egyma ssal versengo feladatok ko zo tt. Feladat megfogalmaza sa Adott eseme nyek egy S = {,,..., n} halmaza, amelyek egy ko zo s ero forra st kı va nnak haszna lni Minden eseme nyre ismert a kezdo ido pontja: si a befejezo ido pontja: fi (ahol si fi ) Ha az i eseme nyt kiva lasztjuk, az eseme ny az [si, fi [ intervallumot foglalja el Az i e s j eseme nyek kompatibilisek, ha az [si, fi [ e s [sj, fj [ intervallumok nem fedik egyma st, azaz si fj vagy sj fi Kiva lasztando ko lcso no sen kompatibilis eseme nyeknek egy legnagyobb elemsza mu halmaza / 6

Eseme ny kiva laszta si proble ma Megolda s Tegyu k fel, hogy az eseme nyek a befejezo ido pontjaik szerint rendezettek, azaz f f... fn Bemenet: s ido to mb, f ido rendezett to mb, n ege sz (to mbo k me rete) Kimenet: A ege sz halmaz fu ggve ny Eseme nykiva laszta s(s, f, n) A {} utolso ciklus i -to l n-ig ha s[i] f [utolso ] akkor A A {i} utolso i ela gaza s ve ge ciklus ve ge vissza A fu ggve ny ve ge / 6

Eseme ny kiva laszta si proble ma Pe lda 5 6 7 8 9 0 0 5 6 7 8 9 0 5 / 6

Eseme ny kiva laszta si proble ma Pe lda megolda sa 5 6 7 8 9 0 0 5 6 7 8 9 0 6 / 6

Eseme ny kiva laszta si proble ma Optima lis megolda st ad a moho algoritmus? A moho algoritmus kiva lasztja az eseme nyt. Ez az eseme ny biztos benne van az optima lis megolda sban is? Tegyu k fel, hogy A S egy optima lis megolda s, e s legyenek az A-beli eseme nyek a befejeze si ido szerint rendezettek. Tegyu k fel, hogy A-ban az elso eseme ny k. Ha k =, akkor A a moho va laszta ssal kezdo dik. Ha k 6=, akkor legyen B = (A \ {k}) {}. Mivel f fk, ı gy a B-beli eseme nyek nem a tfedo k, e s B ugyanannyi elemet tartalmaz, mint A, ı gy B is optima lis. Teha t mindig le tezik olyan optima lis u temeze s, mely a moho va laszta ssal kezdo dik. 7 / 6

Eseme ny kiva laszta si proble ma Optima lis megolda st ad a moho algoritmus? Az eseme ny moho va laszta sa uta n a proble ma reduka lo dik azon eseme ny kiva laszta si proble ma ra, amely az S halmaz azon elemeit tartalmazza, amelyek kompatibilisek az eseme nnyel. Ke rde s, hogy A0 = A \ {} optima lis megolda sa-e az S 0 = {i S : si f } eseme nyeket tartalmazo proble ma nak. Ha tala lna nk olyan B 0 megolda sa t az S 0 proble ma nak, amely to bb eseme nyt tartalmazna, mint A0, akkor az eseme nyt hozza adva B 0 -ho z az S proble ma olyan B megolda sa hoz jutna nk, amely to bb eseme nyt tartalmaz, mint A. Ez viszont ellentmond A optimalita sa nak. Teha t minden moho va laszta s uta n olyan proble ma nk marad, mint amilyen az eredeti is volt. 8 / 6

Tartalom Pe nzkifizete s 0- ha tizsa k proble ma Moho algoritmusok a dinamikus programoza ssal szemben Moho strate gia 5 U temeze si feladatok Eseme ny kiva laszta si proble ma Eseme ny elku lo nı te si proble ma U temeze s ke se s minimaliza la ssal 9 / 6

Eseme ny elku lo nı te si proble ma Feladat megfogalmaza sa Adott n darab eseme ny, melyeknek ismerju k a kezde si e s befejeze si ido pontja t. (Az i-edik eseme ny kezdo ido pontja: si, befejeze si ido pontja pedig: fi.) Ku lo nı tsu k el az eseme nyeket oly mo don elo ado termekbe, hogy az egy elo ado terembe tartozo eseme nyek kompatibilisek legyenek egyma ssal, viszont a leheto legkevesebb elo ado termet haszna ljuk. 0 / 6

Eseme ny elku lo nı te si proble ma Egy pe lda 5 0 7 8 9 9:0 6 0 0:0 :0 :0 :0 9 :0 5 5:0 6 6:0 6 6:0 Kevesebb elo ado terem is ele g lenne 5 8 9 9:0 7 6 0 0:0 :0 :0 :0 0 9 :0 5 5:0 / 6

Eseme ny elku lo nı te si proble ma Algoritmus Tegyu k fel, hogy az eseme nyek a kezdo ido pontjaik szerint rendezettek, azaz s s... sn. Bemenet: s ido rendezett to mb, f ido to mb, n ege sz (to mbo k me rete) Kimenet: A ege sz to mb fu ggve ny Eseme nyelku lo nı te s(s, f, n) A Le trehoz(ege sz)[n] utolso 0 ciklus i -to l n-ig j ciklus amı g (j utolso ) KompatiblisEseme nyero forra ssal(a, s, f, i, j) j j + ciklus ve ge ha j utolso akkor A[i] j ku lo nben utolso utolso + A[i] utolso ela gaza s ve ge ciklus ve ge vissza A fu ggve ny ve ge / 6

Tartalom Pe nzkifizete s 0- ha tizsa k proble ma Moho algoritmusok a dinamikus programoza ssal szemben Moho strate gia 5 U temeze si feladatok Eseme ny kiva laszta si proble ma Eseme ny elku lo nı te si proble ma U temeze s ke se s minimaliza la ssal / 6

U temeze s ke se s minimaliza la ssal Feladat Adottak egyetlen ero forra st ige nylo feladatok Ismerju k az i-edik feladat elve gze se hez szu kse ges ti ido t, illetve a feladat di hata rideje t Az i-edik feladat ke se se: li = max{0, fi di } Ce l: minimaliza lni a ke se sek maximuma t, azaz minimaliza lni a max{li }i=,...,n kifejeze st Pe lda ti di 6 8 9 9 5 6 5 ke se s = d = 9 0 d = 8 d6 = 5 d = 6 5 6 ke se s = 0 max ke se s = 6 d5 = 7 8 9 0 d = 9 5 / 6

U temeze s ke se s minimaliza la ssal Algoritmus Tegyu k fel, hogy az eseme nyek a hata rideju k szerint rendezettek, azaz d d... dn Bemenet: d ido rendezett to mb, t ido to mb, n ege sz (to mbo k me rete) Kimenet: s ido to mb, f ido to mb fu ggve ny Ke se sminimaliza la s(d, t, n) s Le trehoz(ido )[n] f Le trehoz(ido )[n] utolso 0 ciklus i -to l n-ig s[i] utolso f [i] s[i] + t[i] utolso f [i] ciklus ve ge vissza (s, f ) fu ggve ny ve ge Megolda s max ke se s = d = 9 0 d = 8 d = 9 5 d = 9 6 7 8 d5 = 9 0 d6 = 5 5 5 / 6

Felhaszna lt irodalom T.H. Cormen, C.E. Leiserson, R.L. Rivest: Algoritmusok. Mu szaki Ko nyvkiado, 999 J. Kleinberg, E. Tardos: Algorithm Design. (Elo ada s prezenta cio k) 6 / 6