primjena genetskih algoritama u brodograđevnoj industriji
DESCRIPTION
SAŽETAK Gradnja broda svrstava se u jedan od složenijih proizvodnih procesa, a kontinuirana optimizacija učinkovitosti proizvodnog procesa omogućuje brodograevnoj tvrtci željeni nivo produktivnosti i konkuriranje na tržištu. U tu svrhu potrebno je sagledati sve danas dostupne moderne tehnologije, proučiti i izmjeriti kosrinosti i prednosti njihovih implementacija u proizvodne procese. Kao jedna od takvih, nezaobilazna je primjena informacijskih tehnologija, a jedno od kompleksnijih područja unutar ovih tehnologija predstavljaju i genetski algoritmi. Ovaj rad je usmjeren na mogućnosti primjene tog znanstveno-tehnološkog pristupa pri rješavanju konkretnih problema u brodograevnoj industriji. Kroz rad će se razmotriti problematike prisutne u brodograevnoj djelatnosti, strategija primjena novih tehnologija zatim metode optimizacije pomoću genetskih algoritama i na kraju će biti dokazana učinkovitost primjene odreene vrste genetskog algoritma kroz simulaciju modela proizvodnog okruženja. KLJUČNE RIJEČI: Brodogradnja, genetski algoritam, optimizacija, informacijska tehnologija.TRANSCRIPT
Ervin Bešić : PRIMJENA GENETSKIH ALGORITAMA U BRODOGRAĐEVNOJ INDUSTRIJI
Polytechnic of Rijeka; 2012. God.
VELEUČILIŠTE U RIJECI
Ervin Bešić
PRIMJENA GENETSKIH ALGORITAMA U BRODOGRAĐEVNOJ INDUSTRIJI
( specijalistički završni rad)
Rijeka, 2013.
Ervin Bešić : PRIMJENA GENETSKIH ALGORITAMA U BRODOGRAĐEVNOJ INDUSTRIJI
Polytechnic of Rijeka; 2012. God.
Ervin Bešić : PRIMJENA GENETSKIH ALGORITAMA U BRODOGRAĐEVNOJ INDUSTRIJI
Polytechnic of Rijeka; 2012. God.
SAŽETAK
Gradnja broda svrstava se u jedan od složenijih proizvodnih procesa, a kontinuirana
optimizacija učinkovitosti proizvodnog procesa omogućuje brodograđevnoj tvrtci željeni nivo
produktivnosti i konkuriranje na tržištu. U tu svrhu potrebno je sagledati sve danas dostupne
moderne tehnologije, proučiti i izmjeriti kosrinosti i prednosti njihovih implementacija u
proizvodne procese. Kao jedna od takvih, nezaobilazna je primjena informacijskih
tehnologija, a jedno od kompleksnijih područja unutar ovih tehnologija predstavljaju i
genetski algoritmi. Ovaj rad je usmjeren na mogućnosti primjene tog znanstveno-tehnološkog
pristupa pri rješavanju konkretnih problema u brodograđevnoj industriji. Kroz rad će se
razmotriti problematike prisutne u brodograđevnoj djelatnosti, strategija primjena novih
tehnologija zatim metode optimizacije pomoću genetskih algoritama i na kraju će biti
dokazana učinkovitost primjene određene vrste genetskog algoritma kroz simulaciju modela
proizvodnog okruženja.
KLJUČNE RIJEČI: Brodogradnja, genetski algoritam, optimizacija, informacijska
tehnologija.
Ervin Bešić : PRIMJENA GENETSKIH ALGORITAMA U BRODOGRAĐEVNOJ INDUSTRIJI
Polytechnic of Rijeka; 2012. God.
Sadržaj
1. Uvod ....................................................................................................................................... 1 1.1. Predmet istraživanja ........................................................................................................ 1 1.2. Radna hipoteza ................................................................................................................ 1 1.3. Svrha i ciljevi istraživanja ............................................................................................... 2 1.4. Primijenjene metode istraživanja ..................................................................................... 2 1.5. Struktura rada .................................................................................................................. 2
2. Razvojni trendovi u brodogradnji ...................................................................................... 3 2.1. Strategije primjene novih tehnologija.............................................................................. 4
2.1.1. Laserska tehnologija ................................................................................................. 4 2.1.2. Izrada digitalnih prototipova .................................................................................... 5 2.1.3. Industrijska multimedija ........................................................................................... 5 2.1.4. Robotika ................................................................................................................... 6 2.1.5. Računalno dizajniranje ............................................................................................. 6
2.2. Perspektiva informatizacije ............................................................................................. 8 2.2.1. Generička programska rješenja ................................................................................ 8 2.2.2. Računalna podrška .................................................................................................... 9 2.2.3. Paralelno računarstvo ............................................................................................... 9 2.2.4. Umjetna inteligencija .............................................................................................. 10 2.2.5. Virtualna proizvodnja ............................................................................................. 10
3. Genetski algoritam ............................................................................................................. 13 3.1. Evolucijski algoritmi ..................................................................................................... 13 3.2. Optimizacija................................................................................................................... 14 3.3. Struktura genetskog algoritma ....................................................................................... 15 3.4. Genetski operatori .......................................................................................................... 17
3.4.1. Koeficijent križanja i mutacije .............................................................................. 18 3.5. Kvaliteta jedinke ............................................................................................................ 19 3.6. Kategorizacija genetskih algoritama ............................................................................. 19
4. Primjena u brodogradnji ................................................................................................... 21 4.1.Snimka stanja proizvodnje u Brodogradilištu d.d. ........................................................ 22 4.2. Formuliranje problema .................................................................................................. 26
4.2.1. Model problema ..................................................................................................... 27 4.3. Struktura algoritma ........................................................................................................ 31
4.3.1. Inicijalizacija .......................................................................................................... 31 4.3.2 Evaluacija kvalitete ................................................................................................. 32 4.3.3. Selekcija ................................................................................................................. 33 4.3.4. Križanje .................................................................................................................. 34 4.3.5. Mutacija .................................................................................................................. 36
4.4. Analiza rješenja ............................................................................................................. 38 4.4.1. Simulacija ............................................................................................................... 38
5. Zaključak ............................................................................................................................. 45 Popis kratica ............................................................................................................................ 46 Bibliografija ............................................................................................................................ 47 Popis ilustracija ...................................................................................................................... 48
Ervin Bešić : PRIMJENA GENETSKIH ALGORITAMA U BRODOGRAĐEVNOJ INDUSTRIJI
1
1. Uvod
Tema rada obrađuje primjenu genetskih algoritama u rješavanju problema koji se
javljaju u brodograđevnoj industriji, u nastavku je formulirana problematika, postavljena
hipoteza, definirani ciljevi i opisana semantička struktura završnog rada.
1.1. Predmet istraživanja
Brodograđevna industrija spada u jednu od velikih složenih industrija koja u svojim
strukturnim procesima vrši konsolidaciju direktne proizvodnje i razvoja projekata. Sa
stajališta izražene kompleksnosti u brodogradnju je moguće implementirati niz inovativnih
tehnologija koje omogućuju optimizaciju proizvodnog sustava u vidu veće produktivnosti i/ili
smanjenja troškova. Jedna od takvih tehnologija su i evolucijski algoritmi. Jednu od vrsta
evolucijskih algoritama predstavljaju i genetski algoritmi čije konkretne mogućnosti primjene
u brodogradnji obrađuje ovaj rad.
Osnovni predmet istraživanja ovog rada može se sintetizirati kroz pitanja:
Koje su evidentirane problematike u području brodograđevne industrije?
Što je to genetski algoritam?
Kako je moguće učinkovito primijeniti tehnologiju genetskog algoritma u određene
brodograđevne procese?
Kakva je perspektiva moderne brodograđevne industrije?
1.2. Radna hipoteza
Razvojem znanosti na području umjetne inteligencije i složenih računalnih sustava
došlo se do spoznaje da je moguće određene koncepte, poput genetskih algoritama, uspješno
primijeniti u rješavanju optimizacijskih problema u industrijskim procesima.
Ervin Bešić : PRIMJENA GENETSKIH ALGORITAMA U BRODOGRAĐEVNOJ INDUSTRIJI
2
Temeljna radna hipoteza: Rješenje problema optimizacije planiranja procesa
proizvodnje u brodograđevnoj industriji moguće je riješiti uporabom genetskih algoritama u
računalnoj obradi ključnih parametara.
1.3. Svrha i ciljevi istraživanja
Cilj ovog rada je prikazati mogućnosti primjene složenih računalni sustava kroz
formulirani primjer uporabe genetskog algoritma kao rezultat istraživanja.
1.4. Primijenjene metode istraživanja
Može se reći da su pri istraživanju korištene sljedeće znanstvene metode: povijesna,
komparativna, matematička, deskriptivna, modeliranje, apstrakcijska, analiza i sinteza.
1.5. Struktura rada
Ovaj rad je koncipiran u četiri dijela: uvod, perspektivni dio, analitički dio i zaključak.
U uvodnom djelu definiran je predmet istraživanja, zatim radna hipoteza, cilj
istraživanja, korištene znanstvene metode, te je opisana struktura rada.
Perspektivni dio obrađuje problematiku brodograđevne industrije u modernom
poslovnom okruženju i koncept optimizacije primjenom genetskih algoritama.
Analitički dio obuhvaća analizu problema i prijedlog rješenja kroz uporabu tehnike
genetskih algoritama.
Zaključak je sinteza rezultata istraživanja kojom je dokazana postavljena hipoteza.
Ervin Bešić : PRIMJENA GENETSKIH ALGORITAMA U BRODOGRAĐEVNOJ INDUSTRIJI
3
2. Razvojni trendovi u brodogradnji
Kroz povijesni razvoj brodograđevne djelatnosti vidljivo je da se vodeći centri ove
industrijske djelatnosti kontinuirano transferiraju od Velike Britanije, SAD-a, europskih
brodogradilišta, do u novije vrijeme azijskih gospodarstava poput Japana, Južne Koreje i
Kine. Ono što je indikativno za razvoj brodogradnje upravo je ubrzani gospodarski rast onih
okruženja koja strategiju svog ekonomskog razvoja povezuju sa strategijom razvoja ove
industrijske djelatnosti. Uzrok tomu je širi utjecaj brodograđevne industrije na opći razvoj
društva od znanstvenog do tehnološkog aspekta kroz refleksije na cjelokupni ekonomski rast.
Upravo azijska gospodarstva prepoznali su konkurentne vrijednost u novim tehnološkim
perspektivama razvojnih strategija brodograđevne industrije. Trenutno u najnaprednijim
brodograđevnim silama poput Japana i Južne Koreje evidentna je kontinuirana primjena novih
tehnologija, kao što su:
• robotika
• laserska tehnologija
• precizno upravljiva procesna tehnologija
• umjetna inteligencija
Budućnost izgradnje brodova i plovnih objekata definirat će industrija čija je baza
primjena znanja, čija je karakteristika promicanje znanja, tehnologije i kapitala, dok će
tradicionalni rad i utjecaji fizičkog doprinosa biti uveliko smanjeni.
Brodograđevna industrija spada u red najsloženijih proizvodno poslovnih organizacija upravo
zato što se radi o integraciji tehnoloških, socioloških i ekonomskih domena koje moraju bit
djelotvorno organizirani s visokim stupnjem prilagodljivosti prema utjecajima dinamičkog
svjetskog tržišta. Postizanje učinkovitog stupnja organizacije predstavlja izazov u kojem se
očituje vrijednost upravljačkih struktura. Organizacijski trendovi unutar ove industrije
pokazuju da je neophodno na vrijeme prepoznati potrebu za reorganizacijom, odnosno
optimizacijom poslovnih procesa u cilju jačanja konkurentnosti i opstanka na zahtjevnom
tržištu. Isto tako u brojnim strateškim analizama razvoja brodograđevne industrije navodi se
kao neophodna primjena novih tehnologija i usmjerenosti prema inovacijama. Jedno od
Ervin Bešić : PRIMJENA GENETSKIH ALGORITAMA U BRODOGRAĐEVNOJ INDUSTRIJI
4
ključnih područja je i primjena računalnih tehnologija koje omogućuju efektivno postizanje
komparativne a zatim i konkurentne prednosti. Aktivno promicanje koncepta digitalne
brodogradnje kroz kontinuiranu integraciju poslovanja i uspostavu modernog pristupa u
projektiranju, proizvodnji i upravljanju, uvjetovano je snažnom orijentacijom prema primjeni
informacijskih tehnologija. Ove smjernice su općenito prihvaćene kao jedini put opstanka
brodograđevne industrije, te ujedno zahtijevaju snažnu predanost zajednice iz okruženja koja
prepoznaje prednosti daljnjeg razvoja ove industrije (Zhao,2009., 494-497).
2.1. Strategije primjene novih tehnologija
Brodograđevna industrija podrazumijeva veliki broj stručnih i kvalificiranih kadrova, ali
često zaostaje za sličnim tehnološko složenim proizvodnim sektorima poput avionske
industrije i auto industrije. Ponekad je to tehnički uvjetovano, ali osnovni razlog povezan je sa
strukturom i kulturom same industrije. U novije vrijeme pojavile su se razvojne strategije i
tehnologije koje brodogradnju mogu uzdignuti na viši tehnološki nivo, te time osigurati
konkurentnu prednost i veću produktivnost. Ono što je bitno istaknuti u kontekstu ovog rada
je da se paralelno, kroz primjenu bilo koje od razmatranih tehnologija, ostvaruju i
pretpostavke za primjenu genetskih algoritama kao jednog od učinkovitih sredstava
optimizacije razvojnih modela.
2.1.1. Laserska tehnologija
Laserska tehnologija predstavlja jednu od perspektivnijih industrijskih tehnologija iako
je još uvijek nedovoljno zastupljena u brodogradnji, te nije prepoznata u širem spektru
primjene. Lasersko skeniranje ubrzava prikupljanje ključnih podataka koji se koriste u
dizajniranju plovila. Ova tehnologija koristi lasersku zraku koja vrši skeniranje ciljanog
objekta, te elektroničkim putem obrađuje veliki broj metričkih podataka u vrlo kratkom
vremenu. Na osnovu prikupljenih podataka generiraju se precizni CAD (computer aided
design – računalna podrška u projektiranju) modeli. Implikacije ove tehnologije su visoka
učinkovitost u montaži precizno izmjerenih konstrukcijskih elemenata. U praksi se ova
Ervin Bešić : PRIMJENA GENETSKIH ALGORITAMA U BRODOGRAĐEVNOJ INDUSTRIJI
5
tehnologija najučinkovitije koristi u brodogradilištima koja se bave modifikacijama gotovih
plovila.
2.1.2. Izrada digitalnih prototipova
Sljedeća perspektivna tehnologija je izrada digitalnih prototipova. Konkretno riječ je o
izradi trodimenzionalnih modela koji uključuju primjenu prividne (virtualne) stvarnosti.
Koncept primjene prototipa obuhvaća visoku mogućnost obrade modela, odnosno analizu
kroz simulaciju prije izrade proizvoda. U kontekstu brodogradnje najviše su prisutna
simulacije prilikom testiranja hidro dinamike FEA (finite element method – metoda u
projektiranju) i kalkulaciji strukture materijala CFD (computational fluid dynamics –
računalna metodologija za izračun dinamike fluida). Implikacije ove tehnologije usmjeravaju
brodogradnju na sasvim novu razinu industrijske kulture, uspostavu tzv. digitalnih
brodogradilišta. U svijetu postoji već nekoliko projekata koji promoviraju koncept digitalnih
brodogradilišta, te kojima se namjerava postići potpuna integracija suvremenih tehnologija u
sve proizvodne procese izgradnje broda.
2.1.3. Industrijska multimedija
Prikaz trodimenzionalnih modela prilikom projektiranja predstavlja jednu perspektivu
primjene 3D tehnologije ali uključivanje takvih modela u operativnu izradu i montažu
brodskih elementa predstavlja izazov koji je još uvijek predmet mnogih istraživanja. Ideja
ovog koncepta obuhvaća brže i kvalitetnije izvođenje radnih zadataka od strane proizvodnih
timova. Bitna prednost ove tehnologije je mogućnost prikaza cjelovitog proizvoda sa
simulacijom u realnim uvjetima, što ujedno brodograditelju otvara novu percepciju predmeta
rada. U vizijama razvoja budućih industrija sve su više prisutni elementi tzv. ''tvorničke
multimedije''. Znanstvena istraživanja se usmjeravaju na razvoju multimedijalnih komponenti
koje mogu poboljšati učinkovitost i produktivnost određenih industrijskih grana pa tako i
brodogradnje.
Ervin Bešić : PRIMJENA GENETSKIH ALGORITAMA U BRODOGRAĐEVNOJ INDUSTRIJI
6
2.1.4. Robotika
Zadnjih desetljeća intenzivirano je istraživanje na korištenju robota u brodograđevnoj
industriji. Mogućnosti primjene ove tehnologije najviše je zastupljena u obradi limova koji se
koriste u gradnji brodske strukture (rezanje i zavarivanje). Međutim automatizacija
zavarivanja u brodogradnji je složen postupak iz razloga dislokacije montažnih sekcija i
specifičnih zahtjeva pojedinih plovila. Još uvijek ova tehnologija nije dovoljno zastupljena,
iako ima veliku perspektivu sa stajališta zaštite radnika i učinkovite produktivnosti.
2.1.5. Računalno dizajniranje
Dizajniranje predstavlja proces koji za cilj ima izradu produkta koji je će zadovoljiti
konstruktivno definirane ljudske potrebe ili potrebe određenog okruženja. Očekivanja i
zahtjevi koji se odnose na ciljani produkt se specificiraju unutar tehničke specifikacije. Sam
proces dizajniranja se može opisati kao proces transformacije specifikacije u dizajnirani opis.
Dizajnirani opis mora sadržavati dovoljno informacija (numeričkih, grafičkih, simboličkih)
koje će omogućiti tvorničku izradu produkta. Zato dizajn predstavlja inteligentnu aktivnost,
koja je usmjerena prema cilju, restrikcijama i procesu donošenja odluka. Inženjerski dizajn
najčešće obuhvaća istraživanje i učenje u svojoj primjeni. Istraživanje je zastupljeno prilikom
identifikacije strukture i varijabli koje bi trebale zadovoljiti postavljene zahtjeve. Učenje
dolazi do izražaja prilikom primjene empirijskog pristupa na temelju realiziranih projekata ili
prilikom primjene novih tehnoloških rješenja. Veliki se napori ulažu u izradi modela procesa
dizajniranja. Koristi takvih modela su najčešće postizanje mogućnosti automatizacije
cjelokupnog procesa dizajniranja kroz računalnu obradu. Model toka podataka usmjeren je na
upravljanje aktivnostima prilikom rješavanja dizajnerskog problema. Model se koristi za
izgradnju CAD sustava i njegovu integraciju s CAM sustavom. Kroz proučavanje osnovnog
modela ne možemo spoznati gotovo ništa o ulozi primijenjenog znanja korištenog u
dizajniranju. Za tu svrhu se koriste kognitivni model . Ovaj model je usmjeren na uzroke,
namjenu, proces rješavanja problema i proces donošenja odluka sudionika u procesu
dizajniranja. On donosi dublje razumijevanje intelektualnih aktivnosti tijekom dizajniranja i
teško ga je transformirati u računalne koncepte. Dizajniranje se može razmatrati kao potraga
Ervin Bešić : PRIMJENA GENETSKIH ALGORITAMA U BRODOGRAĐEVNOJ INDUSTRIJI
7
(u tehničkom kontekstu) za prikladnim ili optimalnim konstrukcijskim rješenjima. Analizom
pretraživanja možemo identificirati tri cjeline ove aktivnosti, to su: ciljani oblik, područje
pretraživanja i proces pretraživanja. Pri identifikaciji pristupa dizajniranju možemo istaknuti
tradicionalni i kreativni pristup dizajniranju. Tradicionalni dizajn obuhvaća usmjerenost
prema funkcionalnim zahtjevima i strukturi koja mora zadovoljiti postavljene zahtjeve. Ovaj
koncept dizajniranja moguće je uspješno implementirati u genetski algoritam sa stajališta
optimizacije traženog rješenja na osnovu postavljenih parametara. Kreativni dizajn teško je
opisati određenom definicijom, često je težište ovog pristupa usmjereno prema kreativnim
vještinama samog dizajnera. Dugo je prevladavalo mišljenje da se računala ne mogu
učinkovito koristiti s aspekta kreativnosti. Razvojem umjetne inteligencije to se mišljenje
mijenja i do izražaja dolaze koncepti evolucijskih sustava računalne podrške dizajniranju. U
osnovi ovog koncepta parametri ne predstavljaju rješenja, već komponente od kojih je rješenje
izgrađeno. Reprezentacija je sastavljena od niza pravila prema kojima se vrši konstrukcija
rješenja. Ovaj pristup je još uvijek predmet istraživanja s velikim potencijalima primjene u
budućnosti ne samo na području dizajniranja već šireg spektra korištenja umjetne
inteligencije. Primjena GA (genetic algorithm-genetski algoritam) je široko prihvaćena u
primjeni na mnogim područjima inženjerskog dizajna, za potrebe ovog rada opisane su
sljedeće mogućnosti primjene: konceptualni dizajn, optimizacija konstrukcijskih formi,
usklađivanje specifikacijskih podataka, povratni inženjering, dizajn mehanizma. Konceptualni
ili idejni dizajn predstavlja ranu fazu dizajniranja i često zahtjeva kreativni pristup prema
kojem dizajner koristi nove komponente ili kombinira poznate komponente na novi način.
Parametri koji se optimiziraju u ovoj fazi imaju utjecaj na cjelokupni dizajnerski projekt.
Određena metodologija koja bi usmjerila dizajnera prema razvoju kvalitetnog konceptualnog
rješenja nije prisutna ali postoje preporuke u poštivanju određenih načela. Razvoj
konceptualnog dizajna potrebno je obuhvatiti s četiri osnovne komponente: problem rješenja
(dizajnerski izazov), osobom koja je odgovorna za rješenje (dizajner), dizajnersko rješenje
(jedno ili više), alternativno rješenje (dizajn konkurencije). Ove komponente su bitne sa
stajalište primjene GA, omogućuju identifikaciju donje granice prostora mogućih rješenja
prilikom izvođenja selektiranja. Osnovna karakteristika tehnički objekata je definicija njihove
forme. Forma direktno utječe na definiranje funkcionalnih zahtjeva i troškove proizvodnje.
Upravo primarnu aktivnost inženjerstva predstavlja razvoj novih i optimizacija postojećih
formi proizvoda. Forme je moguće opisivati kroz razne oblike reprezentacije: skalare,
Ervin Bešić : PRIMJENA GENETSKIH ALGORITAMA U BRODOGRAĐEVNOJ INDUSTRIJI
8
vektore, pixele, voxele. Sa stajališta GA optimizacije bitno je utvrditi optimalnu vrijednost
ciljanog parametra na osnovu kojeg se stvaraju uvjeti (tehnički, ekonomski, estetski) za
izvršavanje procesa selekcije. Usklađivanje geometrijskih oblika krivulja ili vektorskih
sučelja s velikom količinom digitalnih podataka predstavlja ključnu ulogu u rekonstrukciji
geometrijskih modela realnih fizičkih objekata. GA je moguće primijeniti u funkciji odvajanja
pod skupova podataka koji pripadaju određenim geometrijskim elementima i utvrđivanju
tipova parametara izdvojenih elemenata. Prilikom izvođenja ovog procesa najčešće se koriste
metode triangulacija i određivanja susjednih relacija elemenata (Renner, Eka´rt, 2003.,709–
726).
2.2. Perspektiva informatizacije
Činjenica je da brodograđevna industrija često zaostaje u implementaciji novih
tehnologija u odnosu na druge industrije. Postoji mnoštvo razloga tome, jedan od njih je
ograničenost programske i sklopovske podrške. Često potrebe složenih analiza i simulacija,
koje zahtjeva brodograđevna industrija nije moguće podržati s postojećim programskim
rješenjima i računalnom infrastrukturom. Ipak najčešće uzrok zaostajanja u primjeni novih
tehnologija proizlazi iz postojeće industrijske kulture (često nije dovoljno prepoznata
znanstvena komponenta) i raspoloživosti financijskih sredstava. U nastavku je opisano
nekoliko tehnoloških koncepata kao smjernice koja mogu utjecati na učinkovitiju primjenu
novih tehnologija u brodograđevnoj industriji.
2.2.1. Generička programska rješenja
Unutar brodograđevne industrije izražena je upotreba više različitih CAD sustava,
različitih proizvođača (npr.: CATIA, MATES, Autoship, PTC, MasterShip, Bentley itd.),
koja često međusobno nisu usklađena, te time direktno utječu na projektni razvoj.
Najčešće je slučaj da se radi o vendorima (proizvođači softvera) koji su ograničeni s
razvojnim budžetima, stoga ne nude mogućnosti implementacije naprednih tehnologija poput
laserskog skeniranja. S druge strane takvi proizvođači imaju prednost zbog prilagođenih
karakteristika softvera upravo za specifično područje brodogradnje. Stoga je potrebno pažljivo
Ervin Bešić : PRIMJENA GENETSKIH ALGORITAMA U BRODOGRAĐEVNOJ INDUSTRIJI
9
izvršiti selekciju razvojnog softvera koji obuhvaća oba aspekta. Najčešće takvi softveri
nastaju kao eksperimentalna rješenja velikih proizvođača koji omogućuju podršku u
automobilskoj i avionskoj industriji (npr.: ShipConstructor, Autodesk_Navisworks itd.).
Potrebno je istaknuti da investicija u softversko rješenje generalno kao cilj pretpostavlja
poboljšanje učinkovitosti i djelotvornosti poslovanja. Kao ključan faktor ovog investicijskog
procesa potrebno je spoznati važnost implementacije softverskog rješenja od strane glavnog
sponzora (investitora). Sami troškovi narudžbe softverskog rješenja su relativni u odnosu na
troškove njegove implementacije u poslovni sustav, koji su u konačnici puno viši ali i
relevantni za uspjeh kompletne investicije.
2.2.2. Računalna podrška
Distribuirana računalna podrška od strane specijaliziranih kompanija, koje nude uslugu
prema potrebama brodogradilišta, predstavljaju noviji koncept tzv. računala u oblaku, koji
bilježi trend velikog rasta i popularnosti. Osnovne prednosti ovog koncepta su neograničeni
kapacitet računalnih resursa s kojima je moguće raspolagati neovisno o vremenu korištenja.
Isto tako kao prednost se može istaknuti i korištenje programskih rješenja prema potrebi,
odnosno izbjegavaju se troškovi implementacije i nabave onih komponenti koje korisniku
nisu potrebne. Kao primjer uspješnog korištenja ovog koncepta može se uzeti izvođenje
složenih kalkulacija prilikom CFD analize. CFD analiza zahtjeva visoke troškove ulaganja u
novi softver i hardver za svaku novu seriju plovila. Primjenom novih tehnologija poput usluge
SaaS (Software as a service – tip usluga u računalnom oblaku) moguće je ovu analizu izvršiti
uz redukciju troškova nabave specijaliziranog programskog alata.
2.2.3. Paralelno računarstvo
Paralelno računarstvo predstavlja područje koje današnjim razvojem procesora
omogućuje rješavanje kompleksnih problema u brodograđevnoj industriji na brz i učinkovit
način. Upravo iz tog razloga potrebno je uskladiti nabavku novih programska rješenja (CAD-
CAM sustavi) s hardverskom podrškom, često imamo slučajeve gdje nisu učinkovito
iskorišteni procesorski resursi.
Ervin Bešić : PRIMJENA GENETSKIH ALGORITAMA U BRODOGRAĐEVNOJ INDUSTRIJI
10
2.2.4. Umjetna inteligencija
Ovo znanstveno područje sve više se profilira u industrijskoj primjeni, stoga postaje
nezaobilazan faktor razvoja konkurentnosti u brodograđevnoj industriji. Grane UI-a poput
neuronskih mreža i evolucijskih algoritama sve više se koriste u naprednim brodogradilištima
pri optimizaciji proizvodnih procesa i korištenju automatiziranih sustava. Jedan od primjera je
i korejska brodograđevna industrija Daewoo Shipbuilding Company koja uz primjenu
naprednih grana umjetne inteligencije razvila računalno integrirani sustav planiranja
proizvodnje. Tema ovog rada upravo obuhvaća jednu od grana znanstvenog područja koje
istražuje umjetnu inteligenciju.
2.2.5. Virtualna proizvodnja
Proces izgradnje složenih plovila prolazi kroz više proizvodnih faza. Proces započinje
izradom studije izvodljivosti i analizom zahtjeva, zatim prolazi fazu dizajniranja i
proizvodnje, u konačnici završava primopredajom kupcu. Tradicionalni proces brodogradnje
obuhvaća primjenu više modela samog brodograđevnog procesa, ovisno o području primjene.
Modeli mogu obuhvaćati dizajnersku ili tehnološku perspektivu ali za funkciju imaju
dekompoziciju problema na manje problemske domene, kojim se rješava problem
kompleksnosti. Dolazi se do spoznaje da je za brodogradilišta je neophodno da se osigura
integracija tih modela prije nego oni ostvare fizičku implementaciju, a s ciljem učinkovite
kontrole troškova, vremena i kvalitete proizvodnje. Osnovni problem u ostvarivanju
integracije predstavlja prikupljanje dinamičkih podataka tijekom izvođenja procesa.
Koncept virtualne proizvodnje VM (virtual manufacturing – virtualna proizvodnja),
pretpostavlja simulaciju proizvodnje u računalnom okruženju. U osnovi je riječ o korištenju
modela sustava i prilagodba ključnih parametara u izvršavanju virtualnih procesa. Cilj
primjene ovog koncepta je kroz simulacija kompletnog proizvodnog procesa ostvariti najviši
mogući stupanj učinkovitosti i produktivnosti poslovanja (Akala, et al., 2008., 139-162).
Ervin Bešić : PRIMJENA GENETSKIH ALGORITAMA U BRODOGRAĐEVNOJ INDUSTRIJI
11
Osnovne klasifikacije VM-a se identificiraju kao:
• Dizajnu orijentiran VM - podrška dizajnerima produkta u dizajnerskoj fazi.
• Proizvodnji orijentiran VM - podrška u planiranju i optimizaciji proizvodnje,
uključuje i primjenu alternativnih rješenja u radnim pogonima i procesnim linijama.
• Kontroli orijentiran VM – uključuje računalno kontrolirane simulacije koje za cilj
imaju optimizaciju tekućih procesa u proizvodnji.
VMS (virtual manufacturing in shipbuilding-virtualna proizvodnja u brodogradnji)
predstavlja osnovnu platformu svim poslovnim aktivnostima u brodograđevnoj industriji, u
smislu informacijske realizacije kroz produkcijski model podataka. VMS pretpostavlja
integrirano proizvodno okruženje koje podržava sve razine odlučivanja i kontrole u različitim
produkcijskim procesima unutar brodogradilišta (Slika 1.) Osnovne karakteristike mogu se
sintetizirati kao: direktno uključivanje zaposlenika u optimizaciju procesa, participacija
ekspertnog sustava, identifikacija i rješavanje problema u virtualnom okruženju, integracija
više rješenja i omogućavanje realne simulacije ciljanog procesa.
Slika 1. Komponente virtualnog proizvodnog okruženja
Izvor: autor
Produkcija
Financije
Dizajn Materijal
Planiranje Projekt/
koncept
Ervin Bešić : PRIMJENA GENETSKIH ALGORITAMA U BRODOGRAĐEVNOJ INDUSTRIJI
12
Osnovna arhitektura VMS-a sadrži sljedeće komponente:
� Opću bazu podataka: pretpostavlja robusnu informacijsku infrastrukturu koja je
sposobna ostvariti cjelovitu podršku kompleksnim zahtjevima VM-a, istraživanja su
pokazala da najbolje performanse za ovaj tip podatkovne podrške iskazuju objektno
orijentirane baze podataka.
� Virtualni industrijski okruženje: predstavlja statičnu perspektivu produkcijskog
sustava, odnosno temeljne varijable proizvodnih kapaciteta koje predstavljaju
strukturu industrijskog sustava.
� Virtualni model resursa: predstavlja dinamičku komponentu VM sustava čija uloga
obuhvaća prezentaciju dinamičkih podataka koji se generiraju tijekom proizvodnog
procesa.
� Model prototipa: definira se kao računalno bazirana simulacija sustava i pod sustava
koju je moguće komparativno koristiti u analizi realnog fizičkog prototipa.
� Virtualni model produkta: predstavlja najviši nivo VM-a koji je ujedno i osnovni
predmet daljnjih istraživanja.
Ervin Bešić : PRIMJENA GENETSKIH ALGORITAMA U BRODOGRAĐEVNOJ INDUSTRIJI
13
3. Genetski algoritam
Genetski algoritam predstavlja heurističku metodu optimizacije baziranu na ideji
prirodne selekcije i genetskih procesa. Genetski algoritam se klasificira pod evolucijskim
algoritmima odnosno području znanosti koje istražuje umjetnu inteligenciju. Sama paradigma
GA je proizašla iz Darwinove teorije o evoluciji, odnosno preživljavanju najboljih jedinki.
Prvi GA je razvijen 70-tih godina od strane John Hollanda ( University of Michigen). Ideja je
proizašla iz mogućnosti korištenja krucijalnog prirodnog procesa u računalnoj primjeni. GA
slučajnim pretraživanjem određenog prostora koristi povijesne informacije s ciljem
dobivanja najboljih svojstava jedinke unutar populacije. Popularnost genetskog algoritma sve
je više u porastu, sve je više znanstvenika i praktičara uključeno u razvoj i primjenu raznih
modela genetskih algoritama. Ključnu ulogu razvoja popularnosti ovog koncepta igra visoka
učinkovitost pri optimizaciji procesa u komercijalne i istraživačke svrhe.
Metaforički rečeno prirodna selekcija svakodnevno i svakog trenutka istražuje po
cijelome svijetu i najmanja varijacije; ona odbacuje loše, a održava i sumira one koje su
dobre; ono rad mirno i neprimjetno, kad god i gdje god se ukaže prilika, na usavršavanju
svakog organskog bića u odnosu na njegove organske i neorganske uvjete života (Darwin,
1859., 41).
3.1. Evolucijski algoritmi
Evolucijski algoritmi predstavljaju granu evolucijskog računalstva, koje predstavlja
polje znanosti o umjetnoj inteligenciji. Evolucijsko računalstvo objedinjuje nekoliko
računalnih tehnika, odnosno predstavlja paradigmu koja podržava optimizaciju i
pretraživanje, utemeljenu na konceptu prirodne evolucije. Evolucijski algoritmi uključuju
operacije poput: selekcije, kombinacije, slučajne varijacije i natjecanja. Fokus predstavlja
potraga za optimalnom jedinkom unutar populacije prihvatljivi rješenja zadanog problema.
Genetski algoritmi predstavljaju osnovnu paradigmu unutar evolucijskih algoritama. Oni
koriste simulaciju prirodne evolucije, kroz operacije: selekcije, križanja i mutacije
Ervin Bešić : PRIMJENA GENETSKIH ALGORITAMA U BRODOGRAĐEVNOJ INDUSTRIJI
14
3.2. Optimizacija
Optimizacija problema predstavlja potragu za rješenjima koja su bolja od ostalih. U
informatici predstavlja pretragu prostora koji sadrži moguća rješenja. Skup mogućih rješenja
predstavlja područje zadanog problema. Rješenja i dijelovi rješenja predstavljaju točke
pretraživanja prostoru navedenog područja. Matematički pristup pretpostavlja formulaciju
problema kroz matematički model koji koristi zadane funkcije u rješavanju problema,
odnosno generiraju se parametri koji vrše optimizaciju sustava. Optimizacija se određuje
unutar tri osnovna faktora:
1. Funkcija cilja
2. Skup nepoznanica ili varijabli koje utječu na funkciju cilja
3. Skup ograničenja koji dopuštaju varijablama pridruživanje točno određenih vrijednosti
Optimizacija kako je navedeno ima za cilj pronaći najbolje ili optimalno rješenje
problema ali postoji niz različitih problema koji se kategoriziraju prema razini složenosti.
Linearni problemi u svom rješenju pretpostavljaju jednostavnu linearnu funkciju ulaznih
podataka (npr. y=ax+b). Ako se u rješavanju problema koriste jednostavne aritmetičke
operacije indikaciju su da se radi o linearnoj relaciji između varijabli. Linearne probleme je
moguće jednostavno rješavati u računalnom okruženju, naročito primjenjujući Simplex
metodu. Ali većina problema u realnom svijetu ne može se opisati linearnim modelom.
Nelinearni problemi predstavljaju sve one probleme koji uključuju varijable koje ne ostvaruju
linearnu relaciju, odnosno ona nije proporcionalne prirode. U vrlo složene nelinearne
probleme klasificiraju se česti slučajevi kad je moguće dobiti više rješenja u složenom
okruženju. U takvim slučajevima najučinkovitije su primjene heurističkih metoda poput
genetskih algoritama (Goldeberg, 1989., 1-230).
Ervin Bešić : PRIMJENA GENETSKIH ALGORITAMA U BRODOGRAĐEVNOJ INDUSTRIJI
15
3.3. Struktura genetskog algoritma
Osnovni pojmovi koji se koriste unutar koncepta genetskih algoritama su sljedeći:
• Jedinka/individua: predstavlja potencijalno rješenje problema optimizacije.
• Fenotip: predstavlja osobine jedinke koje se mogu interpretirati na razini problema.
• Genotip: kodiranje fenotipa na gene.
• Kromosom / reprezentacija rješenja: predstavlja jedinku, sastoji se od linearno
povezanih gena.
• Gen.: dio reprezentacije rješenja.
• Lokus: pozicija gena u nizu koja je predefinirana.
• Populacija: skup rješenja.
• Dobrota (Fitness): kvaliteta rješenja.
• Operator križanja: predstavlja binarno usmjereno pretraživanje.
• Operator mutacije: predstavlja unarni operator pretraživanja.
• Reprodukcija: ponovna upotreba rješenja.
• Selekcija: operacija kojom se održavaju kvalitetna svojstva jedinke.
Rješavanje problema pomoću GA obuhvaća u početku definiranje odgovarajuće
reprezentacije i kvalitete rješenja. Reprezentacija je analogna konstrukciji kromosoma koji za
isti problem mogu predstavljati više verzija. One mogu varirati od jednostavnih do onih vrlo
složenih, međutim unatoč korištenju istih konstrukcijskih principa evolucijskog razvoja one
mogu u konačnici generirati vrlo različite rezultate. Uzrok uspješnosti reprezentacija usko je
povezana uz njihovu funkciju s operatorima, kojom se definira prostor pretraživanja mogućih
rješenja. Najčešće se koristi reprezentacija u formi stringa nepromjenjive duljine, iako su
moguće i složenije forme reprezentacija koje zahtijevaju rješenja složenijih problema. Nakon
definicije reprezentacije slijedi postavljanje kriterija izbora, koji obično obuhvaćaju
predefinirani broj ponavljanja, te ocjenjuju kad je dosegnuto prihvatljivo rješenje (Shema 1.).
Ervin Bešić : PRIMJENA GENETSKIH ALGORITAMA U BRODOGRAĐEVNOJ INDUSTRIJI
16
Izvor: autor
Hodogram jednostavnog pseudo-koda prikazanog opisan je kroz sljedeće korake:
1. Slučajni izbor inicijalne populacije x(0) = (x1, x2, x3, ........., xN), gdje je N početni
broj kromosoma.
2. Izračunati kvalitetu (fitness) F( x I) za svaki kromosom x I u ciljanoj populaciji X(t)
3. Kreirati nove kromosome X r(t) križanjem ciljanih (roditeljskih) kromosoma
primjenom mutacije i kombinacije.
4. Izbrisati određen broj kromosoma da bi se oslobodilo mjesto za nove (tzv. „umiranje
kromosoma“).
5. Izračunati kvalitetu novih kromosoma u populaciji X r(t).
6. Postaviti t= t + 1. Ako nije zadovoljen uvjet ići na korak 3, ako je zadovoljen
prekinuti petlju i izdvojiti najkvalitetniji kromosom. Prekid izvođenja petlje može
uzrokovati zadovoljenje uvjeta ili ograničenje brojem ponavljanja. Jedno ponavljanje
može generirati jednu reprodukciju.
Shema 1 Prikaz jednostavnog GA
Populacija
(kromosomi)
Križanje (roditelji)
Pod populacija
(potomstvo)
Objektivna
funkcija
Ervin Bešić : PRIMJENA GENETSKIH ALGORITAMA U BRODOGRAĐEVNOJ INDUSTRIJI
17
3.4. Genetski operatori
Unutar svake generacije genetski operatori se koriste za selekciju jedinke iz trenutne
populacije u svrhu kreiranja nove populacije. Postoje tri osnovna genetska operatora, a to su:
operator reprodukcije, križanja i mutacije. Reprodukcija se primjenjuje kada je potrebno
izvršiti jednostavno kopiranje bez ikakvih izmjena na izabranoj jedinki, odnosno omogućuje
preživljavanje zadovoljavajućim kvalitetnim rješenjima. Temeljni faktor izbora jedinke je
način izvođenja selekcije. Križanje se primjenjuje kada želimo kreirati novu jedinku (dijete)
od dva roditelja (jedinke) unutar prethodne populacije. Sam proces križanja obuhvaća
definiranje svojstava križanja. Ovisno o broju selektiranih svojstava klasificira se stupanj
složenosti operatora križanja. Često se prilikom ovih operacija koriste pojmovi točke prekida,
stabla i pod stabla. Ovi pojmovi se koriste prilikom definiranja nasljednih svojstava koje se
prenose na novu jedinku. U primjeni su najčešće dvije metode operacije križanja. Jedna je
uniformirano križanje u kojem se koristi definirani broj sekvenci između dva roditelja. U ovoj
metodi na nasljedne jedinke se raspoređuju sekvence u pravilnom omjeru. Nedostatak ove
metode je što se sporije dolazi do kvalitetnih rješenja . Prednost je što se otvara veći prostor
pretraživanja. Ovaj tip križanja se dosta primjenjuje u istraživačke svrhe. Druga metoda je
dvostruko križanje koje se realizira kroz podjelu roditeljskih kromosoma na dvije sekvence
korištenjem dvije točke križanja. Dvije točke križanja odabiru se slučajnim izborom i
njihovom kombinacijom nastaje nova nasljedna jedinka. Prednost ove metode je što je
usmjerena na proces križanja a ne kao prethodna na prostor pretrage i stoga je prihvatljivija u
praktičnoj primjeni. Mutacija se primjenjuje kad novu jedinku dobijemo modifikacijom
prethodno selektirane jedinke. Modifikacija se realizira izmjenom jednog ili više svojstava
reprezentativne jedinke, odnosno brisanjem ili dodavanjem dijelova reprezentacije. U
genetskim algoritmima mutacija se koristi u slučaju potrebe za određenim promjenama, u
pravilu se gotovo uvijek kombinira s operatorima križanja ili reprodukcije. Na različitim
stupnjevima evolucije mogu se koristiti različiti operatori mutacije. Prilagođavaju se prema
potrebama ciljane kvalitete traženog rješenja. Mutacija predstavlja unarnu operaciju, odnosno
odvija se na jednoj jedinki. Operatorom mutacije uvodi se nova karakteristika ili obnavlja
izgubljeno svojstvo jedinke. Selekcija je jedan od temeljnih procesa unutar genetskih
algoritama. Selekcija se bazira na kvaliteti, odnosno jedinke s odgovarajućim kvalitativnim
svojstvima imaju intenciju većeg broja odabira od jedinki s lošim kvalitativnim svojstvima.
Ervin Bešić : PRIMJENA GENETSKIH ALGORITAMA U BRODOGRAĐEVNOJ INDUSTRIJI
18
Ovom operacijom se izdvajaju dobra od loših rješenja. Kako postoji vjerojatnost da i loše
jedinke sadrže kvalitetne gene potrebno je omogućiti i njihovo razmnožavanje. Iz tog razloga
uvodi veća vjerojatnost razmnožavanja za kvalitetnije a manja vjerojatnost za lošije jedinke.
Postoji nekoliko tipova selekcije koje imaju podjednako izraženu uporabu, ovisno o
slučajevima primjene. Selekcija je proces koji ključan u smislu definiranja prostora
pretraživanja (Holland, 1975.). Selekcija se može kategorizirati u dvije osnovne kategorije,
proporcionalna selekcija i rangirajuća selekcija (Slika 2.).
Izvor: autor
3.4.1. Koeficijent križanja i mutacije
Utvrđivanje potrebe za računalnim resursima sa stajališta vremena obrade i korištenja
memorijskog prostora, predstavlja jedan od složenijih problema u primjeni optimizacijskih
algoritama. Ovaj problem se iskazuje kroz procjenu vremena potrebnim za traženjem novog
prostora mogućih rješenja i količini vremena potrebnoj za podešavanje već prihvatljivi jedinki
rješenja. U slučaju da je koeficijent mutacije jednak jedan, genetski algoritam predstavlja
pretragu rješenja slučajnim odabirom. U slučaju da je koeficijent bliži nuli to je veća
mogućnost da će algoritam završiti u lokalnom optimumu. Veliku ulogu u učinkovitosti
genetskih algoritama igra njihova sposobnost da prenesu parametre omjera navedenih
procjena kroz sve generacije, te tako obuhvate šire područje populacije. Operatori križanja i
mutacije direktno utječu na područje pretrage. Mijenjajući koeficijente križanja i mutacije
kroz proces optimizacije moguće je usmjeriti resurse na prioritetna područja.
Slika 2 Kategorizacija operatora selekcije
Ervin Bešić : PRIMJENA GENETSKIH ALGORITAMA U BRODOGRAĐEVNOJ INDUSTRIJI
19
3.5. Kvaliteta jedinke
Mogućnost opstanka bilo koje jedinke određena je njezinom kvalitetom, izvrsnošću.
U pravilu evolucija kvalitete direktno ovisi o kvalitativnim zahtjevima, odnosno definiranjem
funkcije cilja mora se jasno izraziti zahtijevana kvaliteta traženog rješenja. Postavljanje
funkcije cilja moguće je izvesti na nekoliko načina koje nalazimo u primjeni. Definiranjem
funkcije cilja i implementacija funkcije u genetski algoritam. Prilikom evaluacije jedinke
koristi se funkcija cilja u računalnoj obradi jedinke. Kada se evaluacija kvalitete izvršava u
odvojenoj računalnoj analizi dolazi do vremenskih usporavanja obrade zahtjeva i cjelokupnog
optimizacijskog procesa. U slučajevima kad funkcija cilja nije eksplicitno postavljena,
moguće je da osoba koja provodi evaluaciju kvalitete sama odredi kvalitativne zahtjeve s
aspekta slučaja uporabe. Kvalitativni zahtjevi mogu biti postavljeni koristeći metodu
komparacije jedinki iz promatrane populacije. Točnije, ako je strategija rješenja šira od
promatrane populacije vrši se usporedba s mogućim rješenjima.
3.6. Kategorizacija genetskih algoritama
Područje primjene genetskih algoritama je vrlo široko. Zbog svojih karakteristika,
genetski algoritmi se mogu implementirati u rješavanju problema koji zahtijevaju točnost u
pretraživanju višedimenzionalnog prostora rješenja. Problematika primjene može obuhvaćati
različita područja poput robotske tehnologije, rješavanja ekonomskih problema, digitalna
obrada signala, optimizaciju tehnoloških procesa i mnoštvo drugih. Potrebno je istaknuti
mogućnosti primjene genetskih algoritama u kombinaciji s klasičnim optimizacijskim
algoritmima ili naprednim konceptima (neuronske mreže). Izvođenje je često koncipirano po
ad hoc principu gdje se prema točno utvrđenom procesnom slijedu potrebno uključiti
algoritme koji sudjeluju u rješavanju određenih problema. Međutim postoje i nedostaci u
njihovoj primjeni u optimizacijskim procesima. Često su povezani s dugotrajnošću izvođenja,
opterećenjem procesora ili prekidom izvođenja zbog približavanja neprihvatljivim lokalnim
optimizacijskim vrijednostima. Uočavanjem navedenih nedostataka javila se potreba za
optimizacijom samih genetskih algoritama, te na temelju znanstvenih istraživanja nastaju
napredne verzije učinkovitijih GA. Danas je zastupljena u primjeni još jedna grana
Ervin Bešić : PRIMJENA GENETSKIH ALGORITAMA U BRODOGRAĐEVNOJ INDUSTRIJI
20
evolucijskog računalstva, a to je genetičko programiranje. Principi rada su vrlo slični
genetskim algoritmima. Genetski algoritmi su također pogodni za paralelnu obradu podataka,
što omogućava implementaciju na višeprocesorskim sustavima. U nastavku su navedene neke
od vrsta GA koji se koriste u različitim područjima primjene. Izbor tipa genetskog algoritma
isključivo je ovisna o tipu problema koji se obrađuje. Koncept višekriterijskog GA temelji se
na zadovoljavanju cilja optimizacije, tako da se optimizira vektorska funkcija koja sadrži
elemente definirane kao zahtijevane funkcije cilja. Funkcije cilja su najčešće u međusobnom
konfliktu tako da se konačno rješenje pronalazi u odnosu na optimalnu (najbližu) vrijednost
funkcije cilja, relativnu prema svim procesuiranim varijablama. Često se kao optimizacijska
funkcija kod ovog GA koristi agregat s više elemenata funkcije integriranih u jednu
agregatnu funkciju. Paralelni genetski algoritam predstavlja kategoriju koja se koristi za
rješavanje problema ubrzavanja vremena izvođenja algoritma i obrade rješenja prilikom
realizacije složenih problema. Paralelizam se kod genetskih algoritama postiže na nekoliko
načina. Jednostavniji pristup je master-slave koncept prema kojem glavni (master) procesor
pohranjuje pojedinu populaciju, dok uslužni procesor (slave) vrši obradu jedinki primjenom
mutacije ili križanja. U ovom slučaju konačni rezultat je isti kao kod sekvencijalnog GA.
Drugi pristup obuhvaća obradu više pod populacija. Ovdje se jedinke konkuriraju
unutar pod populacija. Rezultat ovog pristupa je kvalitetniji iz razlogu istovremene
komparacije većeg broja jedinki. Postoji još nekoliko pristupa u paralelnoj obradi koji će
zasad biti samo navedeni, kao sljedeći: migracijski pristup, pristup injekcijskog otoka, pristup
grubih zrna ili distribuirani pristup, pristup višestrukog preklapanja pod populacija, pristup
korištenjem dinamičkih pod populacija i pristup korištenjem hibridnih metoda(Renner, Eka´rt,
2003.,713–715).
Ervin Bešić : PRIMJENA GENETSKIH ALGORITAMA U BRODOGRAĐEVNOJ INDUSTRIJI
21
4. Primjena u brodogradnji
Trendovi sve prisutne globalizacije dramatično mijenjaju tržišne strategije i zahtijevaju
brzu prilagodbu primjenom inovativnih tehnologija i znanstvenih resursa u svim segmentima
proizvodnje. Danas kupca definira tržište koje najčešće i uvjetuje konačnu cijenu produkta.
Proizvodnja često balansira između unutarnjih i vanjskih metrika produktivnosti. U novije
vrijeme cilja se migracija s lokalne na globalnu optimizaciju koja za svrhu ima što kvalitetnije
zadovoljavanje zahtjeva kupca uključujući ga direktno u životni ciklus proizvoda. U
brodogradnji koja je specifična sa stajališta poslovnih procesa koji se odvijaju u izgradnji
broda kupac je od početka uključen u cjelokupni nadzor kvalitete produkta (broda) koji
kupuje. Stoga brodogradilištima predstavlja problem postizanje ravnoteže između
zadovoljenja zahtjeva brodovlasnika i postizanja planiranih kalkulacija učinkovitosti.
Organizacija i planiranje proizvodnje su ključni u zadovoljenju tih zahtjeva. Organizacijska
struktura bi trebala osigurati što učinkovitiji proces planiranja i njegove primjene na glavne
procese proizvodnje. Većina brodogradilišta primjenjuje matričnu strukturu u organizaciji
poslovanja (Slika 3.).
Izvor: autor
Slika 3 Problem matrične organizacije
Ervin Bešić : PRIMJENA GENETSKIH ALGORITAMA U BRODOGRAĐEVNOJ INDUSTRIJI
22
Matrična struktura podrazumijeva kombiniranje projektnih s produkcijskim ciljevima,
upravo tu dolazi do čestih konflikata interesa u identifikacije prioriteta poslovanja. U
produkcijskoj organizaciji odluke rukovodstva su usmjerene optimalnom iskorištavanju
kapaciteta. U projektnoj organizaciji se odluke fokusiraju na završetak projekta u planiranom
vremenu i budžetu. Stoga se sve više kao alternativa postavljaju koncepti optimizacije koji
mogu omogućiti fleksibilnu i kontinuirano prilagođenu optimizaciju plana proizvodnje s
ciljem ostvarivanja postavljeni zahtjeva. U paralelnoj realizaciji više projekata konflikti su
učestaliji i kompleksniji. U određenim slučajevima moguće su manipulacije od strane
voditelja projekta sa ciljem ostvarivanja individualnih interesa koji mogu bitni
kontraproduktivni prema poslovnim ciljevima u široj perspektivi. Često je osnovni nedostatak
ovakvih tipova organizacije nepostojanje učinkovitog sustava koordinacije koji vrši
integraciju projekata i resursa te njihovu kontinuiranu kontrolu. Predmet ovog rada obrađuje
djelomično koncept virtualne proizvodnje. Koncept virtualne proizvodnje kroz uspješnu
implementaciju potencijalno omogućuje rješenje integracije problemskih područja u
realizaciji plana proizvodnje brodograđevne industrije.
4.1.Snimka stanja proizvodnje u Brodogradilištu d.d.
Brodogradilište d.d. funkcionira na rigidnom matričnom tipu organizacije što potencira
negativne implikacije za opstanak na modernom konkurentom tržištu. Potrebno je izvršiti
prilagođenu transformaciju na fleksibilni tip organizacije i razvoj provoditi kroz kohezivan
timski rad. Zbog slabe konkurentnosti Brodogradilište je usmjereno na tržišne niše koje
zahtijevaju razvoj prototipova plovila a izgledna je diversifikacija kao kompenzacija u
iskorištavanju kapaciteta proizvodnje. Sam razvoj prototipova produkta zahtjeva visoki
stupanj prilagodljivosti i kontrole u svim segmentima razvoja stoga je vidljiva potreba za
uvođenjem novih informacijskih tehnologija koje mogu podržati protok informacija na brz i
učinkovit način kroz veliki sustav kao što je Brodogradilište d.d.. Kao jedno od potencijalnih
rješenja razmatra se implementacija sustava virtualne proizvodnje kroz koji se namjerava
postići integralnost cjelokupnog procesa izgradnje broda. Integracijom kroz virtualnu
proizvodnju se namjerava jasnije definirati sustav odgovornosti za sve segmente aktivnosti na
projektima.
Ervin Bešić : PRIMJENA GENETSKIH ALGORITAMA U BRODOGRAĐEVNOJ INDUSTRIJI
23
Hodogramom planiranja (Slika 4.) definiran je tok procesa planiranja proizvodnje.
Vrijeme glavnog proizvodnog intervala utvrđuje se prema preostalim aktivnostima. U
postojećem procesu planiranja, vremenom i kapacitetima se upravlja nezavisno i izolirano.
Planer je usmjeren na dostizanje pojedinih faza poput porinuća, datuma isporuke itd.. Tek u
sljedećem koraku se uključuje raspoloživost kapaciteta. Planiranje kapacitete nije primarno i
nedovoljno je usklađeno s planom proizvodnje.
Izvor: autor
Neusklađeno planiranje vremena i kapaciteta za posljedicu ima nepouzdane i
neučinkovite rezultate planiranja. Osnovi nedostatak ovog pristupa planiranju je to što se
nedovoljno analiziraju ograničenja u izvođenju aktivnosti poglavito ograničenja kapaciteta.
Zato dolazi u većini projekata do dodatnih troškova i generiranja dubioza u ukupnom
poslovanju. Izvršen je prikaz slučaja negativnih implikacija vremenski utvrđenog plana
aktivnosti. U planiranju se često koristi metoda kritičnog puta CPM (critical path method –
metoda kritičnog puta) koja kao bitan segment ne uzima konačan kapacitet resursa, te
implicira nepouzdane rezultate planiranja u slučaju neraspoloživosti određenog kapaciteta
resursa. Razmatran je slučaj opremanja određenog mikro prostora na brodu koji je podijeljen
na dva sustava s kojim se oprema (Tablica 1.).
Slika 4 Hodogram procesa planiranja proizvodnje
Aktivnost
Utvrđivanje
trajanja
intervala
proizvodnje
Preostale
aktivnost
Planiranje
aktivnosti
prema
vremenu
Plan
Provjera
raspoloživosti
kapaciteta
Ervin Bešić : PRIMJENA GENETSKIH ALGORITAMA U BRODOGRAĐEVNOJ INDUSTRIJI
24
Aktivnost Opis Trajanje
(u danima)
Normativ
aktivnosti
(sati)
1 Montaža sustava1 5 250
2 Montaža sustava2 7 350
3 Instalacija sustava1 2 100
4 Instalacija sustava2 2 100
5 Testiranje sustava1 3 150
6 Testiranje sustava2 1 50
7 Primopredaja mikro prostora 1 50
Izvor: autor
U modelu mrežnog plana aktivnosti su predstavljene čvorovima (Slika 5.). Početni (P) i
završni (K) čvor predstavljaju početak i kraj aktivnosti. Pored čvorova su označeni vremenski
parametri trajanja pojedine aktivnosti. Operativni timovi izvode navedene aktivnosti
opremanja. Svaki tim sačinjen je od osam djelatnika, svaki djelatnik ostvari osam radnih sati
po danu. Zbog pauze za objed ukupni raspoloživi radni kapacitet po timu je 60 radnih sati po
danu. Ako gledamo konačni kapacitet tima, aktivnosti 1, 2 i 3 mogu istovremeno započeti sa
realizacijom.
Izvor: autor
Tablica 1. Analiza aktivnosti opremanja mikro prostora
Slika 5 CPM dijagram plana aktivnosti
S
2
1 3
4
5
6
7 K
Ervin Bešić : PRIMJENA GENETSKIH ALGORITAMA U BRODOGRAĐEVNOJ INDUSTRIJI
25
U praksi CPM tehnika se koristi za izračun najkraćeg vremena trajanja aktivnosti. U
planiranju se procjenjuje interval aktivnosti s obzirom na konačni kapacitet resursa. U
promatranom primjeru kalkulacija intervala iznosila bi 350/60=5.83 dana. Procijenjena dužina
trajanja aktivnosti je 7 dana. Aktivnosti 2, 4, 6 i 7 predstavljaju kritičan put mrežnog
dijagrama za kapacitet opremanja. Ako se doda ukupan kapacitet resursa dolazi se do podatka
da proizvodni interval opremanja potreban da bi proizvodni tim izvršio planirane aktivnosti
opremanja prelazi kalkulaciju vremena navedenog kritičnog puta u mrežnom dijagramu
Izvor: autor
Analizom optimalne organizacije plana aktivnosti za proizvodni tim (Grafikon 1.)
vidljivo je da i u slučaju realizacije planiranja pojedinog projekta opremanja mikro prostora
postoji neiskorištenost kapaciteta u planiranim vremenskim intervalima. Kao rezultat
primjene CPM tehnike u slučaju planiranja više paralelnih projekata koji pristupaju istim
resursima, odstupanja su još izraženija. Kapacitete resursa neophodno je planirati tako da se
poveća njihova iskorištenost tijekom svih procesa koji se odvijaju u proizvodnji.
Grafikon 1. Trend korištenja kapaciteta
Ervin Bešić : PRIMJENA GENETSKIH ALGORITAMA U BRODOGRAĐEVNOJ INDUSTRIJI
26
4.2. Formuliranje problema
Jedan od osnovnih ciljeva procesa planiranja je postići optimalnu duljinu trajanja
osnovnog procesa proizvodnje, odnosno učinkovito i djelotvorno uskladiti procese s
dostupnim kapacitetima. Potreba za informacijama koje proizlaze iz ovog procesa danas su
neophodne u primjeni. Naročito je ta potreba vidljiva u primjeni agilnog pristupa organizacije
proizvodnje i primjeni koncepta virtualne proizvodnje. Pretpostavka istraživanja je da
promatrano Brodogradilište d.d. ima uspješno implementiran sustav virtualne proizvodnje.
Takav sustav iziskuje veliku preciznost u definiranju parametara koji ulaze u razvoj modela
proizvodnje. Kontinuirano je potrebno za svaki novi projekt izračunati optimalni interval
trajanja proizvodnog procesa.
Koncept virtualne proizvodnje uključuje postojanje softverske platforme koja je
sposobna izvršiti integraciju procesa koji sudjeluju u aktivnostima proizvodnje broda.
Smjernice ovog pristupa promoviraju integraciju svih dostupnih resursa s ciljem optimalne
valorizacije atributa prilikom definicije modela projekta i produkta. Pretpostavka mogućeg
sustava virtualne proizvodnje u Brodogradilištu d.d. obuhvaća arhitekturu sastavljenu od šest
modula: tehnološko/dizajnerski modul, modul planiranja procesa, modul planiranja nabave,
modul procjene izvodljivosti i procjene troškova, modul planiranja prioriteta i upravljački
modul. Svaki modul posjeduje dodijeljena prava i uloge. Upravljački modul posjeduje prava
najviše razine koja mu omogućavaju dodjeljivanje prava ostalim modulima. Modul planiranja
prioriteta je direktno povezan s implementacijom genetskog algoritma , stoga se nameće kao
predmet daljnjeg razmatranja. Modul planiranja prioriteta u kontekstu primjene predstavlja
reprezentaciju problema poznatog kao JSSP (Job Shop Scheduling Problem – problem
organizacije poslova u proizvodnom pogonu) ili problem organizacije poslova u proizvodnom
pogonu. Problem je definiran mogućnostima alokacije kapaciteta za izvršavanje zadanih
radnih zadataka u određenom intervalu vremena. Organizacijska jedinica pod oznakom T
može predstavljati jedan od kapaciteta i prvi od objekata optimizacije. Radni nalog pod
oznakom Rn predstavlja drugi objekt koji sudjeluje u optimizaciji. U definiciji JSSP problema
ova dva objekta predstavljaju problem prema kojem konačni skup Rn sastavljen od N
operacija (radnih zadataka) treba biti izvršen od strane svakog radnog tima T. Svaki radni
Ervin Bešić : PRIMJENA GENETSKIH ALGORITAMA U BRODOGRAĐEVNOJ INDUSTRIJI
27
nalog sadrži niz operacija. Svaka operacija zahtjeva određeni interval vremena potrebno za
izvršenje operacije. Svaka operacija zahtjeva obradu od točno određenog kapaciteta, u ovom
slučaju radne jedinice. Ideja ovog rada je razmotriti mogućnost primjene genetskog algoritma
u optimizaciji plana aktivnosti prema dostupnim kapacitetima s ciljem skraćivanja trajanja
vremenskog intervala proizvodnje i učinkovitog korištenja kapaciteta.
Dekompozicija radnih zadataka u sekvence se izvodi u svrhu utvrđivanja vremenskog
slijeda izvršenja operacija u odnosu na alokaciju dostupnih kapaciteta. Svaka operacija mora
biti raspoređena tako da ne ulazi u konflikt s drugim radnim nalozima odnosno pripadajućim
operacijama. Proces dekompozicije proizvodnih poslova u sekvence definira se kao proces
optimizacije i kao takav ima značajan utjecaj na učinkovitost i proizvodnost proizvodnog
okruženja. Proces rasporeda proizvodnih poslova u odnosu na dostupne kapacitete klasificira
se kao NP-potpun problem, odnosno nemoguće je pronaći optimalno rješenje bez korištenja
testnog algoritma koji može u polinomnom vremenu testirati rješenje zadanog algoritma.
Dekompozicija proizvodnih poslova u sekvence pripada u red složenijih proizvodnih
problema.
4.2.1. Model problema
Realizacija genetskog algoritama se može opisati kao računalna simulacija u kojoj
moguća izvesti prihvatljivo rješenja određenog problema. Ona kroz selekciju i reprodukciju,
ovisno o ciljanim vrijednostima, rezultiraju definiranim skupom rješenja prihvatljivim za
daljnje korištenje u svrhu kreiranja optimalnog procesa. Uspjeh učinkovite primjene
genetskog algoritma je direktno povezan sa sposobnošću izrade modela koja predstavlja
apstraktnu okolinu u kojoj se izvodi pretraga uz primjenu odgovarajućih operatora. S ciljem
povećanja učinkovitosti nekog sustava prvo moramo razumjeti kako se on ponaša. U slučaju
dekompozicije proizvodnih zadataka u sekvence najbolja rješenja se mogu dobiti primjenom
metode pokušaja i pogrešaka iz razloga visoke složenosti samog problema. Upravo tu je
moguće uvidjeti prednosti pretraživanja prostora rješenja primjenom genetskog algoritma.
Genetski algoritam obuhvaća iterativnu proceduru koja vrši obradu određene populacije
definirane veličine. Iteracije se uobičajeno prekidaju pronalaženjem rješenja ili dostizanjem
Ervin Bešić : PRIMJENA GENETSKIH ALGORITAMA U BRODOGRAĐEVNOJ INDUSTRIJI
28
maksimalnog broja generacija. Matematičkim pristupom može se opisati da za vrijeme
iteracije t, GA obrađuje populaciju P(t) skupa mogućih rješenja xt
1... x
t
R, gdje R označava
konstantnu veličinu populacije. Svako od mogućih rješenja xt
i prolazi evaluaciju funkcijom
F( xt
i) kojom se vrši mjerenje kvalitete izvedenog jedinke rješenja. Kvaliteta rješenja
određuje sposobnost opstanka jedinke i mogućnost produkcije izvedene jedinke u sljedećoj
generaciji. U t+1 iteraciji populacija se izvodi na osnovu genetskih operacija selekcije,
križanja i mutacije.
Proizvodni pogon raspolaže s pet proizvodnih jedinica koje predstavljaju kapacitete.
Kapacitet izvodi točno određene operacije unutar proizvodnog okruženja. Model obrađuje pet
radnih naloga koje su sastavljene od točno određenih operacija. Svaka operacija ima točno
definirano vrijeme potrebno za izvršenje. Pretpostavke za realizaciju modela su sljedeće:
� Favoriziranje radnih naloga nije dozvoljeno.
� Svi nalozi su istodobno dostupni za početak obrade.
� Sve operacije su definirane zahtjevom prema kapacitetu i vremenom
realizacije.
� Nakon završetka operacije vrši se prelazak na sljedeći kapacitet, vrijeme
prelaska se uvrštava u vrijeme realizacije.
� Vrijeme početka realizacije nije ovisno o sekvenci i ne uvrštava se u vrijeme
realizacije.
U promatranom problemu geni svakog kromosoma predstavljaju fenotip rješenja
optimizacije unutar definirane populacije (Slika 6.).
Izvor: autor
Slika 6 Fenotip jedinke
1-1-1
operacija- radni nalog-indeks kapaciteta
2-1-1 3-1-1 1-1-2 2-1-2 3-1-2
Ervin Bešić : PRIMJENA GENETSKIH ALGORITAMA U BRODOGRAĐEVNOJ INDUSTRIJI
29
Svaki radni nalog je strukturiran od niza operacija koje izvodi proizvodni kapacitet
specijaliziran za određene operacije. Niz aktivnosti se utvrđuje procesnim planom koji se još
naziva tehnologijom toka proizvodnje. Svaka operacija definiran je vremenom početka
realizacije Vp i vremenom završetka realizacije operacije Vz. Procesno vrijeme realizacije
operacije predstavlja sumu navedenih vremena: Po=Vp+Vz.
Jedinka rješenja (kromosom) predstavlja pet radnih naloga od kojih svaka sadržava pet
operacija (sekvenci) i pet kapaciteta koji su alocirani za izvođenje točno određenih operacija.
Reprezentacija rješenja je izvršena tako da prvih dvadeset i pet gena predstavlja relaciju
radnog naloga s pripadajućom operacijom i alokacijom kapaciteta. Prikazani su ulazni podaci
problema koji obrađuje kroz opisani model (Tablica 2.)
Ervin Bešić : PRIMJENA GENETSKIH ALGORITAMA U BRODOGRAĐEVNOJ INDUSTRIJI
30
Šifra
proizvodne
operacije
Alokacija
radnog
naloga
Alokacija
kapaciteta
Vrijeme
realizacije
operacije (h)
Reprezentacija
rješenja
(kromosom)
1 1 1 3 1-1-1
2 1 2 6 2-1-2
3 1 3 4 3-1-3
4 1 4 5 4-1-4
5 1 5 12 5-1-5
6 2 1 4 6-2-1
7 2 2 10 7-2-2
8 2 3 23 8-2-3
9 2 4 2 9-2-4
10 2 5 15 10-2-5
11 3 1 6 11-3-1
12 3 2 3 12-3-2
13 3 3 3 13-3-3
14 3 4 34 14-3-4
15 3 5 12 15-3-5
16 4 1 4 16-4-1
17 4 2 6 17-4-2
18 4 3 5 18-4-3
19 4 4 6 19-4-4
20 4 5 12 20-4-5
21 5 1 2 21-5-1
22 5 2 4 22-5-2
23 5 3 12 23-5-3
24 5 4 15 24-5-4
25 5 5 9 25-5-5
Izvor: autor
Tablica 2. Analiza radnog naloga (kromosoma)
Ervin Bešić : PRIMJENA GENETSKIH ALGORITAMA U BRODOGRAĐEVNOJ INDUSTRIJI
31
4.3. Struktura algoritma
Izradom modela problema stvorena je osnova za definiranje ulaznih podataka koji se
obrađuju kroz genetski algoritam. Procedure obrade se odvijaju kroz procese inicijalizacije,
selekcije i primjenu reprodukcijskih operatora.
4.3.1. Inicijalizacija
Inicijalizacija se vrši neuniformiranim tipom generacije, odnosno slučajnim
generiranjem jedinki. U inicijalnoj populaciji se nalaze jedinke koje predstavljaju kandidate
za rješenja, tijekom svake iteracije one evoluiraju s izmijenjenim vrijednostima. Prvi
generirani kromosom (predstavlja pojedinačni radni nalog) definiran je slijednim
redoslijedom sekvenci aktivnosti (a,b,c) dok se drugi kromosom generira obrnutim
redoslijedom sekvenci (c,b,a). Ako je broj kromosoma veći od dva oni se generiraju u
algoritmu inicijalizacije (Shema 2.).
Generiranje preostalih kromosoma
{
Unesi slučajno generirani kromosom odabirom indeksa uz uvjet da je indeksa kromosoma
veći od dva a manji od veličine populacije;
{
Generiraj gen u području duljine kromosoma;
{
Selektiraj sve gene u navedenom području pod uvjetom da nisu redundantni;
}
Selektiraj kromosome pod uvjetom da se ne ponavljaju;
}
Ispiši rješenje;
}
Izvor : autor
Shema 2. Pseudokod algoritma inicijalizacije
Ervin Bešić : PRIMJENA GENETSKIH ALGORITAMA U BRODOGRAĐEVNOJ INDUSTRIJI
32
4.3.2 Evaluacija kvalitete
Evaluacija kvalitete svakog kromosoma se vrši supstitucijom vrijednosti varijabli u
funkciji cilja, a ujedno se vrši filtriranje dobrih od loših rješenja. Unutar modula planiranja
prioriteta moguće je definirati parametre funkcije cilja ovisno o zahtijevanim restrikcijama.
Funkcija cilja prihvaća kromosom kao ulazni parametar, zatim mjerenjem kvalitete generira
parametar koji je rezultat obrade. Evaluacija kvalitete predstavlja kritični proces unutar
genetskog algoritma. Funkcija cilja u ovom procesu treba utvrditi koja su loša a koja tražena
svojstva jedinke. U razmatranom slučaju funkciju cilja utvrđuje minimalno vrijeme praznog
hoda, odnosno optimalnu stopu korištenja kapaciteta. Za svaki kromosom se izračunava
vrijeme potrebno za izvršavanje obuhvaćeni operacija. Zatim se izračunava maksimalno
vrijeme realizacije radnih naloga.
Ova funkcija cilja se izvodi sljedećim hodogramom:
1. Uzima se vrijeme početka realizacije posljednje operacije Ov koja se izvršava od
strane radne jedinice (označava se Tvk).
2. Dodaje se procesno vrijeme realizacije posljednje operacije Pop i zbraja s prethodnim
vremenom obrade od strane kapaciteta, Tvk + Pop
Ova dva koraka se ponavljaju za sve kapacitete u kromosomu. Interval realizacije
proizvodnog procesa se izračunava prema formuli:
Pv = MAX [(Tvk1+ Pop1) , (Tvk2+ Pop2),..., (TvkM+ +PopM)].
Funkciju cilja mjerimo izrazom:
Fc=Min(Pv1, Pv2, Pv3,...., Pv_veličina populacije ).
Ervin Bešić : PRIMJENA GENETSKIH ALGORITAMA U BRODOGRAĐEVNOJ INDUSTRIJI
33
4.3.3. Selekcija
Selekcija kao proces izbora najboljih roditelja za cilj ima segregaciju kvalitetnih
kandidata. Operacija selekcije zasebno ne može generirati novog kandidata za rješenje, ali je
koristimo za odabir jedinki koji sudjeluju u kreiranju nove generacije. Preporuka je korištenja
binarne selekcije koja je pokazala bolje rezultate u istraživanjima i primjeni. Utvrđeno je da
ova vrsta selekcije pruža visoki stupanj usklađivanja, izbjegava se djelomična optimizacija, te
pruža jednostavniji pristup pri kodiranju u računalnom okruženju. U razmatranom problemu
koristi se rangirajući tip selekcije, shema 3.. Tako se postiže uravnotežena vjerojatnost
selekcije a ujedno smanjuje dominacija kvalitetnijih jedinki tijekom evolucijskog procesa.
Selekcija para kromosoma
{
Selektiraj prvi kromosom slučajnim odabirom indeksa unutar veličine populacije;
{
Selektiraj drugi kromosom slučajnim odabirom indeksa unutar veličine populacije
uz uvjet da nije jednak prvom;
{
Selektiraj kromosom koji je bliže uvjetu ispunjavanja kvalitete rješenja;
}
}
Ispiši rješenje;
}
Izvor: autor
Shema 3. Pseudokod selekcije
Ervin Bešić : PRIMJENA GENETSKIH ALGORITAMA U BRODOGRAĐEVNOJ INDUSTRIJI
34
4.3.4. Križanje
Operacija križanja se koristi kao reprodukcijski operator s ciljem definiranja nove
osnove za pretraživanje. Uzimaju se dvije jedinke klasificirane kao roditelji i selektirane kroz
dvostruki poziv selekcijskoj funkciji, zatim se kreira nova nasljedna jedinka koja je stvorena
kombinacijom sekvenci roditelja (Slika 7.).
Izvor:autor
Novo generirani kromosom ima velike izglede da je kvalitetniji od oba roditelja ako je
naslijedio najbolje karakteristike od svakog roditelja. Jednostavni model operatora križanja
izvodi se razmjenom sekvenci kromosoma roditelja, koje su određene slučajnim izborom
točke križanja. Na prethodnoj slici točka križanja je predstavljena vertikalnom linijom u retku
numeracije gena. Operator križanja predstavlja ključni element genetskog algoritma u smislu
metode koja omogućava evoluciju kvalitete kroz nove generacije. U primijenjenom
genetskom algoritmu korišten je tzv. PMX (Partially Mapped Crossover - djelomično
križanje) operator križanja koji se klasificira pod vrstu dvostrukih metoda križanja.
Implementacijom u genetskom algoritmu operator križanja se uključuje kad je potrebna
horizontalna razmjena redaka između dva različita kromosoma . Sekvence zadataka unutar
radnog naloga (kromosoma) razmjenjuju se između dva roditeljska rješenja. Svaki zadatak je
definiran u roditeljskom kromosomu. Operacija se izvršava tako da se slučajnim izborom
selektira broj sekvenci genoma i izvrši razmjena između dva rješenja, a zatim se generira nova
jedinka rješenja. Unutar PMX operatora postavljaju se dva stringa koja sadrže permutacijom
izvedene gene , zatim se definiraju dvije zajedničke točke križanja ( a i b) koje se postavljaju
Slika 7 Primjer operacije križanja između dvije jedinke
1 3 5 7 2 4 6
1 3 5 7 4 3 5
7 2 6 1 4 3 5
Ervin Bešić : PRIMJENA GENETSKIH ALGORITAMA U BRODOGRAĐEVNOJ INDUSTRIJI
35
slučajnim odabirom sekvence stringa. Sekcije ukazuju na dijelove koje će se koristiti u
operaciji razmjene (Slika 8.).
Izvor : autor
PMX operator nastavlja se izvoditi razmjenom gena. Prvo se mapira niz roditelja 2 u niz
roditelja 1. Geni s indeksima 6, 1, 4 zamjenjuju pozicije sa sekvencom genoma 1, 7, 3.
Istovjetno se mapira niz roditelja 1 u niz roditelja 2. Sada nastaje novi PMX operator s dva
križana stringa u kojima se pojavljuje redundancija gena (Slika 9).
Izvor: autor
Daljnja obrada dobivenih stringova slijedi tako da se zamjene redundantni geni u prvom
stringu s prvim redundantnim genom u drugom stringu. Na isti način se rješava problem
redundancije gena u drugom stringu (Slika 9.). PMX operator križanja u algoritmu koristi dva
niza roditelja r1 i r2, potomak je generirani kromosom (dijete), shema 4.. Varijabla t
predstavlja poziciju gena u nizu r1 koji ima jednaku vrijednost selektiranog gena u nizu r2.
Slika 8 Križanje roditeljskih kromosoma
Slika 9 PMX nizovi nakon križanja
7 2 1 7 3 3 5
6 5 6 1 4 4 2 Potomak 2
a b
Potomak 1
4 2 1 7 3 6 5 Potomak 1
3 5 6 1 4 7 2 Potomak 2
a b
7 2 6 1 4 3 5 Roditelj 1
6 5 1 7 3 4 2 Roditelj 2
a b
Ervin Bešić : PRIMJENA GENETSKIH ALGORITAMA U BRODOGRAĐEVNOJ INDUSTRIJI
36
PMX algoritam
{
Selektiraj Roditelja 1 i Roditelja 2 slučajnim odabirom.
Selektiraj dvije točke križanja slučajnim odabirom pod uvjetom da nisu preklopljene.
{
Zamjeni točke križanja.
}
Zamjeni sekvencu fenotipa Roditelja 1 i Roditelja 2. Pod uvjetom da nema redundancije.
{
Zamjeni redundantne gene.
}
Generiraj Potomak1 i Potomak2.
}
Izvor: autor
4.3.5. Mutacija
Mutacija je proces interne modifikacije genoma unutar kromosoma. Mutacijski
operatori obrađuju svaku novu jedinku ili kandidata rješenja koja je nastala kao rezultat
operacije križanja. Ova operacija ima veliki utjecaj pri dostizanju budućih rješenja u prostoru
pretrage. Mutacija se odvija modifikacijom slučajno odabranih jedinki rješenja s ciljem
produkcije boljih karakteristika modificirane jedinke. Mutacija se koristi izrazito u cilju
izbjegavanja lokalnih optimuma funkcija cilja koja je predmet optimizacije. Kroz primjenu
mutacije postiže se proširenje prostora pretraživanja za kvalitetnijim rješenjima. U slučaju
korištenja operatora mutacije prilikom obrade znakovnog niza (string) on se primjenjuje tako
da se vrši kombiniranje elemenata niza s definiranim koeficijentom vjerojatnosti. Obrada
operatorom mutacije se izvodi na svakom kromosomu potomka koji je generiran nakon
operacije križanja. Mutacija omogućuje kontinuiranu raznolikost jedinki po svojim
fenotipovima na globalnoj razini optimizacije. U konkretnom slučaju razmatraju se dva
pristupa izvođenja mutacije; mutacija dodjeljivanjem i mutacija zamjene.
Shema 4. Pseudokod PMX algoritma
Ervin Bešić : PRIMJENA GENETSKIH ALGORITAMA U BRODOGRAĐEVNOJ INDUSTRIJI
37
1) Mutacija dodjeljivanja; hodogram:
• Jedinka se slučajno izabere .
• Izvrši se dodjela novog gena na istu sekvencu fenotipa
2) Mutacija zamjene (Shema 5.).
Mutacija potomaka
{
Selektiraj dva gena za mutaciju unutar veličine kromosoma;
{
Zamjeni pozicije gena
}
Generiraj mutirani kromosom;
}
Izvor: autor
Nakon operacija mutacije potrebno je u programskom rješenju koje obrađuje genetski
algoritam izvesti zamjenu stare populacije s novom, te se time zaključuje jedna iteracija u
izvođenju. Nakon definiranog broja iteracija program bi trebao prikazati očekivani rezultat
optimizacije.
Shema 5. Pseudokod operatora mutacije
Ervin Bešić : PRIMJENA GENETSKIH ALGORITAMA U BRODOGRAĐEVNOJ INDUSTRIJI
38
4.4. Analiza rješenja
Predložena strategija primjene genetskog algoritma u procesu planiranja proizvodnje je
zamišljena kroz implementaciju u modulu planiranja prioriteta i organizacije poslova u
proizvodnom pogonu. Funkcioniranje samog modula se izvodi kroz integraciju u okruženju
virtualne proizvodnje. Kako je riječ o konceptu koji zahtjeva dugotrajni razvoj ili postojanje
slične platforme za potrebe ovog rada je korištena napredna verzija tabličnog kalkulatora koji
se koristi kao proširenje na paketu MS excela 2007. Riječ je o programskom alatu za
simulaciju problema optimizacije pod nazivom Evolver, konkretno korištena je probna verzija
ovog komercijalnog programskog alata (www.palisade.com/evolver). Evolver je praktičan
programski alat koji vrši optimizaciju primjenom genetskog algoritma. Ovaj programski alat
moguće je integrirati na većinu programskih platformi i zasigurno predstavlja veliki potencijal
u primjeni genetskih algoritama. Evolver je u razmatranom problemu korišten sa stajališta
simulacije opisanog modela.
4.4.1. Simulacija
Prilikom simulacije korišteni su određeni ulazni podaci (Tablica 2.) na osnovu kojih je
izvršeno mjerenje performansi predloženog modela. Scenarij modela obuhvaća izvršavanje
pet radnih naloga od kojih svaki sadrži pet operacija, svaka operacija se izvršava od strane
specificiranog kapaciteta. Cilj optimizacije je dobiti minimalno vrijeme izvršavanja svih
naloga u sustavu, te optimalno organizirati realizaciju planiranih aktivnosti prema dostupnim
kapacitetima. Tijekom testiranja eksperimentiralo se izvođenjem optimizacije na različitom
broju generacija. Izvršena je komparacija modela s 500, 1000 i 10000 generacija.
Korišteni su sljedeći parametri za izvođenje genetskog algoritma:
� Veličina populacije = 100
� Koeficijent križanja = 0.5
� Koeficijent mutacije = 0.1
Ervin Bešić : PRIMJENA GENETSKIH ALGORITAMA U BRODOGRAĐEVNOJ INDUSTRIJI
39
Izvor:autor
Grafikon 2. Komparacija različitih generacija
Ervin Bešić : PRIMJENA GENETSKIH ALGORITAMA U BRODOGRAĐEVNOJ INDUSTRIJI
40
Na grafikonima su prikazani trendovi pretraživanja optimalnog rješenja pri korištenju
različitog broja generacija. Može se zaključiti da se korištenjem većeg broja generacija
povećava vjerojatnost dobivanja optimalnog rješenja (Grafikon 2.). Najbolji rezultat je
dobiven u zadnjem slučaju gdje je korišteno deset tisuća generacija u prostoru pretrage.
Međutim može se zaključiti da kad se dostigne određeni optimum pri velikom broju
generacija on dalje u kontinuitetu ne ostvaruje visoke varijacije od svojih vrijednosti
mijenjajući broj generacija. Stoga je potrebno prilikom procesa optimizacije izvršiti umjerenu
procjenu količine generacija potrebnih za učinkovitu realizaciju procesa optimizacije. Kao
optimalni rezultat u razmatranom problemu procijenjena je simulacija na tisuću generacija
(Tablica 3.).
Definicija metrike Vrijednost
Realizirani broj generacije 10000
Ukupan broj generacija 10000
Inicijalno rješenje 112
Najbolje rješenje 62
Indeks generacije s najboljim rješenjem 4484
Vrijeme pretrage do najboljeg rješenja 0:00:51
Razlog prekida optimizacije 10000 generacija
Ukupno vrijeme optimizacije 0:01:51
Izvor:autor
Prikazani podaci su proizašli kao rezultat simulacije i mogu se promatrati odvojeno,
ovisno o aspektu željenih performansi. Relevantni podatak ovog istraživanja predstavlja
nabolje rješenje optimizacije (62) koji identificira najkraće vrijeme realizacije operacija od
strane pet kapaciteta. Na temelju ovog podatka moguće je izvesti ostale informacije koje su
postavljene kao cilj istraživanja. Konačno zvršen je prikaz preraspodjele slijeda izvođenja
operacija nastao kao rezultat optimizacije (Tablica 4.).
Tablica 3. Rezultati simulacije
Ervin Bešić : PRIMJENA GENETSKIH ALGORITAMA U BRODOGRAĐEVNOJ INDUSTRIJI
41
Šifra proizvodne operacije
Alokacija radnog naloga
Alokacija kapaciteta
Vrijeme realizacije operacije
(h) 18 4 3 5
2 1 2 6
10 2 5 15
3 1 3 4
14 3 4 34
7 2 2 10
21 5 1 2
23 5 3 12
20 4 5 12
4 1 4 5
25 5 5 9
16 4 1 4
8 2 3 23
24 5 4 15
15 3 5 12
1 1 1 3
17 4 2 6
12 3 2 3
6 2 1 4
9 2 4 2
11 3 1 6
22 5 2 4
13 3 3 3
5 1 5 12
19 4 4 6
Izvor:autor
Tablica 4. Optimizirani slijed izvođenja operacija u sustavu
Ervin Bešić : PRIMJENA GENETSKIH ALGORITAMA U BRODOGRAĐEVNOJ INDUSTRIJI
42
Na osnovu dobivenih rezultata, prioritete u izvođenju operacija proizvodnje moguće je
organizirati na učinkovitiji način u cilju skraćivanja vremena proizvodnje. Izvedeni su podaci
o vremenskoj korištenosti kapacitete prije i nakon optimizacije (Tablica 5.).
Definicija metrike Vrijednost
Prazni hod kapaciteta 1 93
Prazni hod kapaciteta 2 83
Prazni hod kapaciteta 3 65
Prazni hod kapaciteta 4 50
Prazni hod kapaciteta 5 52
Inicijalni prazni hod (ukupno) 343
Optimizirani prazni hod kapaciteta 1 43
Optimizirani prazni hod kapaciteta 2 33
Optimizirani prazni hod kapaciteta 3 15
Optimizirani prazni hod kapaciteta 4 0
Optimizirani prazni hod kapaciteta 5 2
Prazni hod nakon optimizacije (ukupno) 93
Izvor:autor
Na osnovu izvedenih podataka moguće je izračunati iskorištenost pojedinog kapaciteta i
ukupnu stopu korištenja kapaciteta relativno prema idealnom vremenu potrebnim za paralelnu
realizaciju operacija. Korištena sljedeća formula:
SK = PK
IK x 100 ;
SK= stopa iskorištenosti kapaciteta (%)
IK = iskorišteni kapacitet
PK= planirani kapacitet
Tablica 5. Analiza praznog hoda kapaciteta
Ervin Bešić : PRIMJENA GENETSKIH ALGORITAMA U BRODOGRAĐEVNOJ INDUSTRIJI
43
Korištenjem navedene formule izveden je sljedeći izraz:
Pi = vrijeme praznog hoda (ulazni podaci), i = indeks kapaciteta;
IK1=19, IK2=29, IK3=47, IK4=62, IK5=60;
P1=93, P2=83, P3=65, P4=50, P5=52; (ulazni podaci)
PKi = IKi +Pi; SKi= PKi
IKix100;
SK1=17%, SK2=26%, SK3=42%, SK4=55%, SK5=54%
Nakon izvođenja simulacije dobiveni su sljedeći podaci o iskorištenosti kapaciteta:
IK1=19, IK2=29, IK3=47, IK4=62, IK5=60;
P1=43, P2=33, P3=15, P4=0, P5=2; (izlazni podaci)
PKi = IKi +Pi; SKi= PKi
IKix100;
SK1=30%, SK2=47%, SK3=75%, SK4=100%, SK5=97%
Prikazana je usporedba iskorištenosti kapaciteta prije izvođenja simulacije i nakon
optimizacije ulaznih podataka obradom kroz genetski algoritam (Grafikon 3.). Sa aspekta
iskorištenosti kapaciteta vidljivo je da je došlo do znatnog povećanja iskorištenosti kapaciteta.
Ervin Bešić : PRIMJENA GENETSKIH ALGORITAMA U BRODOGRAĐEVNOJ INDUSTRIJI
44
PRIJE OPTIMIZACIJE
NAKON OPTIMIZACIJE
Izvor:autor
Dobiveni rezultati prikazuju da je primjenom tehnologije genetskih algoritama u
optimizaciji procesa planiranja moguće postići rast učinkovitosti proizvodnog sustava.
Grafikon 3 Komparacija iskorištenosti kapaciteta
Ervin Bešić : PRIMJENA GENETSKIH ALGORITAMA U BRODOGRAĐEVNOJ INDUSTRIJI
45
5. Zaključak
Specijalistički završni rad prikazan je u četiri tematske cjeline. U prvom dijelu su
navedeni svrha i cilj istraživanja te je postavljena radna hipoteza. Drugi dio rada opisuje širi
kontekst problematike brodograđevne industrije u modernom poslovnom okruženju. Treći dio
obrazlaže koncept genetskog algoritma. U četvrtom dijelu izvršen je prikaz primjene
genetskog algoritma pri rješavanju praktičnog problema prisutnog u brodograđevnoj
industriji. Na kraju su analizirani konkretni rezultati nastali primjenom razmatrane
tehnologije.
U brodogradnji kao kompleksnoj grani industrije neophodna je kontinuirana integracija
novih znanja i tehnologija. U današnjem tržišnom okruženju poslovanje velikih
brodogradilišta nije održivo bez primjene tehnoloških inovacija i fleksibilne organizacije.
Genetski algoritam predstavlja jedan od tehnoloških koncepata koji kroz oponašanje
prirodnog evolucijskog procesa omogućuje optimizaciju procesa u proizvodnji. Osnovni
problemi u poslovanju brodogradilišta najčešće se povezuju s tromošću sustava upravljanja i
organizacijskim vještinama. Osnovni proces u proizvodnji predstavlja proces planiranja
proizvodnje koji čini temelj za učinkovito i djelotvorno funkcioniranje poslovnog sustava.
Procjena planera i sposobnost predviđanja često ima ključnu ulogu u uspješnosti realizacije
plana proizvodnje.
Primjenom naprednih tehnoloških koncepata poput genetskih algoritama moguće je
smanjiti rizike od loših poslovnih odluka i slabih procjena stručnjaka koji sudjeluju u procesu
planiranja. Predstavljenim stručnim istraživanjem razrađena je ideja integracije platforme
virtualne proizvodnje i optimizacije procesa planiranja primjenom genetskog algoritma.
Implementacijom ovakve računalne platforme moguće je simulacijski testirati proizvodne
aktivnosti te preventivno reducirati troškove procesa proizvodnje. Iz svjetskih spoznaja i
dostupnih informacija neosporno je da ovaj pristup predstavlja smjernice budućeg poslovanja
i njegovo uvođenje osigurava konkurentnu prednost na zahtjevnom globalnom tržištu.
Ervin Bešić : PRIMJENA GENETSKIH ALGORITAMA U BRODOGRAĐEVNOJ INDUSTRIJI
46
Popis kratica
3D - Three – dimensional – trodimenzionalno
CAD – Computer aided design – računalna podrška u projektiranju
CAM – Computer aided manufacturing – računalna podrška u proizvodnji
CFD – Computational fluid dynamics – Računalna metodologija za izračun dinamike fluida
CPM- Critical path method – metoda u planiranju
DAS - Daewoo Shipbuilding Scheduling – Sustav planiranja brodogradnje
FEA- Finite element method – metoda u projektiranju
GA – Genetic algorithm – genetski algoritam
JSSP – Job shop scheduling problem – problem organizacije poslova u proizvodnji
PMX – Partially mapped crossover – metoda križanja
SaaS – Software as a service – tip usluga u računalnom oblaku
UI – umjetna inteligencija
VM – Virtual manufacturing – virtualna proizvodnja
VMS – Virtual manufacturing in shipbuilding – Sustav virtualne proizvodnje u brodogradnji
Ervin Bešić : PRIMJENA GENETSKIH ALGORITAMA U BRODOGRAĐEVNOJ INDUSTRIJI
47
Bibliografija
Knjige
1. John R.Koza, Genetic programming , MIT press, Massachusetts 1992.
2. Goldberg D.E., Genetic Algorithms in Search, Optimization, and Machine Learning,
Addison-Wesley, Boston MA, 1989.
3. Darwin Charles, On the Origin of Species, London, 1859.
Članci
1. Zhao D., The Strategy and Innovation of China's Shipbuilding Industry, Jiaotong
University, Beijing, 2009., str. 494-497.
2. Jae Kyu, et al., Developing scheduling systems for Daewoo Shipbuilding:
DAS project, European Journal of Operational Research, 1997., str. 380-395.
3. Crljenko D., Blažević D., Mikac T., Planiranje serijske proizvodnje uporabom
Genetskog algoritma, Tehnički fakultet u Rijeci, Rijeka, 2007., str.27-37.
4. Renner G., Ekart A., Genetic algorithms in computer aided design, Computer-Aided
Design, vol.35, 2003., str.709-726.
5. Akala M., et al., Priority Dispatching Rules for Virtual Manufacturing, University of
Mosul, Mosul, 2008., str.139-162.
Ostali izvori (Internet)
1. http://www.zemris.fer.hr/~golub/ga/ga.html (04.03.2013.)
2. http://www.genetic-programming.com/johnkoza.html (04.03.2013.)
3. http://www.palisade.com/evolver/ (04.03.2013.)
4. http://c2.etf.unsa.ba/mod/resource/index.php?id=156 (04.03.2013.)
5. http://www.myreaders.info/html/artificial_intelligence.html (04.03.2013.)
Ervin Bešić : PRIMJENA GENETSKIH ALGORITAMA U BRODOGRAĐEVNOJ INDUSTRIJI
48
Popis ilustracija
Popis slika:
Slika 1. Komponente virtualnog proizvodnog okruženja ......................................................... 11
Slika 2 Kategorizacija operatora selekcije................................................................................ 18
Slika 3 Problem matrične organizacije ..................................................................................... 21
Slika 4 Hodogram procesa planiranja proizvodnje................................................................... 23
Slika 5 CPM dijagram plana aktivnosti .................................................................................... 24
Slika 6 Fenotip jedinke ............................................................................................................. 28
Slika 7 Primjer operacije križanja između dvije jedinke .......................................................... 34
Slika 8 Križanje roditeljskih kromosoma ................................................................................. 35
Slika 9 PMX nizovi nakon križanja .......................................................................................... 35
Popis tablica:
Tablica 1. Analiza aktivnosti opremanja mikro prostora ......................................................... 24
Tablica 2. Analiza radnog naloga (kromosoma) ...................................................................... 30
Tablica 3. Rezultati simulacije ................................................................................................. 40
Tablica 4. Optimizirani slijed izvođenja operacija u sustavu ................................................... 41
Popis grafikona:
Grafikon 1. Trend korištenja kapaciteta ................................................................................... 25
Grafikon 2. Komparacija različitih generacija ......................................................................... 39
Grafikon 3 Komparacija iskorištenosti kapaciteta.................................................................... 44
Ervin Bešić : PRIMJENA GENETSKIH ALGORITAMA U BRODOGRAĐEVNOJ INDUSTRIJI
49
Popis shema:
Shema 1 Prikaz jednostavnog GA ............................................................................................ 16
Shema 2. Pseudokod algoritma inicijalizacije .......................................................................... 31
Shema 3. Pseudokod selekcije .................................................................................................. 33
Shema 4. Pseudokod PMX algoritma ....................................................................................... 36
Shema 5. Pseudokod operatora mutacije .................................................................................. 37