View Full Version : [JAVA vs PROLOG e simili] AI :domande
ciao : ho dato un occhiata al codice sorgente di alcune chatbot nel web : alcuni di loro
sono scritti in java o c++ , il che mi ha lasciato di stucco .
mi sono posto questi dubbi :
una chatbot è un esempio di AI o sbaglio?
per quale motivo dovrei usare il prolog o lisp invece di java per programmare AI (come una
chatbot o altro) ? un linguaggio ad oggetti non va bene per programmare applicazioni di AI ?
grazie
einstein1969
17-06-2014, 17:47
Bella domanda.
Sai cos'e' un motore inferenziale?
Ai tempi del prolog i linguaggi ad oggetto non erano cosi conosciuti e problemi come quelli della "Susi" o "torre di Hanoi" venivano dati in pasto a questi linguaggi di generazione superiore.
Ora come ora con i linguaggi ad oggetti puoi costruire un motore inferenziale e riutilizzarlo ovunque.
Dunque credo che puoi evitare di usare prolog ma devi implementare quello che manca.
einstein1969
Bella domanda.
Sai cos'e' un motore inferenziale?
Ai tempi del prolog i linguaggi ad oggetto non erano cosi conosciuti e problemi come quelli della "Susi" o "torre di Hanoi" venivano dati in pasto a questi linguaggi di generazione superiore.
Ora come ora con i linguaggi ad oggetti puoi costruire un motore inferenziale e riutilizzarlo ovunque.
Dunque credo che puoi evitare di usare prolog ma devi implementare quello che manca.
einstein1969
che cosa manca secondo te ?
akfhalfhadsòkadjasdasd
17-06-2014, 21:19
Semplicemente devi definire in modo imperativo i passi necessari per giungere alla soluzione, ovvero un algoritmo.
prolog è un linguaggio in cui tu definisci come deve essere quello che vuoi trovare/dimostrare e il motore d'inferenza cercherà una dimostrazione (o meglio una refutazione), se esiste.
Invece con un linguaggio ad oggetti, che è tipicamente usato per programmazione imperativa, tu definisci come si giunge alla soluzione.
einstein1969
17-06-2014, 22:54
che cosa manca secondo te ?
manca il motore inferenziale... che e' integrato in prolog , e altre cose per far funzionare il motore inferenziale.. Per il Lisp non ti so dire.
Ho costruito molti chat bot in linguaggio MIRC e spulciato codice di quelli in altri linguaggi.. Non credere che tutti i chatbot siano AI... In genere non usano nessun motore d'inferenza. Quindi niente AI...
Su wikipedia trovi dei link che spiegano come e' strutturato il motore dei sistemi esperti.
einstein1969
grazie a tutti : adesso ho le idee molto più chiare. in conclusione con calma imparerò il prolog:)
ciao : ho dato un occhiata al codice sorgente di alcune chatbot nel web : alcuni di loro
sono scritti in java o c++ , il che mi ha lasciato di stucco .
mi sono posto questi dubbi :
una chatbot è un esempio di AI o sbaglio?
per quale motivo dovrei usare il prolog o lisp invece di java per programmare AI (come una
chatbot o altro) ? un linguaggio ad oggetti non va bene per programmare applicazioni di AI ?
grazie
Il fatto che prolog e lisp fossero i linguaggi per fare AI e' un concetto vecchio ormai piu' di trent'anni. Nel frattempo sono cambiati i linguaggi di programmazione e pure l'AI.
Prolog va bene solo se vuoi fare programmazione logica; se vuoi fare altro (e probabilmente al giorno d'oggi vuoi fare altro) allora prendi qualcosa di piu' moderno.
Un lisp in teoria andrebbe anche bene, ma ormai e' poco usato, per cui trovi poche librerie; tanto vale buttarsi su un linguaggio dove trovi gia' quello che ti serve e non devi riscriverlo.
Ad esempio per natural language processing ci sono delle ottime librerie in python.
Giusto per ribadire: se hai liberta' di scelta e vuoi ottenere risultati prenditi qualcosa di moderno.
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.