Kátai Zoltán ELTE, május

Slides:



Advertisements
Hasonló előadás
Gyermekek a leszakadó világban Társadalmi állapotrajzok konferencia MTA Szociológiai Kutatóintézet november 19.
Advertisements

DINAMIKUS PROGRAMOZÁS Szabó Zoltán, Kátai Zoltán V. Kiss Elemér programozói tábor Hargita, március
TÖMÖRÍTÉS. Fogalma A tömörítés egy olyan eljárás, amelynek segítségével egy fájlból egy kisebb fájl állítható elő. A tömörítési arány függ a fájl típusától,
A fogyasztóvédelemről szóló évi CLV. törvény módosításáról szóló évi LV. törvény A békéltető testületeket érintő változások Dr. Szomori Béla.
A tanításra és tanulásra fordított idő nemzetközi és kutatási adatok tükrében Imre Anna Oktatáskutató és fejlesztő Intézet Berekfürdő, Február 4.
A munkahelymegőrző támogatás. Alapja  Az évi IV. tv. (a foglalkoztatás elősegítéséről és a munkanélküliek ellátásáról) 18. §.  A 6/1996. (VII.16.)
Előadó: Bali Kornél Mikro-, kis-és középvállalkozások kapacitásbővítő beruházásainak támogatása.
FELSŐOKTATÁSI INTÉZMÉNYEK WEBOMETRICS RANGSORÁNAK VIZSGÁLATA GOOGLE PAGERANK TEKINTETÉBEN DOSz – Tavaszi Szél Konferencia 2016 Losonczi György.
A vállalatok marketingtevékenysége és a Magyar Marketing Szövetség megítélése Kutatási eredmények az MMSZ részére (2008. július)
1. 2 káros tartalmak típusai és előfordulásuk a gyerekek védelmét biztosító szabályok, a felelősség kérdése a korhatár-kategóriák megítélése, a besorolás.
EU pályázati programok A szervezet / változások 1.A pályázók adminisztrációs terheinek csökkentése a projektfejlesztési, pályázati szakaszban.
BEST-INVEST Független Biztosításközvetítő Kft.. Összes biztosítási díjbevétel 2004 (600 Mrd Ft)
Kereskedelmi jog V. Előadás Egyes társasági formák A korlátolt felelősségű társaság.
Gazdasági jog IV. Előadás Egyes társasági formák Közkeresleti társaság, betéti társaság.
időskorban felmerülő Problémák és megoldásmódok
Póker.
VIDEÓHIRDETÉSI FELÜLET
Palotás József elnök Felnőttképzési Szakértők Országos Egyesülete
imagine great people 1990.: USA 2000.: Magyarország 130 országban
2. előadás Viszonyszámok
Készítette Tanuló: Kereszturi Patrik
Scilab programozás alapjai
A tökéletes számok keresési algoritmusa
Egyszerű kapcsolatok tervezése
A közigazgatással foglalkozó tudományok
Adatok importálása, rendezése és szűrése
Kockázat és megbízhatóság
Mesterséges intelligencia
Elektronikus irat (elektronikus dokumentum) és elektronikus aláírás
Feladatok a XXVI. Nemzetközi Magyar Matematikaversenyről
Algoritmusok és Adatszerkezetek I.
Technológiai folyamatok optimalizálása
Algoritmusok és Adatszerkezetek I.
Tájékoztató a évi OSAP teljesüléséről
INFOÉRA 2006 Véletlenszámok
Ez a címdia 1. szövegdoboza
2. Bevezetés A programozásba
dr. Jeney László egyetemi adjunktus Európa regionális földrajza
Közigazgatási alapvizsga a Probono rendszerben
Business Mathematics
Finish Rendszer Súgó Finish Rendszer - Súgó.
Dr. Hubai Ágnes Közbeszerzési Tanácsadók Országos Szövetsége, elnök
Algoritmusok és Adatszerkezetek I.
Miért Választottam a BME-t?
STRUKTURÁLT SERVEZETEK: funkció, teljesítmény és megbízhatóság
CONTROLLING ÉS TELJESÍTMÉNYMENEDZSMENT DEBRECENI EGYETEM
Neptun kód: FQ7ZO7 Pham Van Vinh Mérnök leszek A3 Házi feladat.
mérnök leszek a3 feladat
„ Egy hatékony iskolai egészségnevelési program – az egyik legköltséghatékonyabb beruházás, amit egy nép (állam) csak megtehet annak érdekében, hogy párhuzamosan.
AVL fák.
„404 Not Found – Ki őrzi meg az internetet?” workshop
Merre tovább a középiskola után?
Online jegyzőkönyv kitöltési segédlet
A Microsoft SharePoint testreszabása Online webhely
A Lineáris Keresés Buktatói
Algoritmusok és Adatszerkezetek I.
Mit Karácsonyra Neked… adnék.
A szállítási probléma.
travel margie’s margie’s travel
Nagytakarítás? Segítünk!
Családi vállalkozások
Szülőként mi foglalkoztatja ÖNT leginkább gyermekével kapcsolatban?
Tájékoztató az EPER pályázati folyamatáról
TIENS FOKHAGYMAOLAJ KAPSZULA.
Körmentes irányított gráfban legrövidebb utak
Informatika Oktató: Katona Péter.
Pappné dr. Fülöp Enikő Nyírbátor Város Jegyzője OEVI vezető
Az identitástudat kialakulásának tényezői kisebbségi közegben
OpenBoard Kezelő Tananyag közzététele a KRÉTA rendszerben.
Gyermekekkel a mediáció szemszögéből
Előadás másolata:

Kátai Zoltán ELTE, 2018. május 14-18.

DINAMIKUS PROGRAMOZÁS

Barátságos mérkőzések PÁRBAN Legyen egy n elemű természetes számsorozat (n páros). A játékosok felváltva választanak egy-egy elemet a számsor valamelyik végéről. Az nyer, aki a nagyobb összeget gyűjti össze. Meg lehet-e verni a „tanárt”, amennyiben hagyod, hogy ő kezdjen? 19 2 4 16 3 15 14 17 1 5 6 7 8 9 10

A kezdő minden lépésben, következetesen választhat páros/páratlan indexű elem között 19 2 4 16 3 15 14 17 1 5 6 7 8 9 10 47 48

Mennyi a maximális összeg, amit a kezdő garantáltan összeszedhet? Input: a[1..n] Cél: maximalizálni a kezdő garantált összegét A barátod is mindig jól választ! Persze az általad, mint kezdő által, diktált keretek között.

Minden fordulóban 2-vel rövidül a számsor [1..10] Döntési fa [1..8] [2..9] [3..10] [1..6] [2..7] [3..8] [4..9] [5..10] [1..4] [2..5] [3..6] [4..7] [5..8] [6..9] [7..10] [1..2] [2..3] [3..4] [4..5] [5..6] [6..7] [7..8] [8..9] [9..10]

Mennyi a maximális összeg, amit a kezdő garantáltan összeszedhet? Eredeti feladat: mi a teljes tömbre (a[1..n]) vonatkozó optimum? Általános részfeladat: mi az optimum az a[i..j], páros hosszú tömbszakaszra vonatkozóan, ha a kezdő van soron? … a[i] a[i+1] a[i+2] a[j-2] a[j-1] a[j] 1 i j n

Két út áll előttem, melyiket válasszam. a[i]-t vagy a[j]-t Két út áll előttem, melyiket válasszam? a[i]-t vagy a[j]-t? Az előnyösebbet! Ha én a[i]-t választom, akkor Két út áll előtted, melyiket választod? a[j] vagy a[i+1]? A számomra előnytelenebbet! … a[i] a[i+1] a[i+2] a[j-2] a[j-1] a[j] 1 i j n … a[i] a[i+1] a[i+2] a[j-2] a[j-1] a[j] 1 i j n c[i][j] = max{a[i] + min{c[i+1][j-1], c[i+2][j]}, …}

Két út áll előttem, melyiket válasszam. a[i]-t vagy a[j]-t Két út áll előttem, melyiket válasszam? a[i]-t vagy a[j]-t? Az előnyösebbet! Ha én a[j]-t választom, akkor Két út áll előtted, melyiket választod? a[i] vagy a[j-1]? A számomra előnytelenebbet! … a[i] a[i+1] a[i+2] a[j-2] a[j-1] a[j] 1 i j n … a[i] a[i+1] a[i+2] a[j-2] a[j-1] a[j] 1 i j n c[i][j] = max{a[i] + min{c[i+1][j-1], c[i+2][j]}, a[j] + min{c[i+1][j-1], c[i][j-2]}}

19 2 4 16 3 15 14 17 1 1 2 3 4 5 6(j) 7 8 9 10 19 (i)3 i,j-2 i,j 16 i+1,j-1 i+1,j 15 6 14 17 +a[j] +a[i] c[i][j] = max{a[i] + min{c[i+1][j-1], c[i+2][j]}, a[j] + min{c[i+1][j-1], c[i][j-2]}}

19 2 4 16 3 15 14 17 1 1 2 3 4 5 6 7 8 9 10 19 +16 23 37 52 +1 65 +19 18 33 50 16 31 45 46 15 29 30 14 21 17 c[i][j] = max{a[i] + min{c[i+1][j-1], c[i+2][j]}, a[j] + min{c[i+1][j-1], c[i][j-2]}}

19 16 15 14 17 c[i][j] = max{a[i] + min{c[i+1][j-1], c[i+2][j]}, 3 2 19 16 15 14 17 Forduló 1 2 3 4 5 6 7 8 9 10 19 23 37 52 +1 65 18 33 50 +19 +16 16 +15 31 +14 45 46 +4 15 29 30 14 21 17 c[i][j] = max{a[i] + min{c[i+1][j-1], c[i+2][j]}, a[j] + min{c[i+1][j-1], c[i][j-2]}}

Döntési fa 65 [1..10] 10 +1 +19 52 50 46 [1..8] [2..9] [3..10] 8 +1 37 33 45 46 30 [1..6] [2..7] [3..8] [4..9] [5..10] 6 +14 23 18 31 31 29 31 21 [1..4] [2..5] [3..6] [4..7] [5..8] [6..9] [7..10] 4 +15 19 4 16 16 15 15 14 17 17 [1..2] [2..3] [3..4] [4..5] [5..6] [6..7] [7..8] [8..9] [9..10] 2

Megoldás: optimum-érték . . . for( ; ; ){ //átlóról-átlóra for( ; ; ){ //kurrens átló mentén c[i][j] = maxi( a[i] + mini(c[i+1][j-1], c[i+2][j]), a[j] + mini(c[i+1][j-1], c[i][j-2])); }

Stratégia Egyszerűtől bonyolult fele haladva oldjuk meg a részfeladatokat Részfeladatonként egy értéket tárolunk el (tömbben) optimális megoldást képviselő optimum értéket megoldások számát Rekurzív képlet írja le, hogy a kurrens részfeladat: optimuma miként építhető fel a közvetlen fiúrészfeladatok optimumaiból (optimális építkezés: optimumokból optimálisan) megoldásszáma miként határozható meg a közvetlen fiúrészfeladatok megoldásszámaiból

DP-feladatok osztályozása A dinamikus programozásos építkezés szintről szintre halad A k. szinti részfeladatok optimális megoldásai kizárólag 0..(k-1) szinti optimumoktól függnek Monadikus (monadic) Poliadikus (polyadic) Soros (serial) Nem-soros (non-serial)

Monadikus–soros 7 5 9 8 6 4 2 1 3 38 31 26 17 18 12 0. szint 1. szint 2. szint 3. szint 4. szint a c c[i][j] = max {a[i][j] + c[i+1][j], a[i][j] + c[i+1][j+1]}

Monadikus – nem-soros   b 4 3 5 7 2 c 1 6 a c[i][j] = c[i-1][j-1] + 1, ha 1in, 1jm, a[i]=b[j] c[i][j] = max {c[i][j-1], c[i-1][j]}, 1in, 1jm, a[i]≠b[j]

Poliadikus – soros FLOYD algoritmusa c0[i][j] = a[i][j] ck[i][j] = min {ck-1[i][j], ck-1[i][k] + ck-1[k][j]}

Poliadikus – nem-soros Mátrixsorozat optimális összeszorzása

Többérzékes tanulás a SAPIENTIAN

Ciklus-váz 1 Kihangosít Bedobol 2 3 Computer & Education Computer Application in Engineering Education 3 Teaching and Teacher Education

Tíz ALGORITMUS-TÁNC 4

INTERAKTÍV online e-learning környezet Levezényelni véletlen látható sorozaton Rekonstruálás Levezényelni láthatatlan sorozaton

“Best Practices in Education Award„ (2013)

KUTATÁS: reál vs. humán Illusztráció Demonstráció Rekonstrukció Levezénylés látható véletlen-sor Levezénylés láthatatlan véletlen-sor ITiCSE JCAL

KUTATÁS: interkulturális informatikaoktatás “Mennyire tetszett, mint show?” “Melyik volt a leghatékonyabb? (CIGÁNY / ROMÁN / MAGYAR)?” “Melyik volt a leghatékonyabb? (BUBORÉKOS / KIVÁLASZTÁSOS / BESZÚRÁSOS)?” “Melyik volt a legkönnyebb? (KIVÁLASZTÁSOS-cig / BESZÚRÁSOS-ro / BUBORÉKOS-hu)?”

KUTATÁS: interkulturális informatikaoktatás “Mennyire tetszett, mint show?” Gipsy Romanian Hungarian RO 5,24 5,65 5,16 HU 5,45 5,40 5,96 monoRO 5,23 5,55 5,58 monoHU 5,10 5,43 biRO 5,28 5,83 4,44 biHU 5,73 5,38 6,38 ITiCSE

KUTATÁS: interkulturális informatikaoktatás Leghatékonyabb algoritmus Kódolás 1: “saját” – leghatékonyabb -1: “ellentétes” – leghatékonyabb 0: “semleges” – leghatékonyabb Átlagok monoRO: [0] 11(saját), 11(ellentétes), 9(semleges) monoHU: [-0.04] 9(saját), 10(ellentétes), 2(semleges) biRO: [0.72] 14(saját), 1(ellentétes), 3(semleges) biHU: [0.42] 16(saját), 5(ellentétes), 5(semleges)

Melyik táncot néznétek a meg legszívesebben?