Ce este recoacerea simulată?

Recoacere simulată este o tehnică computerizată care poate găsi soluții bune – deși nu neapărat optime – la o problemă. Este numit astfel deoarece imită procesul metalurgic de recoacere. În metale, recoacerea este procesul de purificare prin încălzirea metalului, apoi răcirea lui încet. Programul de calculator „purifică” spațiul soluției până când tot ce rămân sunt soluții care sunt cele mai bune sau aproape cele mai bune.

Există doi factori critici pe care utilizatorul unui program de recoacere simulat trebuie să îi specifice: temperatura de pornire sau procentul de soluții mai proaste care pot fi explorate; și viteza de răcire, care este viteza cu care procentul respectiv este redus. O temperatură scăzută de pornire se va termina adesea cu un rezultat departe de optim. Începând cu o temperatură foarte ridicată, căutarea poate dura mult mai mult decât este necesar. În mod similar, o rată de răcire prea mare va genera rezultate slabe, în timp ce o rată foarte scăzută de răcire va avea ca rezultat un program care rulează foarte mult timp.

Starea de „temperatură ridicată” pentru programul de recoacere simulat este o setare care îi permite să analizeze o gamă largă de soluții, inclusiv multe care sunt mai rele decât soluțiile pe care le-a găsit deja. Computerului i se permite să se uite la multe soluții care sunt mai proaste decât soluția actuală pentru a evita rămânerea la un minim local care este substanțial mai rău decât cel mai bun. De exemplu, ne putem imagina că începem din vârful unui deal sau munte cu scopul de a ajunge la bază. Pe parcurs pot exista rigole sau prăpastii. Dacă computerul nu poate urca suficient de departe pentru a ieși, se va bloca chiar dacă nu se află nicăieri aproape de bază.

Cât de departe poate merge programul este determinată de procentul de soluții mai rele pe care programul poate să le examineze. Odată cu trecerea timpului, se găsesc soluții din ce în ce mai bune și riscul unei prăpăstii profunde scade, astfel încât procentul de soluții mai rele pe care computerul le poate explora este diminuat. Reducerea acestei fracții este denumită „răcire”. Când temperatura atinge o fracție prestabilită – care nu trebuie să fie 0 – căutarea se încheie.

Motivul pentru a utiliza recoacere simulată sau alte tehnici de căutare a inteligenței artificiale este reducerea la o cantitate gestionabilă a timpului necesar pentru a găsi o soluție aproape optimă. Pentru multe probleme, o căutare exhaustivă – testarea fiecărei soluții posibile față de alte soluții posibile – ar putea dura luni sau ani. Cea mai cunoscută alternativă la recoacere simulată sunt algoritmii genetici. Alți algoritmi populari de căutare a inteligenței artificiale includ optimizarea coloniilor de furnici, optimizarea roiului de particule, cel mai apropiat vecin și clasificatorii bayesieni.