|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Mar 2003
Città: Rimini
Messaggi: 1843
|
Prolog, il mio cervello si è riavviato e non parte
Sto seguendo un corso di intelligenza artificiale ed abbiamo iniziato un po' di prolog.
Non riesco a capirne i meccanismi base ed avrei bisogno di qualche manuale online se possibile. Qualcuno di voi ha delle dispense, dei link di riferimento o altro materiale da poter studiare? Io vengo dal c++ o al massimo assembler e capire un linguaggio come il prolog mi uccide. Siamo proprio agli inizi quindi niente di avanzato. Giusto per capire come istituire le regole e fare programmi come il fattoriale, il quick sort e cose del genere. Con la sintassi sono a posto è proprio il funzionamento a livello di computazione che non afferro. |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Jun 2006
Messaggi: 1077
|
Per imparare a programmare in prolog con un certa scioltezza ci vuole molta esperienza; all'inizio hanno tutti difficoltà. Non ti mettere a perdere tempo con manuali e cose del genere,fatti gli esempi svolti a lezione e cerca di capire qual'è la logica che ci sta dietro. Anche perchè il prolog non sarà certamente l'argomento principale del corso di AI.
|
![]() |
![]() |
![]() |
#3 |
Senior Member
Iscritto dal: Feb 2005
Città: Milano (MI)
Messaggi: 2379
|
http://old.disco.unimib.it/simone/ling_prog_el/
Qui trovi un po' di slide nella sezione "programma e organizzazione lezioni" Buon divertimento ![]() Io per fortuna ho già dato ![]()
__________________
54 trattative positive sul mercatino |
![]() |
![]() |
![]() |
#4 | |
Senior Member
Iscritto dal: Mar 2003
Città: Rimini
Messaggi: 1843
|
Quote:
il fattoriale che ci ha fatto vedere il rpof è il seguente: fatt(0,1). fatt(N,F):-M is N-1, fatt(M,H), F is N*H. Il passo base è elementare ed ok, nel passo induttivo lui dice in sostanza che il nostro problema da risolvere comprende i termini N ed F. Poi dice che M è N-1 e fa il fattoriale tra N-1 ed H, ma H dove acquisisce un valore e quando? Questo proprio non lo capisco...cioè quello che non capisco è il funzionamento di base del compilatore (a dire il vero non so nemmeno se alla base c'è un compilatore, un interprete o cosa), sono abituato a ragionare con l'assembly o il c che sono molto diversi come logica ed una espressione come quella sopra non capisco come la possa interpretare il computer. |
|
![]() |
![]() |
![]() |
#5 | |
Senior Member
Iscritto dal: Dec 2000
Città: bologna
Messaggi: 1309
|
Quote:
in questo caso definisci la regola che M = al primo parametro -1 f = N * H H e definito da fatt(n-1) poi come lui interpreti sta roba non lo so... cmq devi ragionare per regole non per procedure |
|
![]() |
![]() |
![]() |
#6 | ||
Senior Member
Iscritto dal: Apr 2003
Città: Genova
Messaggi: 4741
|
Quote:
![]() Quote:
una volta definita la conoscenza del sistema, non avviene una "compilazione"... ma il sistema parsa gli statements che componegono tale conoscenza per determinare se verificano o meno le query successivamente sottoposte
__________________
Jappilas is a character created by a friend for his own comic - I feel honored he allowed me to bear his name Saber's true name belongs to myth - a Heroic Soul out of legends, fighting in our time to fullfill her only wish Let her image remind of her story, and of the emotions that flew from my heart when i assisted to her Fate
|
||
![]() |
![]() |
![]() |
#7 |
Senior Member
Iscritto dal: May 2004
Messaggi: 1136
|
Questo è il materiale su cui ho lavorato. Essendo a tratti molto teorico e molto vasto, non ti spaventare e muoviti opportunamente tra le sezioni che effettivamente ti servono (per adesso le prime).
E' un pdf di 300 pagine: http://www.dimi.uniud.it/dovier/DID/lnc.pdf |
![]() |
![]() |
![]() |
#8 |
Senior Member
Iscritto dal: Mar 2003
Città: Rimini
Messaggi: 1843
|
Grazie a tutti mi sto cimentando in letture ed esercizi, ho iniziato a comprendere alcune cose però sulle più complesse ancora non so dove mettere le mani. Fortunatamente ho ancora 4 giorni prima della prossima lezione.
Grazie a tutti dell'aiuto. |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 14:01.