Nel senso più ampio, l' euristica è la psicologia della scoperta, avvicinata da diversi matematici.
In senso stretto e più frequente, un'euristica è un metodo computazionale che fornisce rapidamente una soluzione fattibile, non necessariamente ottimale o esatta, per un difficile problema di ottimizzazione .
In particolare nella teoria dei numeri , si parla infine di ragionamento euristico per un approccio non rigoroso (e quindi non dimostrativo) sostituendo ad esempio i numeri primi con una distribuzione casuale, e dimostrando che il risultato ricercato ha una probabilità pari a 1.
Generalmente distinguiamo più volte
Pólya ha affrontato queste domande dal punto di vista della matematica.
Distingue tra livelli operativi, tattici e strategici. Il primo raccoglie il know-how di base, l'ultimo è il più intuitivo e il più difficile. Ma l'esperienza rende i livelli inferiori più ricchi, più ricchi ed efficienti.
Una volta che il problema è stato chiaramente identificato (domanda, contesto: dati, vincoli, pro e contro), a seconda del caso
Il primo caso si verifica tanto più spesso quanto più abbiamo esperienza; può richiedere un adattamento, per non "schiacciare un dado con un martello-martello".
Il secondo caso corrisponde a un'analisi cartesiana e utilizza il primo come criterio di arresto.
Il terzo caso è il più intuitivo, fertile ma incerto, perché problemi analoghi spesso, ma non sempre, hanno soluzioni analoghe; inoltre, se l'analogia è troppo lontana, potrebbe essere necessario frammentarla in più stadi intermedi.
Infine, quando è stato trovato un piano d'azione, viene spiegato per attuarlo.
Se il risultato non è buono, il processo viene messo in discussione.
Se il risultato è corretto, è bene vedere se possiamo fare meglio, più efficienti o più generali, in modo da arricchire la nostra esperienza.
Nella teoria dei numeri , molte congetture si basano su argomenti, chiamati euristica, consistenti nello stimare la probabilità della congettura assumendo i numeri primi come distribuiti casualmente.
Un euristica è un metodo di calcolo che fornisce rapidamente una soluzione praticabile, non necessariamente ottimale o esatta per un difficile ottimizzazione problema . Questo è un concetto utilizzato tra gli altri nell'ottimizzazione combinatoria , nella teoria dei grafi , nella teoria della complessità degli algoritmi e nell'intelligenza artificiale .
Un'euristica è necessaria quando gli algoritmi di risoluzione esatta sono di complessità esponenziale e in molti problemi difficili. L'uso di un'euristica è rilevante anche per calcolare una soluzione approssimativa di un problema o per accelerare il processo di risoluzione esatta. Di solito, un'euristica è progettata per un problema particolare, basandosi sulla propria struttura, ma gli approcci possono contenere principi più generali.
Quindi il metodo avido è un euristico. È il caso
Parliamo di metaeuristica per metodi approssimativi generali, che possono essere applicati a diversi problemi (come ad esempio la ricottura simulata ).
Può essere valutato secondo diversi criteri:
Questi criteri consentono di confrontare le euristiche che risolvono lo stesso problema, al fine di identificare l'euristica dominante.
Alcuni non sono competitivi, altri sono utili in casi semplici, o al contrario si dimostrano efficaci solo se affrontano problemi importanti.
Infine, se un metodo algoritmico è fuori portata, possiamo mettere in competizione varie euristiche per beneficiare di tutti i loro campi di attività.