Infordata Home Page
L'Azienda L'Offerta Clienti Eventi News dal web Contatti Area riservata Area clienti
     
Dal web...
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

20Q.net

20Q.net è un gioco, ma è soprattutto un esperimento con un'Intelligenza Artificiale.

Pensato un 'qualcosa', 20Q.net -Twenty Questions- proverà ad indovinare l'oggetto che avete in mente con non più di 20 domande!

20Q.net è un gioco contro un'Intelligenza Artificiale che progredisce in scala, nel senso che man mano che si gioca, vi si inseriscono nuove informazioni che vanno a perfezionarlo. Tutto quel che 20Q.net conosce, e tutte le domande che pone, si può dire che provengano dai giochi effettuati in dieci anni di sperimentazione.

Il programma è molto semplice ma il relativo comportamento è complesso.

20Q.net prevede un insieme di programmi scritti in C, e si compone di tre elementi integrati: il motore del gioco, l'applicazione per immettere gli input dall'utente nel database che raccoglie le informazioni, e dall'interfaccia internet CGI/HTTP.

Fondamentalmente, il database manager è una matrice in cui gli oggetti sono indicizzati e posti in relazione a delle domande. Ogni elemento nella matrice è la risposta, positiva o negativa, relativa ad una domanda riguardante l'oggetto corrispondente. Inoltre, il peso della risposta è indicizzato e corrisponde ad un determinato oggetto. Le risposte sconosciute, infine, hanno peso zero.

Ogni volta che un giocatore risponde ad una domanda, questa contiene tre informazioni:

  • lo stato corrente nel gioco
  • l'indice della domanda attuale
  • la risposta del giocatore
Nel generare la pagina seguente, il gioco determina quali oggetti siano più probabili, confrontando le risposte ottenute con il database manager. Se un elemento nel database è sconosciuto, l'algoritmo ignora quella determinata risposta per quell'oggetto. Il programma è in grado di determinare il numero di sì e di no per ogni domanda relativa ad un determinato oggetto; incluse le risposte sconosciute. Il programma sceglie infine la domanda che ha il miglior rapporto di si e di no come risposte ottenute precedentemente (una divergenza di 50/50 sarebbe ideale).

Il programma inoltre esamina gli oggetti che sono simili all'oggetto in questione e prospetta le sue conclusioni.

Il gioco mette a confronto le probabilità riguardanti gli oggetti e la domanda, e decide se tentare di indovinare l'oggetto o porre un altro quesito. Queste informazioni sono usate poi per generare una nuova pagina, con i nuovi collegamenti, che riflettono il nuovo stato del gioco.

Alla fine del gioco, quando il programma riconosce l'oggetto aggiorna il database.
Se il database non contiene ancora una certa risposta, viene stabilito il valore per quella risposta , e se, invece, la risposta è già presente, il peso per quella risposta è soggetta ad un incremento.
Se, d'altra parte, la risposta contraddice una relazione già esistente, nel database il peso viene diviso per due.

Effettuando una gran quantità di calcoli semplici, il gioco è in grado di tollerare sia le conoscenze mancanti, sia gli input contraddittori.

Questa gioco in un Intelligenza Artificiale è il lavoro dello sviluppatore Robin Burgener di Ottawa. Burgener ha iniziato a sviluppare il software nel 1988 per soddisfare la sua curiosità riguardante i sistemi di autoapprendimento progressivo. 'La logica del programma sembra ragionevolmente semplice. Si parte con la costruzione di un albero. Se il programma fallisce, pone una domanda per differenziare l'ultimo oggetto dal nuovo oggetto. Ma, se un giocatore risponde ad una domanda da una differente prospettiva, il gioco sarà destinato a fallire; l'input del giocatore è conforme alla natura umana e non può essere 100 per cento coerente.' (...per fortuna!) 'In parole povere, il programma determina gli oggetti più probabili ed allora pone le domande che potrebbero eliminare la maggior parte di oggetti. Per limitare la confusione le risposte nel database hanno un peso riguardante le probabilità di successo, e in genere sono risposte sconosciute.'

Le persone che giocando ogni giorno, aggiungono dozzine di nuovi oggetti e domande al programma. Il programma attualmente vince il 40 per cento del tempo. Giocando, i giocatori insegnano al programma, il quale va guadagnando più conoscenza.

Alla base del sistema vi è dunque una grande, e sempre crescente, quantità di dati, ma, da un'altra prospettiva, ogni domanda può essere considerata un input di una rete neurale, mentre gli oggetti rappresentano gli output della rete.

Newsletter Infordata
 
Attività Infordata
 
Eventi Infordata