Linguaggi e Modelli di Programmazione Fabio Massimo Zanzotto.

Slides:



Advertisements
Presentazioni simili
Sistemi dinamici discreti e computabilità intrinseca
Advertisements

Intelligenza artificiale
PHP.
Linguaggi di Programmazione e compilatori
Linguaggi di programmazione
Il problema e la sua risoluzione Significato e metodi risolutivi.
Il progetto WebCrow Il problema di risolvere cruciverba da definizioni è definito AI-complete. Ciò indica che si tratta di un compito complesso per una.
Tecnologia A cura di Paola Limone.
Indirizzi delle variabili A ogni variabile sono associati tre concetti fondamentali: il valore memorizzato; il tipo dati di appartenenza; lindirizzo. Il.
Intelligenza Artificiale 2 Metodologie di ragionamento Prof. M.T. PAZIENZA a.a
Intelligenza Artificiale Strutture e strategie per risolvere problemi complessi Prof. M.T. PAZIENZA a.a
Intelligenza Artificiale 1 Gestione della conoscenza lezione 7 Prof. M.T. PAZIENZA a.a
Intelligenza Artificiale 1 Gestione della conoscenza lezione 8
Sistemi basati su conoscenza Conoscenza e ragionamento Prof. M.T. PAZIENZA a.a
Informatica 2. Concetti fondamentali di programmazione Programmare vuol dire scrivere un algoritmo in un linguaggio che faccia funzionare un calcolatore.
Algoritmi e Strutture Dati (Mod. B)
È il contratto formativo che lega progettazione e valutazione, conferendo senso ad entrambe le regole per giocare Il contratto formativo in classe: le.
ALGORITMI E PROGRAMMAZIONE STRUTTURATA
Intelligenza Artificiale II Dimostrazione automatica di Teoremi
Programmazione logica
LINGUAGGI DI PROGRAMMAZIONE
Intelligenza Artificiale - AA 2001/2002 Logica formale (Parte 2) - 1 Intelligenza Artificiale Breve introduzione alla logica classica (Parte 2) Marco Piastra.
( qualche riflessione )
Restituzione questionario
Esecuzione dei programmi Prolog Liste ed operatori aritmetici
Il primo passo: I basilari del Prolog
Recuperare tutte le risposte Gestione di input-output Fabio Massimo Zanzotto (slides di Andrea Turbati)
Fabio Massimo Zanzotto (slides di Andrea Turbati con aggiunte)
FORMAZIONE DEGLI E- TUTOR 2006 Ufficio Scolastico Regionale del Veneto In collaborazione con la Facoltà di Scienze della Formazione dell'Università degli.
Strategie per il problem solving
Basi di conoscenza: cenni di logica Fabio Massimo Zanzotto.
Linguaggi e Modelli per i Dati e la Conoscenza Fabio Massimo Zanzotto.
Capitolo 4 (Deitel) Le strutture di controllo in C
Definire operatori Strutture dati Fabio Massimo Zanzotto (slides di Andrea Turbati)
FMZ 1 Sistemi basati su conoscenza Costruzione automatica di ontologie di dominio Dott. Fabio Massimo Zanzotto a.a
IO E LA MATEMATICA PROCEDURALE
Intelligenza Linguistico-Verbale
Intelligenza Artificiale 2 Metodologie di ragionamento Prof. M.T. PAZIENZA a.a
Ordinamento e Operazioni su Strutture Dati Fabio Massimo Zanzotto.
Recuperare tutte le risposte Gestione di input-output Fabio Massimo Zanzotto (slides di Andrea Turbati)
Percorsi su grafi, Sottoalberi Comuni e Programmazione Dinamica Fabio Massimo Zanzotto.
FMZ Sistemi basati su conoscenza Prolog (1) Dott. Fabio Zanzotto a.a
Cenni di Logica Fabio Massimo Zanzotto. Calcolo proposizionale.
Controllare Tipi Dati Decomporre fatti Controllare il database Fabio Massimo Zanzotto (slides di Andrea Turbati)
R 255 G 211 B 8 R 255 G 175 B 0 R 127 G 16 B 162 R 163 G 166 B 173 R 104 G 113 B 122 R 234 G 234 B 234 R 175 G 0 B 51 R 0 G 0 B 0 R 255 G 255 B 255 Supporting.
ARGOMENTAZIONE. ARGOMENTARE Dedurre, ricavare per mezzo di argomenti o da indizi esteriori, Dimostrare con argomenti, con ragioni, addurre argomenti,
Didattica e Fondamenti degli Algoritmi e della Calcolabilità Terza giornata: principali classi di complessità computazionale dei problemi Guido Proietti.
Intelligenza Artificiale Metodologie di ragionamento Prof. M.T. PAZIENZA a.a
Università degli Studi di Roma “Tor Vergata”
Intelligenza Artificiale Metodologie di ragionamento Prof. M.T. PAZIENZA a.a
AOT Lab Dipartimento di Ingegneria dell’Informazione Università degli Studi di Parma Intelligenza Artificiale Rappresentazione della Conoscenza e Ragionamento.
Sistemi basati su conoscenza Prof. M.T. PAZIENZA a.a
Intelligenza Artificiale 2 Metodologie di ragionamento Prof. M.T. PAZIENZA a.a
Progetto e Realizzazione di un servizio di Chat Progetto di: Nicoli Leonardo Corso di: Reti di Calcolatori L-S.
1 Linguaggi: guardando la semantica §esistono un insieme di concetti semantici e di strutture di implementazione in termini dei quali si descrivono in.
Intelligenza Artificiale 1 Gestione della conoscenza lezione 14 Prof. M.T. PAZIENZA a.a
Automi temporizzati.
INTELLIGENZA ARTIFICIALE
Come costruire sistemi di elaborazione del linguaggio naturale (NLP) Due paradigmi di riferimento –Basato sulla conoscenza (Knowledge Engineering, KE)
Intelligenza Artificiale Metodologie di ragionamento Prof. M.T. PAZIENZA a.a
Percorsi didattici e comunità di apprendimento
11 aprile 2006Master in economia e politica sanitaria - Simulazione per la sanità 1 _Programmazione _______________________________________ Programmazione.
Corso di Laurea Ingegneria Informatica Fondamenti di Informatica
Il computer ragiona? Problemi e algoritmi. Paola Pianegonda2 Cos’è un problema?  Problema è qualsiasi situazione della quale non conosciamo la soluzione.
GLI ALGORITMI Appunti preparati dalla prof.ssa Maria D’Angelo.
Intelligenza artificiale idee fondamentali 1. Funzionalismo e test di Turing.
Elaborare ed esporre un ragionamento, un giudizio, una valutazione su fatti, fenomeni o conoscenze; scegliere una tesi, un punto di vista, un percorso.
Ipotesi operative TeoriaEsperienza diretta e/o personale Quesito Piano esecutivo Scelta popolazione Scelta strumenti Scelta metodi statistici Discussione.
Logica Lezione 8, DISTRIBUIRE COMPITO 1.
La funzione CASUALE. Gli istogrammi.
Transcript della presentazione:

Linguaggi e Modelli di Programmazione Fabio Massimo Zanzotto

© F.M.ZanzottoLogica per la Programmazione e la Dimostrazione Automatica University of Rome “Tor Vergata” Programma Programmazione ad Oggetti Linguaggio di esempio: Java Programmazione Dichiarativa Linguaggio di esempio: Prolog Compagno di viaggio: Ivan Bratko, Prolog Programming for Artificial Intelligence, Addison Wesley (fourth edition) Programmazione Funzionale Linguaggio di esempio: Python Compagno di viaggio: dispense del corso

© F.M.ZanzottoLogica per la Programmazione e la Dimostrazione Automatica University of Rome “Tor Vergata” Da che mondo veniamo? Domande: Quali sono i problemi che possiamo risolvere? Come li risolviamo? –Attraverso delle procedure che sono sequenze di ordini –Queste sono in genere raccolte in funzioni, procedure, e/o metodi

© F.M.ZanzottoLogica per la Programmazione e la Dimostrazione Automatica University of Rome “Tor Vergata” Da che mondo veniamo? E’ accettato che tutto ciò che è computabile è risolvibile attraverso delle macchine basate su delle procedure

© F.M.ZanzottoLogica per la Programmazione e la Dimostrazione Automatica University of Rome “Tor Vergata” Esempio 1: Costruire un Cruciverba Primo problema: vogliamo costruire gli incastri di parole per un cruciverba Risoluzione Predisponiamo lo schema Indichiamo le parole che possiamo usare Il programma deve decidere: –Quali parole usare –Come riempire lo schema

© F.M.ZanzottoLogica per la Programmazione e la Dimostrazione Automatica University of Rome “Tor Vergata” Esempio 1: Costruire un Cruciverba Parole usabili: dog, four, baker, prolog, run, lost, forum, vanish, top, mess, green, wonder, five, unit, super, yellow.

© F.M.ZanzottoLogica per la Programmazione e la Dimostrazione Automatica University of Rome “Tor Vergata” Esempio 1: Costruire un Cruciverba Soluzione Possibile Parole usabili: dog, four, baker, prolog, run, lost, forum, vanish, top, mess, green, wonder, five, unit, super, yellow. FORUM IUE VANISH ES

© F.M.ZanzottoLogica per la Programmazione e la Dimostrazione Automatica University of Rome “Tor Vergata” Costruire un Cruciverba Scrivere un programma che permetta di trovare tutte le soluzioni ammesse.

© F.M.ZanzottoLogica per la Programmazione e la Dimostrazione Automatica University of Rome “Tor Vergata” Esempio 2: Colorare una Mappa Classico problema: usando un certo numero di colori, trovare una colorazione della mappa tale che 2 stati adiacenti non abbiano lo stesso colore. (graph colouring)

© F.M.ZanzottoLogica per la Programmazione e la Dimostrazione Automatica University of Rome “Tor Vergata” Esempio 2: Colorare una Mappa Dati iniziali

© F.M.ZanzottoLogica per la Programmazione e la Dimostrazione Automatica University of Rome “Tor Vergata” Esempio 2: Colorare una Mappa Risultato atteso

© F.M.ZanzottoLogica per la Programmazione e la Dimostrazione Automatica University of Rome “Tor Vergata” Esempio 2: Colorare una Mappa Scrivere un programma che permetta di trovare tutte le soluzioni ammesse.

© F.M.ZanzottoLogica per la Programmazione e la Dimostrazione Automatica University of Rome “Tor Vergata” Esempio 3: Organizzare una giornata di lavoro in team Si vuole organizzare una giornata di lavoro in cui: –Ci devono essere tre sessioni per i tre argomenti del progetto: intelligenza artificiale, bioinformatica e database –Ci sono due orari possibili: mattina e pomeriggio –Ogni sessione deve avere un argomento e deve avere almeno due persone esperte del argomento Problema: Assegnare l’orario e gli esperti per ciascuna delle sessioni.

© F.M.ZanzottoLogica per la Programmazione e la Dimostrazione Automatica University of Rome “Tor Vergata” Esempio 3: Organizzare una giornata di lavoro in team Scrivere un programma che permetta di trovare tutte le soluzioni ammesse.

© F.M.ZanzottoLogica per la Programmazione e la Dimostrazione Automatica University of Rome “Tor Vergata” Da che mondo veniamo? E’ dimostrabile che tutto ciò che è computabile è risolvibile attraverso delle macchine basate su delle procedure Ma è sempre conveniente esprimere la soluzione in quel modo?

© F.M.ZanzottoLogica per la Programmazione e la Dimostrazione Automatica University of Rome “Tor Vergata” Obiettivo del Corso Esplorare un altro mondo: Il mondo dei se fatto di fatti e delle regole Tizio è fratello di Caio se Tizio ha come padre Sempronio e Caio ha come padre Sempronio oppure Tizio ha come madre Sempronio e Caio ha come madre Sempronio

© F.M.ZanzottoLogica per la Programmazione e la Dimostrazione Automatica University of Rome “Tor Vergata” Programmazione dichiarativa I fondamenti del Prolog Prolog applicato all’Intelligenza Artificiale Un passo indietro: –la logica dei predicati –la logica del prim’ordine –il prolog come restrizione dela logica Un passo avanti: –Il prolog e la statistica

© F.M.ZanzottoLogica per la Programmazione e la Dimostrazione Automatica University of Rome “Tor Vergata” Libro di testo … il nostro compagno di viaggio Ivan Bratko, Prolog Programming for Artificial Intelligence, Addison Wesley (fourth edition)

© F.M.ZanzottoLogica per la Programmazione e la Dimostrazione Automatica University of Rome “Tor Vergata” L’esame … ovvero, come controlliamo che il tempo che abbiamo passato insieme è stato speso bene? Progetto un problema da risolvere in Prolog Discussione Progetto Orale