SISTEME INTELIGENTE CARE FOLOSESC ALGORITMI GENETICI
ALGORITMI GENETICI
n prezent, nu se cunoate cu exactitate ntregul mecanism care a condus evoluia organismelor vii, ntr-un timp scurt, de la forme primare la forme superioare, evoluate i adaptate condiiilor de pe Pmnt. Din cercetrile formeaz evoluia a avut la baz cromozomii - grupri organice pentru codificarea structurilor vii. Prin selecia natural se stabilesc anumite corelaii ntre cromozomi i performaele structurilor vii, adic se selecteaz acei cromozomi care codific structuri care sunt cel mai usor adaptabile la condiiile de existen i de asigurare a reproducerii. Evoluia are loc prin procesul de reproducere, existnd mutaii prin care cromozomii copilului pot fi diferii de cei ai prinilor biologici. Genele, care poart informaia de adaptare la mediu, sunt mulimi de cromozomi care sunt purtate de un individ. Cromozomul poate fi reprezentat ca o grupare de bii. n algoritmii genetici exist o funcie de evaluare, care reprezint o msur a performanelor cromozomilor. Prin aceasta, o populaie de cromozomi se va mbunti o dat cu nlocuirea prinilor de ctre copii prin procesul de reproducere. Un algoritm genetic cuprinde o serie de reguli care guverneaz procesul de reproducere, deci de evoluie a organismelor vii. Un algoritm genetic cuprinde urmtoarele etape: iniializarea unei populaii de cromozomi; evaluarea fiecrui cromozom n populaie; crearea de noi cromozomi prin folosirea metodelor de recombinare i mutaii; anularea i ndeprtarea unor membri ai populaiei de cromozomi pentru a fi nlocuii de noi generaii de cromozomi; evaluarea noilor cromozomi folosind o anumit funcie de evaluare i introducerea lor n populaia de cromozomi; continuarea procesului de creare de noi cromozomi pn cnd se epuizeaz timpul de calcul stabilit. Prin procedura descris a unui algoritm genetic se stabilete un proces de evoluie a populaiei de cromozomi, obinndu-se populaii cu performane superioare celor nlocuite. Pentru utilizarea algoritmilor genetici exist programe care, n general, conin trei module: modulul de evaluare - conine o funcie de evaluare prin care se apreciaz valoarea, meritul fiecrui cromozom care trebuie selecionat; modulul populaiei - conine tehnici de evaluare a cromozomilor n etapele de reproducere i de manipulare a populaiei; modulul de reproducere - conine tehnici de creare de noi cromozomi (de exemplu, prin metoda ncrucirii) i metode de intervenie.
Modulul de evaluare a cromozomilor Acest modul folosete o funcie de evaluare. Exemplu, f 6 de forma: f x y x y 6 2 2 2 2 2 05 10 0001
. (sin ) . . ( ) , unde: x i y sunt numere reale n cod zecimal, obinute printr-o serie de operaii de decodificare a grupului de bii care reprezint cromozomul. Astfel, numrul de bii ai cromozomului sunt grupai prin njumtire n dou numere binare, care sunt convertite n cod binar, obinndu-se dou numere 2 zecimale x 1 i y 1 . La rndul lor, x 1 i y 1 sunt multiplicate cu o constant subunitar, obinndu-se dou noi numere x 2 i y 2 . Din aceste dou numere se scade un numr constant i se obin numerele x i y, care se introduc n expresia funciei de evaluare. Modulul populaie Acest modul conine mai multe tehnici de prelucrare a biilor prin care este reprezentat cromozomul. Tehnica de iniializare folosete o iniializare n cod binar, crendu-se o populaie iniial prin grupri de bii generate aleator. Tehnica de anulare const n anularea populaiilor vechi dup procesul de reproducere. Tehnica de reproducere const n nlocuirea vechilor generaii cu generaii noi. Tehnica de selectare a prinilor se face, de exemplu, prin regula ruletei. Tehnica de apreciere a eficienei reproducerii cromozomilor reprezint o evaluare a performanelor cromozomilor. Modulul operaiilor de reproducere Acest modul include trei tehnici componente. Astfel, tehnica operaiilor de selecie folosete una sau mai multe proceduri, iar la tehnicile de mutaie i de ncruciare, precum i tehnicile de ponderare ntlnim etape ale evoluiei cromozomilor. Exist sisteme de programe care includ modulele de evaluare, populaie, reproducere, care permit producerea de noi generaii de cromozomi, care sunt evaluai din punct de vedere al performanelor i care formeaz noi generaii. Pentru a exemplifica acestea, se vor detalia componentele procedurilor unui algoritm genetic. a) Selecia prinilor prin regula ruletei Aceast procedur reprezint o tehnic de reproducere pentru a crea noi generaii de cromozomi cu o eficien mai mare. Acest algoritm const n urmtoarele operaii: se ordoneaz populaia de cromozomi i se aloc un numr de ordine n cadrul populaiei; pentru fiecare cromozom se calculeaz valoarea funciei de apreciere, obinndu-se un indice individual de evaluare; se nsumeaz valorile funciei de apreciere n ordinea aleas pentru aezarea cromozomilor n populaie i se ordoneaz aceste sume pariale n ordinea aleas a cromozomilor (regula ruletei); se genereaz n numere aleatoare ntre 0 i suma total a valorilor funciei de apreciere; se aleg din populaia iniial acei cromozomi care au un indice de apreciere egal sau mai mare dect numerele aleatoare. Prin tehnica ruletei rezult o nou populaie de cromozomi cu un indice de apreciere superior celui pentru populaia iniial. b)ncruciarea dup un punct i mutaia Prin aceast procedur se recombin materialul genetic din doi cromozomi-prini, pentru a rezulta doi copii. n acest scop se genereaz un numr aleatoriu care taie cuvntul de bii de la cromozomii-prini n dou pri dup un punct delimitat de numrul aleatoriu i prin mutaie se recombin ultimele pri ale cuvntului. Prin aceast tehnic se formeaz noi populaii de cromozomi care nu mai seamn cu populaiile iniiale, dar se pstreaz primele pri ale cuvntului de bii de la cromozomii iniiali. Acest algoritm de reproducere este foarte utilizat n genetic, considerndu-se c ofer rezultate foarte bune. Exist i ali algoritmi de reproducere, cum ar fi cei bazai pe programarea 3 dinamic, prin care se aplic mutaii asupra populaiilor iniiale, pstrnd pe cele mai efiiciente, dar aceste metode necesit calcule mai complexe.
c)Operaiunea de inversare Aceast tehnic de reproducere se refer la un singur cromozom i const n inversarea ordinii elementelor unui cromozom ntre dou puncte alese aleator. n general, se consider c acest algoritm are eficien mare la cromozomi de lungimi mari, care nc nu au aplicaii largi n sistemele de conducere. Trsturile generale ale algoritmilor genetici sunt: Algoritmii genetici au fost propui pentru a imita trsturile din evoluia natural. Algoritmii genetici folosesc tehnici de creare de noi populaii, diferite de prinii lor i utiliznd tehnici de selectare a prinilor celor mai valoroi. Algoritmii genetici manipuleaz scheme, adic seturi de soluii bune, care prin combinare sau prin ncruciare se rspndesc n populaie n raport cu valoarea acestora. S-a demonstrat experimental c, o dat cu creterea numrului de evaluri, cresc performanele populaiilor rezultate. n prezent nu exist metodologii de alegere dup anumite criterii a unui anumit algoritm genetic, alegerea fcndu-se experimental. Exist numeroase variante de algoritmi genetici, unele n curs de elaborare i experimentare, care difer prin tehnicile de creare a unei noi generaii, de selectare i de evaluare a performanelor.
UTILIZAREA ALGORITMILOR GENETICI PENTRU PLANIFICAREA PROCESRII REZIDUURILOR
Problemele de planificare ale unor operaii de producie reprezint un domeniu larg de utilizare a algoritmilor genetici. Dac exist mai multe instalaii n care trebuie procesate materile provenite din alte faze ale produciei, se pune problema utilizrii n comun a mainilor, utilajelor, asigurndu- se un flux continuu i fiabil de producie. Procesarea n diferite utilaje necesit timp de ncrcare, prelucrare i transport. Restriciile n planificare, precum costurile i limitele de timp, capacitile mainilor i ale oamenilor, reprezint condiiile de funcionare a utilajelor. n cadrul planificrii procesrii rezidurilor se cere s se obin programul de lucru pentru utilaje, ndeplinindu-se restriciile de planificare i de limitare a resurselor disponibile.Pentru rezolvarea acestei probleme de optimizare se folosesc algoritmi genetici, iar pentru evaluarea rezultatelor obinute se folosesc instrumente program de simulare. Programule de lucru pentru utilaje sunt date pentru perioade determinate de timp, de obicei zile. Dispecerul de utilaje permite planificrile de operaii pe utilaje. Poate interveni, ns, defectarea unor utilaje, sau perturbri nedorite ale procesrii, care trebuie compensate prin aciunile planificatorului. Prin utilizarea algoritmilor genetici n regim de planificare se obine o secven cvasioptimal a operaiilor de procesare a materialelor. Populaia n care opereaz algoritmul genetic const ntr-o list de planuri de lucru. Fiecare populaie este caracterizat printr-o grupare de bii, fig. 8.1. care codific timpul de lansare, de pregtire i alte date opionale pentru perioada de timp planificat.
1 1 0 1 1 0 1 1 0 start (zile) prelucare alte date Plan 1 Plan 2 4
Populaia se iniializeaz cu o soluie niial cunoscut. Pentru algoritmul de reproducere s-a ales metoda ncrucirii i mutaiei, rezultnd planuri cvasioptimale de executare a operaiunilor, prin care se minimizeaz timpul pierdut n care utilajele nu sunt folosite. Algoritmul genetic prezentat s-a experimentat pentru un parc format din mai multe utilaje, pe care trebuiau prelucrate sute de arje de materiale, avnd ca criteriu de optimizare timpul de ntrziere n prelucrarea acestora. Cercetrile experimentale au dovedit c prin utilizarea algoritmilor genetici n planificare, timpul de ntrziere se reduce cu peste 50%, ceea ce ofer o mai mare eficien economic procesului de prelucrare.