sędzią. Tak więc dochodzimy do wniosku, że zbieżność do optimum nie jest celem godnym uwagi. Głównym celem optymalizacji jest ulepszenie.
Algorytmy genetyczne wymagają zakodowania zbioru parametrów zadania optymalizacji w postaci skończonego alfabetu. Mechanizm działania elementarnego algorytmu genetycznego jest zaskakująco prosty: nie ma w nim nic bardziej złożonego niż kopiowanie ciągów i wymiana podciągów. Wyjaśnienie dlaczego tak nieskomplikowany proces prowadzi do pożądanego skutku jest już znacznie trudniejsze. Prostota i moc jednocześnie – oto dwie główne przyczyny atrakcyjności sposobu podejścia charakterystycznego dla algorytmów genetycznych. Przyjmijmy populację początkową składającą się z czterech ciągów :
01101
11000
01000
10011
Populacja ta została otrzymana drogą losową. Trzeba teraz podkreślić zestaw prostych operacji, za pomocą których – wychodząc z populacji początkowej – będziemy tworzyć coraz lepsze kolejne populacje. Algorytm składa się z trzech następujących operacji :
reprodukcja;
krzyżowanie;
mutacja.
Pierwszy proces – reprodukcja – indywidualne ciągi kodowe zostają powielone w stosunku zależnym od wartości , jakie przybiera dla nich funkcja celu f ( biolodzy nazywają ją funkcją przystosowania). Funkcja f stanowi pewien miernik zysku , użyteczności lub innej wielkości , którą chcielibyśmy zmaksymalizować. Reprodukcja zależna od przystosowania polega na tym , że ciągi kodowe o wyższym przystosowaniu mają większe prawdopodobieństwo wprowadzenia jednego lub więcej potomków od następnego pokolenia. Łącząc w sobie ewolucyjną zasadę przeżycia najlepiej przystosowanych z systematyczną , choć zrandomizowaną wymianą informacji , tworzą metodę poszukiwania obdarzoną jakąś dozą pomysłowości właściwej umysłowi ludzkiemu. W każdym pokoleniu powstaje nowy zespół sztucznych organizmów ( czyli ciągów bitowych, utworzonych z połączenia fragmentów najlepiej przystosowanych przedstawicieli poprzedniego pokolenia; prócz tego sporadycznie wypróbowuje się nową część składową . Pomimo elementu losowości , algorytmy genetyczne nie sprowadzają się do zwykłego błądzenia przypadkowego. Wykorzystują zjawisko takie, że używają efektywnie przeszłego doświadczenia do określania nowego obszaru poszukiwań. Na użytek systemów wytw3awrzanych przez człowieka implikacje odporności są wielorakie. Jeśli umiemy skonstruować odporny system techniczny , to możemy sobie zaoszczędzić kosztownych przeróbek , a nawet całkiem je wykluczyć. Jeżeli osiągniemy wyższy stopień adaptacji , to ist niejące systemy będą mogły pracować i lepiej , i dłużej . Konstruktorzy systemów - komputerowych , inżynierskich, a także ekonomicznych- mogą tylko podziwiać odporność , wydajność i łatwość przystosowania się systemów biologicznych. Bycie zdolnym do regeneracji samosterowania i reprodukcji , będące regułą w świecie biologii , jest prawie nieobecne w świecie najbardziej nawet zaawansowanej techniki. Tajemnice adaptacji i umiejętności przeżycia można najlepiej poznać , studiując uważnie przykłady ze świata biologicznego. Ale to nie wyłącznie doskonałość natury skłania nas do przyjęcia metody algorytmu genetycznego. Otóż dowiedziono już teoretycznie i na podstawie doświadczeń , że algorytmy genetyczne stanowią odporną metodę przeszukiwań w skomplikowanych przestrzeniach. Algorytmy genetyczne coraz szersze kręgi zastosowań w środowiskach naukowych, informatycznych, inżynierskich i w kręgach biznesu. Jest oczywista przyczyna tej rosnącej liczby zainteresowań- algorytmy genetyczne stanowią nieskomplikowane , a przy tym potężne narzędzie poszukiwania lepszych rozwiązań. Można powiedzieć więcej- są one wolne od zasadniczych ograniczeń nakładanych przez mocne założenia o przestrzeni poszukiwań(takie jak na przykład ciągłość , istnienie pochodnych, jednomodalność funkcji celu i temu podobne). Metody analityczne były przedmiotem intensywnych studiów . Można je podzielić na dwie klasy : metody pośrednie i metody bezpośrednie . Jeżeli chodzi o metody pośrednie, to poszukujemy lokalnych ekstremów rozwiązując układ równań (zazwyczaj nieliniowych) otrzymanych przez porównanie gradientu funkcji celu do zera. Jest to uogólnienie na przypadek wielowymiarowy znanej z elementarnego rachunku. Mechanizm działania elementarnego algorytmu genetycznego jest zaskakująco prosty: nie ma w nim nic bardziej złożonego niż kopiowanie ciągów i wymiana podciągów. Wyjaśnienie dlaczego tak nieskomplikowany proces prowadzi do pożądanego skutku jest już znacznie trudniejsze. Prostota i moc jednocześnie – oto dwie główne przyczyny atrakcyjności sposobu podejścia charakterystycznego dla algorytmów genetycznych. Jeśli mamy do czynienia z funkcją gładką , określoną na obszarze otwartym, to poszukiwanie potencjalnych maksimów możemy ograniczyć do zbioru punktów , w których nachylenie stycznej do wykresu funkcji jest równe zeru w każdym kierunku. Bezpośrednie metody poszukiwania lokalnego maksimum polegają na “skakaniu” po wykresie funkcji w kierunku wyznaczonym przez lokalny gradient. Rozpoznajemy tu zasadę górskiej wspinaczki. Obie metody mają zakres lokalny, szukają bowiem optymalnego rozwiązania w sąsiedztwie danego punktu. Przypuśćmy , że znajdą one lokalne maksimum, które nie jest maksimum globalnym. Co gorsza , po znalezieniu niższego wierzchołka nie możemy już poprawić rozwiązania bez powtórzenia całego procesu z losowego punktu startowego lub zastosowania innych chwytów. Następnie , zastosowanie metod analitycznych jest uzależnione od istnienia pochodnych (czyli dobrze określonych kątów nachylenia). Jeżeli nawet dopuścimy numeryczną aproksymację pochodnych , to jest to dalej poważne ograniczenie. W praktyce, wiele spotykanych przestrzeni parametrów nie wykazuje przesadnego respektu wobec pojęcia pochodnej i wynikającej z niego pojęcia gładkości funkcji. Tak naprawdę , w rzeczywistości świat optymalizacji pełen jest nieciągłości i
przepastnych przestrzeni o skomplikowanej topologii , jak pokazuje przykład mniej podatnej na metody analityczne funkcji, pokazanej na rysunku 2. Tak więc , nikogo nie zaskakuje , że metody wymagające spełnienia arbitralnych założeń o ciągłości oraz istnieniu pochodnych mają raczej ograniczony zakres zastosowań. Z tego względu , a również z uwagi na nieodłącznie lokalny charakter działania metod analitycznych, jesteśmy zmuszeni je odrzucić. Algorytmy zwane algorytmami losowego zaczęły cieszyć się rosnącą popularnością z chwilą , gdy badacze zdali sobie sprawę z ograniczeń metod analitycznych i enumeracyjnych. Jednak błądzenie przypadkowe i inne schematy losowe oparte na szukaniu i zapamiętywaniu najlepszego rozwiązania również muszą zostać odrzucone pod względem efektywności. Na dłuższą metę , nie należy się spodziewać przewagi algorytmów poszukiwania losowego nad przeglądowymi. Nie przyjmując i odrzucając tak pospiesznie czysto losowe metody poszukiwania, powinniśmy jednak zachować ostrożność i odróżnić je od technik zrandomizowanych. Algorytm genetyczny jest przykładem procedury używającej wyboru losowego jako przewodnika w prowadzeniu wysoce ukierunkowanego poszukiwania w zakodowanej przestrzeni rozwiązań. Pomysł zastosowania wyboru losowego jako narzędzi do ukierunkowania procesu poszukiwań może wydawać się na pierwszy rzut oka nieco dziwaczny. Przeprowadzona dyskusja nie stanowi wyczerpującego studium metod tradycyjnej optymalizacji , ale wychodzi z niej niepokojący wniosek – konwencjonalne metody poszukiwania są mało odporne. Nie znaczy to , że nie są użyteczne. Wspomniane wyżej techniki , a także niezliczone ich warianty i kombinacje były i są używane z powodzeniem do wielu zastosowań – w miarę jednak , jak stajemy wobec coraz to bardziej złożonych problemów , będą potrzebne nowe metody. Aby spojrzeć na to z lepszej perspektywy , przyjrzyjmy się spektrum problemów uwidocznionemu na rys.3. są tam przedstawione wyimaginowane wykresy efektywności w przekroju problemowym dla metody wyspecjalizowanej, enumeracyjnej oraz idealnej “metody odpornej”. Technika gradientowa – jak należało się spodziewać – daje dobre wyniki dla wąskiej klasy. Zwróćmy uwagę , że powyższa definicja składa się z dwóch części – 1- staramy się zwiększyć efektywność do 2 – wartości optymalnej. Jest tu wyraźne rozróżnienie między procesem ulepszania a jego punktem docelowym , czyli samym optimum. Jednakże dokonując oceny wartości procedur optymalizacyjnych zwykle koncentrujemy się wyłącznie na zbieżności – czy metoda osiąga optimum?, a zapominamy zupełnie o efektywności procesu poszukiwania. Tak więc algorytmy genetyczne dają dobre wyniki w minimalizacji, przy czym nakład pracy przy ich stosowaniu nie jest duży, a szybkość ich działania też jest godna uwagi. Myślę , że ta dziedzina wiedzy będzie się jeszcze rozwijać.