АТ-8: Терминирање производно-технолошких ентитета Проф. др Зоран Миљковић
Садржај Пројектовање флексибилних ; Математички модел за оптимизацију флексибилних ; Генетички алгоритми у оптимизацији флексибилних ; Терминирање флексибилних ; Математички модел за оптимизацију планова терминирања; Генетички алгоритми у оптимизацији планова терминирања; Експериментални резултати; 2
Пројектовање технолошких процеса Деф: Пројектовање технолошког процеса се може дефинисати као систематско одређивање детаљних метода којима се делови или склопови (у случају монтаже) могу произвести економично и конкурентно, од иницијалне фазе (радионички цртеж готовог дела), преко међуфаза (сиров материјал, припремак, обрадак), до завршне фазе (жељени облик готовог дела). Улаз за ПТП: пројектни подаци, подаци о сировом материјалу, подаци о обрадном систему (подаци о машини алатки, алатима, стезним приборима), подаци о захтеваном квалитету и подаци о типу производње (појединачна, малосеријска, великосеријска, масовна). Излаз из ПТП: технолошки процес - редослед одвијања свих активности (операција) потребних да се од полазног материјала (сировине или полуфабриката) обликује готов део (производ). 3
Врсте чворова: Почетни чвор (почетак технолошког процеса); Средњи чворови (број операције, алтернативне машине, времена обраде); Крајњи чвор (крај технолошког процеса); Врсте конектора: ОR конектор почетак алтернативног технолошког процеса; join конектор завршетак алтернативног технолошког процеса; Пројектовање технолошких процеса почетни чвор алтернативне машине 3 {3,4} [6,2.5] крајњи чвор 2 {3,4} [4,8] OR2 join 2 S 1 {2,3,5} [8,10,13] 4 {6,8} [18,20] 5 {1,8} [20,26] OR1 join1 8 {7,8} [16,18] E број операције време обраде 6 {1,2} [18,20] 7 {5,6,7} [30,32,34] део 1 4 Средњи чворови
Пројектовање технолошких процеса део 2 део 3 део 4 5
Математички модел за оптимизацију Производно време: збир времена обраде дела на машини и времена транспорта дела од машине до машине алатке; Математички модел производног времена: Функција циља (функција одлучивања) f(i): 6
Генетички алгоритми у оптимизацији Генерисање јединки у иницијалној популацији главни подстринг представља технолошки процес; главни подстринг хромозома чине гени (број гена је једнак укупном броју операција), где сваки ген дефинишу два броја: први представља број операције; други представља алтернативну машину алатку на којој се изводи операција; помоћни подстринг представља OR-конекторе; гени помоћног подстринга су представљени бројевима нула или један, на основу чега се бира алтернативна грана технолошког процеса; Технолошки процес (главни подстринг) OR-конектори (помоћни подстринг) (1,2) (2,3) (3,4) (4,6) (5,8) (6,1) (7,5) (8,7) 0 1 Број операције Алтернативна машина алатка 7
Генетички алгоритми у оптимизацији 8
Генетички алгоритми у оптимизацији Евалуација функције циља и иницијализација параметара генетичких алгоритама параметри генетичких алгоритама који се иницијализују су: величина популације S; укупан број генерација М; вероватноћа укрштања p c ; вероватноћа мутације p m ; Селекција подразумева бирање два родитеља-хромозома из текуће популације; врши се на бази рулет селекције (енгл. roulette wheel selection), где је вероватноћа селекције пропорционална функцији циља f(i); 9
Генетички алгоритми у оптимизацији Укрштање на основу дефинисане вероватноће укрштања p c, неке од индивидуа се бирају за укрштање (енгл. cross-over); за сваки пар родитељских хромозома главног подстринга (технолошки процес), случајно је одабрана једна позиција укрштања; потомак 1 настаје комбинацијом првог дела хромозома родитеља 1 (део лево од позиције укрштања) и другог дела родитеља 2 (део десно од позиције укрштања); Родитељ1: (1,2) (2,3) (3,4) (4,6) (5,8) (6,1) (7,5) (8,7) 1 0 Потомак1: (1,2) (2,3) (3,4) (4,6) (5,8) (6,2) (7,7) (8,8) 1 1 Родитељ2: (1,3) (2,2) (3,6) (4,8) (5,1) (6,2) (7,7) (8,8) 1 1 Потомак2: (1,3) (2,2) (3,6) (4,8) (5,1) (6,1) (7,5) (8,7) 1 0 Родитељ1: (1,2) (2,3) (3,4) (4,6) (5,8) (6,1) (7,5) (8,7) 110 0
Генетички алгоритми у оптимизацији Укрштање потомак 2 настаје комбинацијом првог дела родитеља 2 (део лево од позиције укрштања) и другог дела родитеља 1 (део десно од позиције укрштања); укрштање за помоћни подстринг извршено је на следећи начин: један од случајно одабраних гена родитеља 1 постаје ген потомка1, док се преостали ген добија од родитеља 2; позиција укрштања за главни посдтринг позиција укрштања за помоћни посдтринг Родитељ1: (1,2) (2,3) (3,4) (4,6) (5,8) (6,1) (7,5) (8,7) 1 0 Потомак1: (1,2) (2,3) (3,4) (4,6) (5,8) (6,2) (7,7) (8,8) 1 1 Родитељ2: (1,3) (2,2) (3,6) (4,8) (5,1) (6,2) (7,7) (8,8) 1 1 Потомак2: (1,3) (2,2) (3,6) (4,8) (5,1) (6,1) (7,5) (8,7) 1 0 Родитељ1: (1,2) (2,3) (3,4) (4,6) (5,8) (6,1) (7,5) (8,7) 111 0
Генетички алгоритми у оптимизацији Родитељ: Мутација на основу дефинисане вероватноће мутације p m, неки хромозоми (родитељи) су случајно одабрани за мутацију; на основу случајно генерисане позиције мутације, на сваки од одабраних родитеља је примењен оператор мутације, а као резултат су добијени потомци са промењеним (мутираним) геном; оператор мутације подразумева замену алтернативне машине алатке за случајно одабрану операцију и то на следећи начин: потомак се добија када се селектована машина алатка у главном подстрингу замени неком од алтернативних машина из сета алтернативних машина; на пример, ген (7,5) случајно је селектован за оператор мутације; машина 5 може бити замењена машином 7, која је алтернативна машина за операцију 7 из сета машина (5,6,7); (1,2) (2,3) (3,4) (4,6) (5,8) (6,1) (7,5) (8,7) 1 0 Потомак: (1,2) (2,3) (3,4) (4,6) (5,8) (6,1) (7,7) (8,7) 12 1 1
Генетички алгоритми у оптимизацији Табела: Алтернативни технолошки процеси за четири репрезентативна дела Део Алтернативни технолошки процеси Функција циља Производно време Одабрани технолошки процеси 1 2 3 4 (1,3)-(2,3)-(3,3)-(8,8) 0,0116 86 (1,2)-(2,3)-(3,3)-(8,8) 0,0101 99 (1,5)-(2,3)-(3,3)-(8,8) 0,0087 115 (1,5)-(5,3)-(6,3)-(8,9) 0,0076 131 (1,6)-(5,3)-(6,3)-(8,9) 0,0070 142 (1,5)-(5,3)-(6,3)-(8,8) 0,0066 151 (1,3)-(2,6)-(3,5)-(8,5) 0,0096 104 (1,3)-(2,6)-(3,6)-(8,5) 0,0094 106 (1,4)-(2,4)-(3,5)-(8,5) 0,0075 134 (1,9)-(2,5)-(8,6) 0,0090 111 (1,9)-(2,6)-(8,6) 0,0088 113 (5,4)-(6,2)-(7,3)-(8,2) 0,0077 130 (1,3)-(2,3)-(3,3)-(8,8) (1,5)-(5,3)-(6,3)-(8,9) (1,3)-(2,6)-(3,5)-(8,5) (1,9)-(2,5)-(8,6) 13
Терминирање флексибилних Деф: Терминирање обухвата процес планирања машинске обраде, као и придруживање технолошких операција, за сваки од обрадака, одговарајућој машини алатки, уз истовремено оптимално временско распоређивање; Циљ: одређивање редоследа операција обраде на одговарајућим машинама алаткама, минимизујући при томе одређене перформансе (средње време проведено у систему, производно време које обухвата и време обраде и време транспорта дела, рокове израде одређене лансираним радним налозима, и др.); job-shop тип терминирања: Дато је n делова, који се обрађују нa m машина алатки, уз дефинисана технолошка ограничења за операције сваког од делова. Потребно је одредити редослед обраде тј. редослед извршавања операција датих делова на датим машинама, тако да су задовољена технолошка ограничења, а добијене секвенце оптималне према задатим критеријумима перформанси. 14
Математички модел за оптимизацију планова терминирања оbject1 се односи на укупно време неопходно за обраду свих делова чије се терминирање врши (енгл. makespan); оbject2 се односи на уравнотежено искоришћење машина алатки; 15
Генетички алгоритми у терминирању Генерисање јединки у иницијалној популацији главни подстринг представља план терминирања; дужина хромозома за план терминирања одређена је бројем делова и максималним бројем операција q; параметар q представља максималан број операција за све алтернативне технолошке процесе (q=4); за пример са почетка, број делова је четири, број машина алатки је девет (n=4 и m=9); стринг за план терминирања се састоји од 16 елемената (n q=4 4=16); технолошки процес за делове 1, 2 и 3 има четири операције, а за део 4 има три операције; преостали гени имају вредност нула; 16
Генетички алгоритми у терминирању Генерисање јединки у иницијалној популацији помоћни подстринг представља технолошки процес; подстринг за технолошки процес састоји од четири елемента (пошто се врши терминирање за четири дела), где сваки ген представља одабрани алтернативни процес; на пример, први ген помоћног подстринга има вредност један, што значи да је за први део одабран први алтернативни технолошки процес (1,3)-(2,3)-(3,3)-(8,8); на пример, трећи ген помоћног подстринга има вредност три, што значи да је за трећи део одабран трећи алтернативни технолошки процес (1,4)-(2,4)-(3,5)-(8,5); 17
Генетички алгоритми у терминирању Евалуација функције циља и иницијализација параметара генетичких алгоритама Функција циља за сваку од индивидуа у иницијалној популацији рачуна се према једначинама из математичког модела за оптимизацију; параметри генетичких алгоритама који се иницијализују су: величина популације S, укупан број генерација М, вероватноћа укрштања p c, вероватноћа мутације p m, Селекција подразумева бирање два родитеља-хромозома из текуће популације, на бази рулет селекције (енгл. roulette wheel selection), где је вероватноћа селекције пропорционална функцији циља f(i); 18
Генетички алгоритми у терминирању Укрштање оператор је прво примењен на помоћни посдтринг; случајно изабрани гени родитеља 1 и родитеља 2 заменили места; пошто помоћни стринг потомка 1 настаје од другог и четвртог гена родитеља 1, то се гени 2 и 4 из главног постринга родитеља 1 директно (на исте позиције) копирају у потомак 1; нула се, такође, копира на исту позицију потомака; непопуњени елементи (гени) у потомку 1 попуњавају се преосталим генима (први и трећи ген) родитеља 2; 19
Генетички алгоритми у терминирању Мутација Први оператор мутације је двопозициона swapping мутација, која се одвија у три корака: (i) селекција једног родитеља; (ii) случајан одабир два гена у главном подстрингу (план терминирања); (iii) нови хромозом - потомак се добија заменом места случајно одабраних гена; Други оператор мутације се користи за генерисање нових потомака променом једног алтернативног технолошког процеса једног дела; 20
Експериментални резултати параметри генетичких алгоритама за оптимизацију планова терминирања: величина популације S=500; укупан број генерација М=100; вероватноћа укрштања p c =0.80; вероватноћа мутације p m =0.10; Део Одабрани технолошки процес 1 (1,3)-(2,3)-(3,3)-(8,8) 2 (1,5)-(5,3)-(6,3)-(8,9) 3 (1,3)-(2,6)-(3,5)-(8,5) 4 (1,9)-(2,5)-(8,6) Време транспорта између машина Khepera II мобилни робот машина 1 2 3 4 5 6 7 8 9 1 0 50 79 36 99 106 130 116 102 2 50 0 31 16 51 56 78 67 54 3 79 31 0 47 20 27 63 48 26 4 36 16 47 0 67 70 90 84 70 5 99 51 20 67 0 7 55 40 22 6 106 56 27 70 7 0 62 47 29 7 130 78 63 90 55 62 0 15 37 8 116 67 48 84 40 47 15 0 22 9 102 54 26 70 22 29 37 22 0 21
Експериментални резултати 22
23