Artificial Intelligence
L'intelligenza artificiale è l'abilità di un computer ad acquisire e rappresentare la conoscenza, apprendere e sviluppare una capacità decisionale autonoma che gli consenta di risolvere i problemi e affrontare i fenomeni di un ambiente operativo complesso, secondo una logica razionale.
Lo studio dell'intelligenza artificiale nacque negli anni '50 con la pubblicazione dell'articolo "Computing Machinery and Intelligence" di Alan Turing. Il termine artificial intelligence fu, invece, usato per la prima volta da John McCarthy nel 1956.
Cosa non è l'intelligenza artificiale?
L'Artificial Intelligence ( A.I. ) non è necessariamente l'emulazione o la simulazione dell'intelligenza umana. Il processo di ragionamento automatico potrebbe seguire anche logiche e schemi completamente differenti da quelli dell'uomo.
Entrambe le forme di intelligenza hanno obiettivi da raggiungere, sia quella umana che robotica, ma le strade prescelte possono anche essere differenti. Inoltre, non è nemmeno detto che l'intelligenza umana abbia gli stessi obiettivi dell'intelligenza artificiale. Molti obiettivi di un uomo sono dettati dalla sua fisiologia umana.
Nota. Gran parte delle decisioni di un uomo sono dettate dai bisogni umani, dall'istinto di sopravvivenza e di riproduzione. Nel caso dell'intelligenza artificiale non esiste nulla di tutto questo. Alcuni fenomeni come i sentimenti, la paura, l'amore, le speranze, i sogni e l'irrazionalità, derivano dalla natura umana. E' quasi impossibile che si presentino anche in una vita intelligente artificiale perché sarebbero inutili.
A cosa serve l'artificial intelligence?
E' uno strumento a servizio dell'uomo. Una delle applicazioni più utili è la realizzazione di agenti decisionali autonomi, in grado di pianificare da sé le proprie scelte ma per perseguire degli obiettivi ben precisi prefissati dall'uomo.
Le applicazioni sono comunque molteplici. Nel campo della ricerca un sistema AI può sperimentare in modo molto più veloce e razionale rispetto all'uomo, prendendo in considerazione un volume di dati enorme ( big data ) altrimenti impossibile da analizzare per l'uomo.
Gli agenti robotici, inoltre, possono svolgere operazioni ripetitive o pericolose, consentendo all'uomo di svolgere lavori di supervisione.
Da questo punto di vista la storia dell'intelligenza artificiale è la naturale evoluzione del processo di meccanizzazione iniziato con la prima rivoluzione industriale nel XVIII secolo .
La differenza tra AI debole e forte
Attualmente esistono due visioni distinte dell'AI
- A.I. debole. Si parla di AI debole se la macchina simula il ragionamento e i processi cognitivi umani senza eguagliare le capacità intellettive umane.
- A.I. forte. Si parla di AI forte se la macchina possiede una propria intelligenza, autonoma e indipendente, pari o superiore a quella umana.
Attualmente l'intelligenza artificiale ha raggiunto soltanto il primo livello ( IA debole ). Per la I.A. forte saranno necessari ancora molti anni, almeno altri venti o trent'anni.
Nota. Probabilmente in futuro la AI forte raggiungerà la singolarità tecnologica. Da quel momento in poi si parlerà di super-intelligenza artificiale al di là della nostra comprensione. E' un'ipotesi ancora molto lontana ma teoricamente possibile.
Negli ultimi anni si è sviluppata soprattutto la disciplina dell'apprendimento automatico ( machine learning ).
E' una delle prime applicazioni pratiche dell'intelligenza artificiale.
Cos'è il machine learning? In generale, si forniscono alla macchina (computer) i dati di un problema. La macchina trova un modello per classificare le informazioni, prendere decisioni o prevedere l'andamento futuro degli eventi. Il modello decisionale non è progettato dal programmatore. E' la macchina a trovarlo. Esistono diversi algoritmi e paradigmi di ML ( supervisionato, non supervisionato, reinforcement learning ).
All'interno del machine learning merita d'essere citato il deep learning che si basa sull'utilizzo delle reti neurali profonde ( neural network ).
Cos'è un agente razionale?
Un agente razionale è un sistema intelligente in grado di elaborare i segnali di input provenienti dai suoi sensori per tradurli in simboli logici e rappresentare la conoscenza dell'ambiente esterno.
La rappresentazione della conoscenza è molto importante nella costruzione di un sistema intelligente, perché influisce sensibilmente sia sull'efficacia che sull'efficienza del processo decisionale.
La rappresentazione della realtà esterna viene confrontata con una base di conoscenza interna ( knowledge base ) per avviare un processo di ragionamento logico-algoritmico, allo scopo di prendere delle decisioni utili al raggiungimento di un particolare scopo o obiettivo.
Una volta prese le decisioni, stabilite le scelte e la strategia da adottare, queste sono messe in atto dai dispositivi attuatori dell'agente razionale. Può trattarsi di un braccio robotico meccanico così come di un flag logico virtuale.
Non c'è mai un unico algoritmo decisionale. In genere un sistema intelligente utilizza differenti algoritmi per prendere le decisioni, a seconda del contesto in cui si trova l'agente. Un po' come avviene anche nella mente umana secondo la teoria della macchina emotiva di Marvin Minsky.
Un computer può pensare?
Questa domanda non è semplice e può avere molteplici risposte multidisciplinari, filosofiche oppure ingegneristiche. Se per "pensiero" intendiamo la capacità di ragionamento per schemi, la risposta è positiva.
Il test di Turing. Uno dei primi ad affrontare quest'argomento fu Alan Turing nel 1950, uno dei fondatori dell'informatica e dell'intelligenza artificiale, che propose un test empirico per stabilire se una macchina può dirsi intelligente o meno. E' noto come Test di Turing.
Viceversa, se si intende per pensiero la consapevolezza di esistenza, l'essenza o l'anima di un soggetto, la risposta è alquanto incerta e dubbia. Di sicuro, è una domanda che sconfina dal campo dell'ingegneria della conoscenza. Per questa ragione l'intelligenza artificiale è anche oggetto di studio nella filosofia, nella psicologia cognitiva e nella teoria della complessità.
Esempio. Non esiste un modo per capire perché un foglio di carta cade dal tavolo e un altro no. Possiamo conoscere nel dettaglio lo spostamento d'aria e le condizioni atmosferiche, ma non riusciremo mai a determinare con certezza la dinamica del vento in ogni suo dettaglio. Allo stesso modo, un pensiero evolve in modo complesso come un'onda del mare. Per quante onde ci siano, non si sarà mai un'onda esattamente uguale a un'altra.
Altri approfondimenti sull'Intelligenza artificiale
- Il sistema razionale intelligente
- Il machine learning
- La logica fuzzy
- La singolarità tecnologica ( mente artificiale )
- La programmazione
Nota. Questo sito web è stato realizzato interamente utilizzando la programmazione in Php, Python e software open source disponibili sul sistema operativo Linux.
Faq
- Quale linguaggio di programmazione usare per l'intelligenza artificiale?
Di recente, è molto usato il Python. In particolar modo per il machine learning e il deep learning. Pur essendo un linguaggio di programmazione interpretato (lento), ci sono almeno tre motivi per usarlo:- Python può accedere a molte librerie esterne ( moduli ) con funzioni utili per il calcolo scientifico. Si evita così di doverle sviluppare ex novo.
- Le librerie esterne del Python sono spesso sviluppate con altri linguaggi compilati di alto livello come il linguaggio C e Fortran. Pertanto, sono molto veloci nell'esecuzione.
- Il linguaggio Python è simile al linguaggio naturale ( lingua inglese ). E' molto più facile da usare rispetto agli altri linguaggi di programmazione come C o Java.