View Full Version : Intelligenza artificiale
Ciao a tutti,
la domanda apparira' strana in un primo momento, ma vi prego di prenderla sul serio.
In questi giorni il mio professore di Intelligenza Artificiale mi ha dato questi argomenti e uno di questi devo sceglierlo e approfondirlo.
Cosi' messi li' alcuni so cosa sono altri no...qualcuno di voi ha qualche conoscenza a riguardo?
Argomenti:
- Description logic
- Agenti bdi
- OWL
- PARL-S
- Ontolingua
- Loom
- OCML
vi prego di darmi una mano se qualcuno sa che cosa sono queste cose e se sa dove reperire maggiori informazioni (libri online, siti ecc.)
grazie
Cimmo
Questa è la testimonianza di quanto sia "non deterministica" l'intelligenza artificiale come disciplina... :p
Scusa ma possibile che non ti abbia dato nessun materiale dove cercare quando ti ha elencato gli argomenti???
Ai tempi io feci le grammatiche di metamorfosi, theorem proving con Otter e ricerca su DAG per la risoluzione di problemi non deterministici... Magari mi informo meglio e ti faccio sapere ...
Ma e' quello che dico io...mi hanno smollato questi argomenti e poi cacchi miei :muro:
Hai provato con questo sito (http://www.google.it) ? :D
A quanto pare Loom è un toolkit per l'ingegneria della conoscenza:
http://www.isi.edu/isd/LOOM/LOOM-HOME.html
OCAML dovrebbe essere l'Objective CAML, un linguaggio funzionale dell'INRIA che poi ha subito un'influenza OO:
http://pauillac.inria.fr
I BDI agents dovrebbero essere agenti Believes, Desires and Intentions. Trovi delle fonti qui:
http://citeseer.nj.nec.com/rao95bdi.html
L'ontolingua è un framework per la knowledge engineering:
http://www.ksl.stanford.edu/software/ontolingua/
OWL è l'Online Writing Lab, un sistema per l'apprendimento della scrittura.
http://owl.english.purdue.edu/
Per quanto riguarda la logica descrittiva... Bhè... E' il "linguaggio dell'intelligenza artificiale"... Quella che viene descitta in tutti i libri di letteratura IA... Sarebbe un sott'insieme della logica del prim'ordine estesa con le clausole di Horn. Quella da cui ha avuto origine Prolog insomma... Dovresti trovare diverso materiale in un qualsiasi libro di IA. Se ti serve invece una descrizione esaustiva sull'argomento, ho travato questo libro:
http://books.cambridge.org/0521781760.htm
Altrimenti il libro che ho usato io per Intelligenza Artificiale 1 dovrebbe esserti d'aiuto, visto che spiega veramente bene:
David Poole,
Alan Mackworth,
Randy Goebel
Computational Intelligence, a logical approach.
Oxford University Press
Ciao. Spero di esserti stato d'aiuto...
Se posso darti il mio parere, se fossi in te farei Loom... La knowledge engineering è uno dei campi piu' attuali della IA e soprattutto il piu' utile... Si usa parecchio nella costruzione di sistemi esperti e nella metaprogrammazione... Non so se hai mai sentito parlare di MYCIN...
Originariamente inviato da cionci
Hai provato con questo sito (http://www.google.it) ? :D
Si ho provato ti ringrazio di avermelo ricordato :(
Lo so che esiste google, pero' ho postato qui perche' magari qualcuno ha gia' avuto diretta esperienza con gli argomenti e puo' essere piu' dettagliato.
Con quella risposta oggettivamente potresti rispondere a qualsiasi domanda e chiudere il forum
Originariamente inviato da mjordan
Se posso darti il mio parere, se fossi in te farei Loom... La knowledge engineering è uno dei campi piu' attuali della IA e soprattutto il piu' utile... Si usa parecchio nella costruzione di sistemi esperti e nella metaprogrammazione... Non so se hai mai sentito parlare di MYCIN...
Prima di tutto ti ringrazio per la velocita'.
Loom l'ho guardato anche io, e il sito l'avevo trovato anche io.
Il problema e' da dove inizio?
Non voglio leggermi il manuale intero, quello che vorrei e' capire cosa fa Loom, perche' e' utile/non utile e perche' e' usato nella knowledge engineering.
Originariamente inviato da mjordan
A quanto pare Loom è un toolkit per l'ingegneria della conoscenza:
http://www.isi.edu/isd/LOOM/LOOM-HOME.html
OCAML dovrebbe essere l'Objective CAML, un linguaggio funzionale dell'INRIA che poi ha subito un'influenza OO:
http://pauillac.inria.fr
I BDI agents dovrebbero essere agenti Believes, Desires and Intentions. Trovi delle fonti qui:
http://citeseer.nj.nec.com/rao95bdi.html
L'ontolingua è un framework per la knowledge engineering:
http://www.ksl.stanford.edu/software/ontolingua/
OWL è l'Online Writing Lab, un sistema per l'apprendimento della scrittura.
http://owl.english.purdue.edu/
Per quanto riguarda la logica descrittiva... Bhè... E' il "linguaggio dell'intelligenza artificiale"... Quella che viene descitta in tutti i libri di letteratura IA... Sarebbe un sott'insieme della logica del prim'ordine estesa con le clausole di Horn. Quella da cui ha avuto origine Prolog insomma... Dovresti trovare diverso materiale in un qualsiasi libro di IA. Se ti serve invece una descrizione esaustiva sull'argomento, ho travato questo libro:
http://books.cambridge.org/0521781760.htm
Altrimenti il libro che ho usato io per Intelligenza Artificiale 1 dovrebbe esserti d'aiuto, visto che spiega veramente bene:
David Poole,
Alan Mackworth,
Randy Goebel
Computational Intelligence, a logical approach.
Oxford University Press
Ciao. Spero di esserti stato d'aiuto...
e tutto questo a soli 1500 euri al mese (temporanei) !!!
venghino siori !!!!
:D :D :D
Originariamente inviato da a2000
e tutto questo a soli 1500 euri al mese (temporanei) !!!
venghino siori !!!!
:D :D :D
Non capisco se mi prendi per il culo o cosa...
Originariamente inviato da Cimmo
Prima di tutto ti ringrazio per la velocita'.
Loom l'ho guardato anche io, e il sito l'avevo trovato anche io.
Il problema e' da dove inizio?
Non voglio leggermi il manuale intero, quello che vorrei e' capire cosa fa Loom, perche' e' utile/non utile e perche' e' usato nella knowledge engineering.
Non è usato nella knoledge engineering, è uno strumento per implementare le tecniche della teoria nella knowledge engineering. Ti capisco, ma magari un rapido sguardo al manuale dovrebbe darti + che una dritta al riguardo. Piu' che altro se sai dirmi di preciso cosa dovresti fare potrei tentare di darti una mano ...
Originariamente inviato da mjordan
Non è usato nella knoledge engineering, è uno strumento per implementare le tecniche della teoria nella knowledge engineering. Ti capisco, ma magari un rapido sguardo al manuale dovrebbe darti + che una dritta al riguardo. Piu' che altro se sai dirmi di preciso cosa dovresti fare potrei tentare di darti una mano ...
Devo fare un piccolo seminario, cioe' un 25-30 slide sull'argomento, ma ancora non ho capito quanto profondamente devo andare e cosa in particolare devo approfondire e cosa no.
Adesso mando una mail al prof. spero mi risponda al piu' presto...AIUTO!
Ho visto ora. Qu' ci sono dei white papers che ti potrebbero essere utili nella comprensione:
http://www.isi.edu/isd/LOOM/papers/LOOM-PAPERS.html
Da quello che ho capito io è un linguaggio per sistemi decidibili... Fai conto un braccio meccanico che in base a delle regole deve impilare delle scatole una sopra l'altra ... I linguaggi decidibili si usano per questo...
Originariamente inviato da mjordan
Non capisco se mi prendi per il culo o cosa...
ma no !
mal comune (scalato con l'età, però) mezzo gaudio ! :) :(
(e anche col tipo di laurea ... :cool: )
(diciamo che puoi moltiplicare per un fattore 2+ )
chiudo l' OT chiedendovi gli attuali rapporti di parentela (?) tra IA e FuzzyLogic.
grazie. :)
maxithron
04-12-2003, 17:28
Originariamente inviato da a2000
chiudo l' OT chiedendovi gli attuali rapporti di parentela (?) tra IA e FuzzyLogic.
grazie. :)
In genere ...se la memoria mi aiuta... la 'parentela' tra IA e Fuzzy Logic non dovrebbe essere riguardo ai fenomeni "instabili" del pianeta?
maxithron ti ho risposto.
Originariamente inviato da a2000
chiudo l' OT chiedendovi gli attuali rapporti di parentela (?) tra IA e FuzzyLogic.
grazie. :)
La logica fuzzy è nata in intelligenza artificiale per aver un modo migliore della logica del prim'ordine per rappresentare ciò che nei linguaggi naturali rappresenta l'incertezza. Qualcosa che non è nè completamente vero nè completamente falso. Dovrebbe essere un superset della logica booleana che è in grado solo di esprimere verità e falsità senza considerare l'incertezza.
E' una disciplina da matti, secondo me. Modelli molto + semplici esistono per approssimare la verità e la falsità all'incertezza, senza doversi rivolgere ad un qualcosa che si affianca alla matematica come "modello di calcolo alternativo"...
Difatti pochissime applicazioni utilizzano la logica fuzzy ... (e laddove la usino c'era un metodo piu' semplice :D )...
La sua relazione con l'IA (laddove si voglia proprio fargli avere una relazione visto che è soltanto uno stupido giocattolo accademico) sono i fuzzy expert systems.
Nome che indica una particolare categoria di sistema esperto, in realtà mai ne è stato implementato uno per due motivi:
1) Un sistema può rappresentare la sua incertezza con la negazione.
2) I vantaggi dalla fuzzyficazione di un sistema esperto sono nulli.
Faccio un esempio: hai 2 variabili x e y così definite:
x < y
e hai una variabile z definita come:
x < z < y
In un sistema esperto tradizionale (logica del prim'ordine, clausole di horn) diresti che z è un valore mediano di x e y.
Nella fuzzyficazione questo non puoi dirlo. Esistono infiniti valori che verificano la disuguaglianza succitata. Ma nei sistemi esperti è inutile farsi pippe di questo genere. Le informazioni o ci sono o non ci sono. E' inutile estendere alla logica fuzzy, quindi.
Diciamo fondamentalmente che la logica fuzzy, che è nata negli anni 60 se non ricordo male, è il frutto della ricerca in quella inutile disciplina che si chiama cibernetica, sviluppata dalle stesse menti comuniste e traviate in russia che volevano una superdisciplina che ricollegasse informatica, fisica elettronica e matematica .... una superdisciplina che fosse il collante universale ... Attualmente nella maggior parte del mondo è crollata la cibernetica così come in russia è crollato il comunismo... :p
miogiordano ma non è che i 1200 euri mensili temporanei te li meriti ? :p
il tifo va bene, ma raddrizza il tiro.
la fuzzy logic è ampiamente utilizzata in tantissimi sistemi di regolazione e controllo, dai frigoriferi di casa agli altiforni, alle raffinerie, ecc. ecc.
insieme alle reti neurali produce modelli black-box di sistemi fisici molto semplici come onerosità di calcolo e robusti (troppo robusti).
io personalmente preferisco e scrivo modelli matematici deterministici.
ma avendo molti "punti di misura" del sistema, la fuzzy si dimostra una strada interessante.
insieme alla IA.
Tornando al discorso Russia, comunismo e cibernetica... Hai giocato mai a Return to Castle Wolfenstein dove devi uccidere l'Uber Soldat?? :D
Un mix fra comunismo russo e fascismo tedesco ... :D :D
Va bhè...Mo sto divagando ... :p
preciso ancora che non sono un tifoso della fuzzy. :)
Tu hai fatto una domanda precisa. Io ti ho risposto. Per i modelli fisici robusti sono d'accordo. Stai parlando pur sempre di una realtà che ha lo scopo di descrivere quanto + dettagliatamente possibile il mondo circostante. Riferita alla I.A. invece, ho solo l'impressione di come una disciplina debba rientrare in un'altra "per forza". Anche l'Intelligenza Artificiale, in fondo, si presume di fare qualcosa che invece non riesce proprio a descrivere ... o almeno non riesce a farlo come dovrebbe ...
Ti faccio un esempio:
Cubo di Rubik - Risoluzione al computer in tempi umani.
Hai 43 quintilioni di combinazioni possibili. E' quindi impossibile procedere con un metodo risolutivo "brute force". Devi ricorrere alla logica del prim'ordine e alle tecniche euristiche di ricerca su grafi aciclici diretti per trovare una combinazione che portino al cubo risolto.
Questo è stato il progetto di IA che ho dovuto fare io. Alla fine si, ho usato delle tecniche di IA per risolverlo in 3 secondi da qualsiasi configurazione su un Mobile Athlon XP 1400+, ma avevo una "base di conoscenze" anche molto elevata. In sostanza ho dovuto passare al programma una knowledge base ampia e precalcolata con altri metaprogrammi scritti primi. Alla fine il problema lo hai risolto. Lo hai risolto non deterministicamente (per quanto non deterministico sia, se alla fine ho una base da cui attingere) ma rimane sempre quel senso di "non è come mi aspettavo". Ed è forse questo che si prova studiando intelligenza artificiale... "Non è ciò che mi aspetto". Certo, la possibilità di costruire azioni/reazioni da una base è interessante... Ma sinceramente l'argomento ha ancora tanto da camminare ... Una scienza troppo nuova per poter portare il nome che porta... Come dice Alan Mackworth, attualmente meglio "Intelligenza Computazionale" Che "Intelligenza Artificiale" ... e la distinzione fra i due nomi non è sottile ...
Originariamente inviato da a2000
preciso ancora che non sono un tifoso della fuzzy. :)
Posso avere l'onore di sapere di cosa ti occupi? :O
sono un ingegnere chimico e mi occupo di R&D. :)
Originariamente inviato da mjordan
Non è usato nella knoledge engineering, è uno strumento per implementare le tecniche della teoria nella knowledge engineering. Ti capisco, ma magari un rapido sguardo al manuale dovrebbe darti + che una dritta al riguardo. Piu' che altro se sai dirmi di preciso cosa dovresti fare potrei tentare di darti una mano ...
Ciao!
Devo fare una panoramica su Loom, cercando di dire il potere di espressivita', dove e' usato e perche' proprio in quegli ambiti...potresti darmi una mano o ti scoccia?
ciao e grazie
maxithron
15-12-2003, 19:44
[OT]
come mai a2000 è stato sospeso?
fine [OT]
downloader
16-12-2003, 09:52
Ha rotto le scatole al mio amico awake...
Comunque questo messagio solo per iscrivermi alla discussione che trovo estremamente interessante.
Saluti:)
Originariamente inviato da Cimmo
Ciao!
Devo fare una panoramica su Loom, cercando di dire il potere di espressivita', dove e' usato e perche' proprio in quegli ambiti...potresti darmi una mano o ti scoccia?
ciao e grazie
Ma sta panoramica le devi fare tu o te la devo fare io? Io pensavo che dovessi svolgerci un progetto con Loom... Per una panoramica basta che ti copi 4 paragrafi del cavolo dal manuale ufficiale...
Originariamente inviato da mjordan
Ma sta panoramica le devi fare tu o te la devo fare io? Io pensavo che dovessi svolgerci un progetto con Loom... Per una panoramica basta che ti copi 4 paragrafi del cavolo dal manuale ufficiale...
Si devo fare solo una presentazione di 30 slide di Loom. Ma io non l'ho manco mai visto!
Loom tu lo conosci? Qualcuno lo conosce e puo' dirmi qualcosa di piu'?
Originariamente inviato da Cimmo
Si devo fare solo una presentazione di 30 slide di Loom. Ma io non l'ho manco mai visto!
Loom tu lo conosci? Qualcuno lo conosce e puo' dirmi qualcosa di piu'?
Scusa non vorrei sembrarti stronzo ... Ma nessuno di noi è nato con la conoscenza di Loom trasmessa tramite cordone ombelicale... Devi fare delle slide su Loom... Non lo hai mai visto... Veditelo! Oh no? :rolleyes: Non capisco qual è il problema...
Originariamente inviato da mjordan
Scusa non vorrei sembrarti stronzo ... Ma nessuno di noi è nato con la conoscenza di Loom trasmessa tramite cordone ombelicale... Devi fare delle slide su Loom... Non lo hai mai visto... Veditelo! Oh no? :rolleyes: Non capisco qual è il problema...
Ma chi ha mai detto che uno ha le conoscenze innate.
Ti ho chiesto solamente se tu lo conoscevi e potevi darmi delle dritte del tipo: "questo argomento e' importante gurdalo bene" o altre cose.
Non ti ho chiesto di farmi il lavoro al posto mio, solo qualche suggerimento su come rendere il lavoro migliore. Poi se tu Loom non l'hai mai visto basta che me lo dici.
E poi scusa ma mi sembra sia stato tu a dirmi: "Piu' che altro se sai dirmi di preciso cosa dovresti fare potrei tentare di darti una mano ..."
se la tua mano significa rispondermi con questo tono mi sembra che tu non sia molto coerente con quello che scrivi.
comunque grazie della disponibilita'...:rolleyes:
Non ti arrabbiare, non volevo demonizzare niente e nessuno. Ti ho solo detto che per realizzare delle slide sull'argomento (30 fogli per essere delle slide non sono tanta roba da scrivere) basta copiare dal manuale ufficiale i capisaldi del progetto. Quindi non è che non ti voglio aiutare. E' che il problema finisce li a mio avviso. E visto che Loom è orientato ai sistemi esperti, metterei prima un'intro solo su quest'ultimi, magari citando cosa sono e a cosa servono (magari evidenziando dei possibili vantaggi rispetto ai database relazionali) per poi passare a Loom come metodologia di progettazione.
Originariamente inviato da mjordan
Non ti arrabbiare, non volevo demonizzare niente e nessuno. Ti ho solo detto che per realizzare delle slide sull'argomento (30 fogli per essere delle slide non sono tanta roba da scrivere) basta copiare dal manuale ufficiale i capisaldi del progetto. Quindi non è che non ti voglio aiutare. E' che il problema finisce li a mio avviso. E visto che Loom è orientato ai sistemi esperti, metterei prima un'intro solo su quest'ultimi, magari citando cosa sono e a cosa servono (magari evidenziando dei possibili vantaggi rispetto ai database relazionali) per poi passare a Loom come metodologia di progettazione.
Ecco questo ti chiedevo! Che bisogno avevi di tirare fuori cordoni ombelicali e altre cose?
Un suggerimento prezioso che terro' conto, adesso cerchero' anche qualcosa sui sistemi esperti, come ho gia' cercato (prima che me lo dicessi) qualcosa su Loom.
ci voleva tanto?
Originariamente inviato da Cimmo
Ecco questo ti chiedevo! Che bisogno avevi di tirare fuori cordoni ombelicali e altre cose?
Un suggerimento prezioso che terro' conto, adesso cerchero' anche qualcosa sui sistemi esperti, come ho gia' cercato (prima che me lo dicessi) qualcosa su Loom.
ci voleva tanto?
Bhè non è che sei stato chiarissimo... ;) Da come esponevi la questione sembrava che volessi qualcuno che ti riassumesse il manuale al posto tuo... ;)
Comunque pardon. Non volevo offendere o essere arrogante, per carità :p :mano:
Originariamente inviato da mjordan
Bhè non è che sei stato chiarissimo... ;) Da come esponevi la questione sembrava che volessi qualcuno che ti riassumesse il manuale al posto tuo... ;)
Probabilmente mi sono spiegato male, probabilmente hai capito cose che non ti ho chiesto! 50 e 50
Diciamo che il thread e' nato male: chiedo un aiuto e mi danno il link di google, per carita' magari non lo conoscevo, ma siccome non sono un newbie prima di postare ci penso due volte.
Poi quest'ultima cosa...insomma mi sembrava quasi fosse il tiro a segno a chi mi pigliava piu' per il...:ciapet:
non so se mi spiego.
Comunque non ho rancori :mano:
P.S.= Sul sito di Loom ho trovato proprio dei lucidi che fanno una panoramica su Loom, sono molto utili per capire come funziona e devo dire che mi sembra abbastanza carino come linguaggio.
Certo che programmare un sistema esperto non deve essere proprio una cosa corta...vabbe' che dipende da cosa devi fare.
Ma l'intelligenza artificiale dei giochi di scacchi si puo' definire un sistema esperto?
Originariamente inviato da Cimmo
P.S.= Sul sito di Loom ho trovato proprio dei lucidi che fanno una panoramica su Loom, sono molto utili per capire come funziona e devo dire che mi sembra abbastanza carino come linguaggio.
Ergo giustificherai la mia risposta precedente di incitamento alla lettura :D
Certo che programmare un sistema esperto non deve essere proprio una cosa corta...vabbe' che dipende da cosa devi fare.
Già. Ma in fondo qualsiasi cosa funzioni e abbia un minimo di utilità ha una complessità non banale.
Ma l'intelligenza artificiale dei giochi di scacchi si puo' definire un sistema esperto?
Dipende dall'approccio. Nel senso che puoi usare la teoria dei giochi (che è materia della logica matematica per produrre regole di inferenza che ti portino alla soluzione o esclusivamente tecniche di ricerca euristiche che sono esclusivamente materia dell'intelligenza artificiale pura. L'unione pesata di entrambe le tecniche aggiunta ad una buona dose di metaprogrammazione si usa per la costruzione di sistemi esperti. Quando parli di sistemi esperti considerali come una base di dati relazionale i cui dati all'interno evolvono in base "all'esperienza". Per esperienza intendi dei "fatti" che possono essere derivati da altri già presenti.
Faccio un esempio banale ma calzante. In una base di dati relazionale hai i seguenti dati: "Socrate è un uomo" e "Gli uomini sono mortali". Nella base di dati rimangono conoscenze fine a se stesse. In un sistema esperto si avrà un'informazione in + derivata dalle due conoscenze che ti ho elencato prima, e cioè: "Socrate è mortale". Un piccolo sillogismo ipotetico-deduttivo per farti capire come l'informazione possa essere dedotta da altra già presente in modo "intelligente".
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.