Co to jest symulowane wyżarzanie?

Symulowane wyżarzanie to technika komputerowa, która pozwala znaleźć dobre — choć niekoniecznie optymalne — rozwiązania problemu. Jest tak nazwany, ponieważ naśladuje metalurgiczny proces wyżarzania. W przypadku metali wyżarzanie to proces oczyszczania polegający na podgrzaniu metalu, a następnie powolnym jego chłodzeniu. Program komputerowy „oczyszcza” przestrzeń rozwiązań, aż zostaną tylko rozwiązania, które są najlepsze lub prawie najlepsze.

Istnieją dwa krytyczne czynniki, które użytkownik programu symulowanego wyżarzania musi określić: temperatura początkowa lub procent gorszych rozwiązań, które można zbadać; oraz szybkość chłodzenia, która jest szybkością, z jaką ten procent jest zmniejszany. Niska temperatura początkowa często kończy się wynikiem dalekim od optymalnego. Rozpoczęcie w bardzo wysokiej temperaturze może spowodować, że wyszukiwanie zajmie znacznie więcej czasu niż to konieczne. Podobnie, zbyt duża szybkość chłodzenia będzie generować słabe wyniki, podczas gdy bardzo niska szybkość chłodzenia spowoduje, że program będzie działał przez bardzo długi czas.

Stan „wysokiej temperatury” dla programu symulowanego wyżarzania to ustawienie, które pozwala na przyjrzenie się szerokiej gamie rozwiązań, w tym wielu gorszych od rozwiązań, które już znalazł. Komputer może przyjrzeć się wielu rozwiązaniom, które są gorsze od obecnego, aby uniknąć trzymania się lokalnego minimum, które jest znacznie gorsze od najlepszych. Jako przykład można sobie wyobrazić, że zaczynasz od szczytu wzgórza lub góry w celu dotarcia do bazy. Po drodze mogą być żleby lub przepaście. Jeśli komputer nie może wjechać pod górę wystarczająco daleko, aby się wydostać, utknie, mimo że nie znajduje się w pobliżu bazy.

To, jak daleko pod górę może zajść program, zależy od odsetka gorszych rozwiązań, które program może zbadać. Z biegiem czasu znajdują się coraz lepsze rozwiązania, a ryzyko głębokiej przepaści maleje, więc odsetek gorszych rozwiązań, które komputer może zbadać, maleje. Zmniejszanie tej frakcji jest określane jako „chłodzenie”. Gdy temperatura osiągnie zadany ułamek — który nie musi wynosić 0 — wyszukiwanie kończy się.

Powodem korzystania z symulowanego wyżarzania lub innych technik wyszukiwania sztucznej inteligencji jest skrócenie do rozsądnej ilości czasu potrzebnego na znalezienie prawie optymalnego rozwiązania. W przypadku wielu problemów wyczerpujące poszukiwania — testowanie każdego możliwego rozwiązania względem drugiego możliwego rozwiązania — może zająć miesiące lub lata. Najbardziej znaną alternatywą dla symulowanego wyżarzania są algorytmy genetyczne. Inne popularne algorytmy wyszukiwania sztucznej inteligencji obejmują optymalizację kolonii mrówek, optymalizację roju cząstek, najbliższego sąsiada i klasyfikatory bayesowskie.