Potrebbe essere la trama di un nuovo film di fantascienza, invece è realtà. Presto i computer si programmeranno da soli grazie al concetto di apprendimento automatico e agli enormi database di software già esistenti. Tutto parte dal Politecnico di Zurigo dove i ricercatori sono riusciti ad insegnare a una macchina a scrivere il proprio programma. Lo studio, pubblicato sulla rivista dell’ateneo, sta facendo da apripista per un nuovo campo di ricerca in rapida espansione, il cui obiettivo è automatizzare il più possibile il processo di programmazione.
Il modo in cui i computer programmatori apprendono è simile al modo in cui lavora, ad esempio, il programma di traduzione di Google. I database pubblici danno accesso a milioni di software per computer che contengono miliardi di stringhe di programmazione. Questa incredibile quantità di dati non può essere sfruttata da un essere umano, ma da un computer sì: le macchine, infatti, possono riconoscere schemi e capire quali codici vengono usati in un determinato contesto, imparando anche il loro significato e le regole alla base.
“Secondo noi, la programmazione non deve reinventare la ruota ogni volta, ma imparare dagli esempi già esistenti”, spiega il gruppo di ricerca guidato da Martin Vechev. In futuro, i programmi potranno lavorare “a fianco” degli sviluppatori, come fanno le funzioni di completamento delle frasi che si usano per scrivere messaggi sugli smartphone. Per esempio, lo sviluppatore scrive il primo centinaio di linee di codice, che il computer confronta con i codici già presenti nel database.
Poi, in base ai risultati, il computer dà suggerimenti su come continuare il programma, lasciando al l’essere umano la possibilità di accettarli o meno. Questo sistema permette alla macchina di continuare il suo processo di apprendimento, imparando a capire quali sono gli obiettivi del programmatore e migliorando i suoi suggerimenti.