A termelésirányítás optimalizálása az IBM adattároló gyárában Jüttner Alpár ELTE TTK Operációkutatási Tsz. Jüttner Alpár (ELTE TTK) Adattárolók gyátásának optimalizálása 1 / 27
IBM-ELTE Center for Applied Mathematics IBM Research Zurich által finanszírozott együttműködés Célok Gyakorlati feladatokhoz kapcsolódó matematikai kompetenciák fejlesztése Kutatási együttműködések Konkrét ipari feladatokban való részvétel Internship, kutatói ösztöndíjak Kutatási területek Raktárkészlet optimalizálás Gyártási folyamatok optimalizálása (High performance computing) Jüttner Alpár (ELTE TTK) Adattárolók gyátásának optimalizálása 2 / 27
IBM DS8000 gyártás optimalizálás Jüttner Alpár (ELTE TTK) Adattárolók gyátásának optimalizálása 3 / 27
IBM DS8000 Storage System Jüttner Alpár (ELTE TTK) Adattárolók gyátásának optimalizálása 4 / 27
IBM DS8000 Storage System Jüttner Alpár (ELTE TTK) Adattárolók gyátásának optimalizálása 5 / 27
IBM DS8000 Storage System Jüttner Alpár (ELTE TTK) Adattárolók gyátásának optimalizálása 6 / 27
IBM DS8000 Storage System Jüttner Alpár (ELTE TTK) Adattárolók gyátásának optimalizálása 7 / 27
IBM DS8000 Storage System Nagy tárkapacitás Gyors, párhuzamos elérés Nagy megbízhatóság Tesztelés Kis példányszám, nagy egyedi erőforrásigény Minden részletében konfigurálható Sorozatgyártás helyett egyedi ütemezés Jüttner Alpár (ELTE TTK) Adattárolók gyátásának optimalizálása 8 / 27
Jüttner Alpár (ELTE TTK) Adattárolók gyátásának optimalizálása 9 / 27
Megapack összeszerelés Jüttner Alpár (ELTE TTK) Adattárolók gyátásának optimalizálása 10 / 27
Tesztelési folyamat Jüttner Alpár (ELTE TTK) Adattárolók gyátásának optimalizálása 11 / 27
On-demand business Rendelések Egyedi rendelési modell Sok visszavont rendelés Az adott negyedévben kell teljesíteni Egyenetlen rendelési ráta a negyedév során Kétfázisú gyártási folyamat Startoff build Egy előzetes konfiguráció összeszerelése Teljes tesztelés (hosszú) Rekonfiguráció Egy korábban felépített konfiguráció átszerelése egy megrendelt konfigurációra Újratesztelés (rövid) Jüttner Alpár (ELTE TTK) Adattárolók gyátásának optimalizálása 12 / 27
On-demand business Rendelések Egyedi rendelési modell Sok visszavont rendelés Az adott negyedévben kell teljesíteni Egyenetlen rendelési ráta a negyedév során Kétfázisú gyártási folyamat Startoff build Egy előzetes konfiguráció összeszerelése Teljes tesztelés (hosszú) Rekonfiguráció Egy korábban felépített konfiguráció átszerelése egy megrendelt konfigurációra Újratesztelés (rövid) Jüttner Alpár (ELTE TTK) Adattárolók gyátásának optimalizálása 12 / 27
Termelésirányítás Startoff build Felépítendő konfigurációk kijelölése Tervezés két napra előre Rekonfiguráció Aznapi feladat kijelölése minden nap (reggel) Lépések: 1 Megépítendő rendelések kiválasztása 2 Hasonló konfigurációjú boxok kiválasztása 3 Cserélendő alkatrészek meghatározása Problémák Emberi döntések óriási táblázatokból Összehangolatlan döntések Nehéz a hosszútávú tervezés Jüttner Alpár (ELTE TTK) Adattárolók gyátásának optimalizálása 13 / 27
Termelésirányítás Startoff build Felépítendő konfigurációk kijelölése Tervezés két napra előre Rekonfiguráció Aznapi feladat kijelölése minden nap (reggel) Lépések: 1 Megépítendő rendelések kiválasztása 2 Hasonló konfigurációjú boxok kiválasztása 3 Cserélendő alkatrészek meghatározása Problémák Emberi döntések óriási táblázatokból Összehangolatlan döntések Nehéz a hosszútávú tervezés Jüttner Alpár (ELTE TTK) Adattárolók gyátásának optimalizálása 13 / 27
Termelésirányítás Startoff build Felépítendő konfigurációk kijelölése Tervezés két napra előre Rekonfiguráció Aznapi feladat kijelölése minden nap (reggel) Lépések: 1 Megépítendő rendelések kiválasztása 2 Hasonló konfigurációjú boxok kiválasztása 3 Cserélendő alkatrészek meghatározása Problémák Emberi döntések óriási táblázatokból Összehangolatlan döntések Nehéz a hosszútávú tervezés Jüttner Alpár (ELTE TTK) Adattárolók gyátásának optimalizálása 13 / 27
Termelésirányítás Startoff build Felépítendő konfigurációk kijelölése Tervezés két napra előre Rekonfiguráció Aznapi feladat kijelölése minden nap (reggel) Lépések: 1 Megépítendő rendelések kiválasztása 2 Hasonló konfigurációjú boxok kiválasztása 3 Cserélendő alkatrészek meghatározása Problémák Emberi döntések óriási táblázatokból Összehangolatlan döntések Nehéz a hosszútávú tervezés Jüttner Alpár (ELTE TTK) Adattárolók gyátásának optimalizálása 13 / 27
Termelésirányítás Startoff build Felépítendő konfigurációk kijelölése Tervezés két napra előre Rekonfiguráció Aznapi feladat kijelölése minden nap (reggel) Lépések: 1 Megépítendő rendelések kiválasztása 2 Hasonló konfigurációjú boxok kiválasztása 3 Cserélendő alkatrészek meghatározása Problémák Emberi döntések óriási táblázatokból Összehangolatlan döntések Nehéz a hosszútávú tervezés Jüttner Alpár (ELTE TTK) Adattárolók gyátásának optimalizálása 13 / 27
Termelésirányítás Startoff build Felépítendő konfigurációk kijelölése Tervezés két napra előre Rekonfiguráció Aznapi feladat kijelölése minden nap (reggel) Lépések: 1 Megépítendő rendelések kiválasztása 2 Hasonló konfigurációjú boxok kiválasztása 3 Cserélendő alkatrészek meghatározása Problémák Emberi döntések óriási táblázatokból Összehangolatlan döntések Nehéz a hosszútávú tervezés Jüttner Alpár (ELTE TTK) Adattárolók gyátásának optimalizálása 13 / 27
Felhasználható adatok Raktárkészlet Beérkezett alkatrészek darabszáma, típusa Összeszereltéségi fokuk, teszteltségi szintek Mikortól lesznek elérhetők Rendelések Pontos konfigurációk Az elkészítés határideje Költségek Szerelési idő: Elemi lépések idejéből könnyen számítható Tesztelési idő: Bonyolult, sok tényező befolyásolja Jüttner Alpár (ELTE TTK) Adattárolók gyátásának optimalizálása 14 / 27
Felhasználható adatok Raktárkészlet Beérkezett alkatrészek darabszáma, típusa Összeszereltéségi fokuk, teszteltségi szintek Mikortól lesznek elérhetők Rendelések Pontos konfigurációk Az elkészítés határideje Költségek Szerelési idő: Elemi lépések idejéből könnyen számítható Tesztelési idő: Bonyolult, sok tényező befolyásolja Jüttner Alpár (ELTE TTK) Adattárolók gyátásának optimalizálása 14 / 27
Felhasználható adatok Raktárkészlet Beérkezett alkatrészek darabszáma, típusa Összeszereltéségi fokuk, teszteltségi szintek Mikortól lesznek elérhetők Rendelések (sokat visszavonnak) Pontos konfigurációk (változhat) Az elkészítés határideje (változhat) Költségek Szerelési idő: Elemi lépések idejéből könnyen számítható Tesztelési idő: Bonyolult, sok tényező befolyásolja Jüttner Alpár (ELTE TTK) Adattárolók gyátásának optimalizálása 14 / 27
Felhasználható adatok Raktárkészlet Beérkezett alkatrészek darabszáma, típusa Összeszereltéségi fokuk, teszteltségi szintek Mikortól lesznek elérhetők Rendelések (sokat visszavonnak) Pontos konfigurációk (változhat) Az elkészítés határideje (változhat) Költségek Szerelési idő: Elemi lépések idejéből könnyen számítható Tesztelési idő: Bonyolult, sok tényező befolyásolja Jüttner Alpár (ELTE TTK) Adattárolók gyátásának optimalizálása 14 / 27
Statisztika, előrejelzés feladatok 1 Tesztidő becslése 2 Előrejelzések 1 Rendelések visszamondásának valószínűsége 2 Paraméterek változásának valószínűsége Határidő változása 3 Negyedév során az igények előrejelzése. Jüttner Alpár (ELTE TTK) Adattárolók gyátásának optimalizálása 15 / 27
Best Match Jelenleg Input: Egyetlen megépítendő box konfigurációja Output: Boxok egy rendezett listája Kihívások Tesztidő csak teljes stringre számolható Sokféle célfüggvény Változó szempontok Real-time Mi legyen az output? Jüttner Alpár (ELTE TTK) Adattárolók gyátásának optimalizálása 16 / 27
Best Match Jelenleg Input: Egyetlen megépítendő box konfigurációja Output: Boxok egy rendezett listája Kihívások Tesztidő csak teljes stringre számolható Sokféle célfüggvény Változó szempontok Real-time Mi legyen az output? Jüttner Alpár (ELTE TTK) Adattárolók gyátásának optimalizálása 16 / 27
Best Match Jelenleg Input: Egyetlen megépítendő box konfigurációja Output: Boxok egy rendezett listája Kihívások Tesztidő csak teljes stringre számolható Sokféle célfüggvény Változó szempontok Real-time Mi legyen az output? Jüttner Alpár (ELTE TTK) Adattárolók gyátásának optimalizálása 16 / 27
Best Match Jelenleg Input: Egyetlen megépítendő box konfigurációja Output: Boxok egy rendezett listája Kihívások Tesztidő csak teljes stringre számolható Sokféle célfüggvény Változó szempontok Real-time Mi legyen az output? Jüttner Alpár (ELTE TTK) Adattárolók gyátásának optimalizálása 16 / 27
Best Match Jelenleg Input: Egyetlen megépítendő box konfigurációja Output: Boxok egy rendezett listája Kihívások Tesztidő csak teljes stringre számolható Sokféle célfüggvény Változó szempontok Real-time Mi legyen az output? Jüttner Alpár (ELTE TTK) Adattárolók gyátásának optimalizálása 16 / 27
Best Match Jelenleg Input: Egyetlen megépítendő box konfigurációja Output: Boxok egy rendezett listája Kihívások Tesztidő csak teljes stringre számolható Sokféle célfüggvény Változó szempontok Real-time Mi legyen az output? Jüttner Alpár (ELTE TTK) Adattárolók gyátásának optimalizálása 16 / 27
Best Match Jelenleg Input: Egyetlen megépítendő box konfigurációja Output: Boxok egy rendezett listája Kihívások Tesztidő csak teljes stringre számolható Sokféle célfüggvény Változó szempontok Real-time Mi legyen az output? Jüttner Alpár (ELTE TTK) Adattárolók gyátásának optimalizálása 16 / 27
Gráfelméleti modell A részegységeket egy gráffal reprezentáljuk. Gigapack HDD HDD HDD Gigapack HDD HDD HDD Gigapack HDD HDD HDD Gigapack HDD HDD HDD A Box Console Power 6+ server IO Drawer A gráf csúcsai tartalmazzák a részegység típusát és teszteltségi fokát Jüttner Alpár (ELTE TTK) Adattárolók gyátásának optimalizálása 17 / 27
Gráfelméleti modell Megengedett operációk Kiszerelés Beszerelés Tesztelés Jüttner Alpár (ELTE TTK) Adattárolók gyátásának optimalizálása 18 / 27
Gráfelméleti modell Megengedett operációk Kiszerelés Beszerelés Tesztelés Jüttner Alpár (ELTE TTK) Adattárolók gyátásának optimalizálása 18 / 27
Gráfelméleti modell Megengedett operációk Kiszerelés Beszerelés Tesztelés Jüttner Alpár (ELTE TTK) Adattárolók gyátásának optimalizálása 18 / 27
Gráfelméleti modell Rekonfigurációs alapfeladat G I Inventory gráf: Az elérhető összes részalkatrész és box gráfja együtt. G R Reconf gráf: Az elkészítendő konfigurációk gráfja. G I φ GR Jüttner Alpár (ELTE TTK) Adattárolók gyátásának optimalizálása 19 / 27
Gráfelméleti modell Rekonfigurációs alapfeladat Megengedett ϕ hozzárendelés: Beágyazás G I Minden alkatrészhez azonos típusút rendel, A szükséges szerelési és tesztelési idők beleférnek a határidőbe Költségfüggvény kiszámítása: Szükséges operációk meghatározása Egyes operációk költségének meghatározása A legjobb ilyen ϕ-t keressük. φ GR Jüttner Alpár (ELTE TTK) Adattárolók gyátásának optimalizálása 19 / 27
Gráfelméleti modell Rekonfigurációs alapfeladat Megengedett ϕ hozzárendelés: Beágyazás G I Minden alkatrészhez azonos típusút rendel, A szükséges szerelési és tesztelési idők beleférnek a határidőbe Költségfüggvény kiszámítása: Szükséges operációk meghatározása Egyes operációk költségének meghatározása A legjobb ilyen ϕ-t keressük. φ GR Jüttner Alpár (ELTE TTK) Adattárolók gyátásának optimalizálása 19 / 27
Gráfelméleti modell Rekonfigurációs alapfeladat Megengedett ϕ hozzárendelés: Beágyazás G I Minden alkatrészhez azonos típusút rendel, A szükséges szerelési és tesztelési idők beleférnek a határidőbe Költségfüggvény kiszámítása: Szükséges operációk meghatározása Egyes operációk költségének meghatározása A legjobb ilyen ϕ-t keressük. φ GR Jüttner Alpár (ELTE TTK) Adattárolók gyátásának optimalizálása 19 / 27
Maximális izomorf színezett részfenyő A rekonfigurációs alapfeladat egy építőkockája Jüttner Alpár (ELTE TTK) Adattárolók gyátásának optimalizálása 20 / 27
Maximális izomorf színezett részfenyő Algoritmus: Dinamikus programozás Jüttner Alpár (ELTE TTK) Adattárolók gyátásának optimalizálása 20 / 27 A rekonfigurációs alapfeladat egy építőkockája
Maximális izomorf színezett részfenyő Részfeladat Jüttner Alpár (ELTE TTK) Adattárolók gyátásának optimalizálása 21 / 27
Maximális izomorf színezett részfenyő Részfeladat Jüttner Alpár (ELTE TTK) Adattárolók gyátásának optimalizálása 21 / 27
Maximális izomorf színezett részfenyő Kezdőlépés Jüttner Alpár (ELTE TTK) Adattárolók gyátásának optimalizálása 22 / 27
Maximális izomorf színezett részfenyő Általános lépés Jüttner Alpár (ELTE TTK) Adattárolók gyátásának optimalizálása 23 / 27
Maximális izomorf színezett részfenyő Futásidő Elméleti felső becslés: O(nCD 3 ) n: 1. fenyőben csúcsok száma C: 2. fenyőben egyszínű csúcsok max száma D: egyszínű gyerekek max száma Alkalmazhatóság Rögzített gyökér - Tetszőleges gyökér Élszínezés Színezés helyett megengedettségi szabály Rekurzív súlyfüggvény Izomorf részfenyves Jüttner Alpár (ELTE TTK) Adattárolók gyátásának optimalizálása 24 / 27
Maximális izomorf színezett részfenyő Futásidő Elméleti felső becslés: O(nCD 3 ) n: 1. fenyőben csúcsok száma C: 2. fenyőben egyszínű csúcsok max száma D: egyszínű gyerekek max száma Alkalmazhatóság Rögzített gyökér - Tetszőleges gyökér Élszínezés Színezés helyett megengedettségi szabály Rekurzív súlyfüggvény Izomorf részfenyves Jüttner Alpár (ELTE TTK) Adattárolók gyátásának optimalizálása 24 / 27
Maximális izomorf színezett részfenyő Futásidő Elméleti felső becslés: O(nCD 3 ) n: 1. fenyőben csúcsok száma C: 2. fenyőben egyszínű csúcsok max száma D: egyszínű gyerekek max száma Alkalmazhatóság Rögzített gyökér - Tetszőleges gyökér Élszínezés Színezés helyett megengedettségi szabály Rekurzív súlyfüggvény Izomorf részfenyves Jüttner Alpár (ELTE TTK) Adattárolók gyátásának optimalizálása 24 / 27
Maximális izomorf színezett részfenyő Futásidő Elméleti felső becslés: O(nCD 3 ) n: 1. fenyőben csúcsok száma C: 2. fenyőben egyszínű csúcsok max száma D: egyszínű gyerekek max száma Alkalmazhatóság Rögzített gyökér - Tetszőleges gyökér Élszínezés Színezés helyett megengedettségi szabály Rekurzív súlyfüggvény Izomorf részfenyves Jüttner Alpár (ELTE TTK) Adattárolók gyátásának optimalizálása 24 / 27
Maximális izomorf színezett részfenyő Futásidő Elméleti felső becslés: O(nCD 3 ) n: 1. fenyőben csúcsok száma C: 2. fenyőben egyszínű csúcsok max száma D: egyszínű gyerekek max száma Alkalmazhatóság Rögzített gyökér - Tetszőleges gyökér Élszínezés Színezés helyett megengedettségi szabály Rekurzív súlyfüggvény Izomorf részfenyves Jüttner Alpár (ELTE TTK) Adattárolók gyátásának optimalizálása 24 / 27
Maximális izomorf színezett részfenyő Futásidő Elméleti felső becslés: O(nCD 3 ) n: 1. fenyőben csúcsok száma C: 2. fenyőben egyszínű csúcsok max száma D: egyszínű gyerekek max száma Alkalmazhatóság Rögzített gyökér - Tetszőleges gyökér Élszínezés Színezés helyett megengedettségi szabály Rekurzív súlyfüggvény Izomorf részfenyves Jüttner Alpár (ELTE TTK) Adattárolók gyátásának optimalizálása 24 / 27
Statisztika, előrejelzés feladatok 1 Tesztidő becslése 2 Előrejelzések 1 Rendelések visszamondásának valószínűsége 2 Paraméterek változásának valószínűsége Határidő változása 3 Negyedév során az igények előrejelzése. Jüttner Alpár (ELTE TTK) Adattárolók gyátásának optimalizálása 25 / 27
Optimalizációs feladatok 1 (Best Match alkalmazás) 2 Rekonfiguráció tervezés adott rendelésekre egy nap több nap 3 Teljes rekonfiguráció tervezés 4 Döntéstámogatás: Startoff build vagy Rekonfiguráció Jüttner Alpár (ELTE TTK) Adattárolók gyátásának optimalizálása 26 / 27
Köszönöm a figyelmet! Jüttner Alpár (ELTE TTK) Adattárolók gyátásának optimalizálása 27 / 27