Di recente ho letto un post di blog davvero interessante dal blog di ricerca di Google che parla della rete neurale. Fondamentalmente usano queste reti neurali per risolvere vari problemi come il riconoscimento delle immagini. Usano algoritmi genetici per "evolvere" i pesi degli assoni.
Quindi sostanzialmente la mia idea è la seguente. Se dovessi scrivere un programma che riconosca i numeri non saprei come iniziare (potrei avere qualche vaga idea ma il mio punto è: non è banale, né facile.) Ma usando la rete neurale non è necessario. Creando il giusto contesto per far evolvere la rete neurale, la mia rete neurale "troverà l'algoritmo corretto". In basso ho citato una parte davvero interessante dell'articolo in cui spiegano come ogni strato abbia un ruolo diverso nel processo di riconoscimento delle immagini.
Una delle sfide delle reti neurali è capire cosa succede esattamente ad ogni livello. Sappiamo che dopo l'allenamento, ogni strato estrae progressivamente caratteristiche di livello superiore e superiore dell'immagine, fino a quando il livello finale non prende sostanzialmente una decisione su ciò che l'immagine mostra. Ad esempio, il primo strato potrebbe cercare bordi o angoli. I livelli intermedi interpretano le caratteristiche di base per cercare forme o componenti complessivi, come una porta o un'anta. Gli ultimi pochi strati assemblano quelli in interpretazioni complete: questi neuroni si attivano in risposta a cose molto complesse come interi edifici o alberi.
Quindi sostanzialmente la mia domanda è la seguente: non potremmo usare algoritmi genetici + reti neurali per risolvere ogni problema NP? Creiamo semplicemente il giusto contesto evolutivo e lasciamo che la "natura" trovi una soluzione.
Inceptionism: approfondire le reti neurali
EDIT: So che possiamo usare Brute-Force o trovare una soluzione non efficiente in molti casi. Ecco perché provo a evidenziare le reti neurali artificiali in evoluzione . Come ho detto in un commento: dato il tempo sufficiente e un tasso di mutazione adeguato, siamo riusciti a trovare la soluzione ottimale (o almeno è quello che penso).