Algoritmo euristico
Algoritmo euristico (o euristica): in matematica e informatica è un particolare tipo di algoritmo progettato per risolvere un problema più velocemente –qualora i metodi classici siano troppo lenti– o per trovare una soluzione approssimata –qualora i metodi classici falliscano nel trovare una soluzione esatta–. Il risultato viene ottenuto cercando di equilibrare ottimalità, completezza, accuratezza e velocità di esecuzione.
I metodi euristici costituiscono spesso una strada obbligata per risolvere problemi molto difficili (ad esempio quelli NP-hard) come il problema del commesso viaggiatore, in quanto per determinate dimensioni delle istanze l'algoritmo euristico riesce a ricavare una soluzione approssimativamente molto vicina a quella ottima. Nonostante tale proprietà non si possa verificare sistematicamente né a priori, si tratta spesso di una soluzione disponibile in tempi ragionevoli.
L'euristica è un approccio di risoluzione dei problemi molto diffuso nella simulazione per vari possibili motivi:
- La risoluzione del problema ottimo può essere impossibile;
- La risoluzione del problema ottimo può essere troppo costoso in termini di tempo o di capacità di elaborazione.