Vai al contenuto principale
Oggetto:
Oggetto:

Agenti Intelligenti

Oggetto:

Intelligent agents

Oggetto:

Anno accademico 2022/2023

Codice dell'attività didattica
MFN1348
Docenti
Alberto Martelli (Professore a contratto)
Matteo Baldoni (Titolare)
Corso di studi
[008515] Laurea magistrale in informatica
Anno
1° anno 2° anno
Periodo didattico
Secondo semestre
Tipologia
Caratterizzante
Crediti/Valenza
6 CFU - Numero di ore - Number of hours: 48 (in aula)
SSD dell'attività didattica
INF/01 - informatica
Modalità di erogazione
Tradizionale
Lingua di insegnamento
Italiano
Modalità di frequenza
Facoltativa
Tipologia d'esame
Scritto più orale obbligatorio
Prerequisiti

Il corso assume le seguenti conoscenze:
  • familiarità con le tecniche di programmazione sequenziale e concorrente in linguaggi di alto livello come Java, e capacità di comprendere e formulare algoritmi;
  • conoscenza dei concetti di base dell’intelligenza artificiale come risoluzione automatica di problemi e rappresentazione della conoscenza;
  • familiarità con i concetti di base della logica classica.
    Insegnamenti propedeutici (forniscono le competenze attese in ingresso): Le competenze del primo punto sono fornite dai corsi di programmazione e algoritmi della laurea triennale. Le competenze sugli altri due punti sono fornite dal corso di “Sistemi Intelligenti” della laurea triennale o, relativamente al terzo punto, da un corso di logica della laurea triennale. Gli studenti che non hanno seguito il corso di “Sistemi Intelligenti” si possono documentare consultando i capitoli iniziali di un testo di Intelligenza Artificiale (ad esempio S. Russell, P. Norvig. Intelligenza Artificiale, Un approccio moderno, terza edizione, Pearson/Prentice Hall).
The course assumes the following knowledge:
  • an understanding of the principles of sequential and concurrent programming in high-level languages such as Java, and ability to understand and formulate algorithms;
  • familiarity with the basic concepts of artificial intelligence (such as search techniques and knowledge representation);
  • familiarity with basic concepts of classical logic.
    Preparatory courses (providing the expected entry skills): Skills on the first point above are provided by the courses on programming and algorithms of the “laurea triennale”. Knowledge on the following two topics are provided by the course “Sistemi Intelligenti” of the “laurea triennale”, or by a course on logics. Students not familiar with basic concepts of artificial intelligence and logic can consult the first chapters of the book S. Russell, P. Norvig. Artifical Intelligence: a Modern Approach, 3rd Edition, Pearson. .
  • Oggetto:

    Sommario insegnamento

    Oggetto:

    Obiettivi formativi

    L’insegnamento concorre al raggiungimento degli obiettivi formativi del Corso di Laurea Magistrale in Informatica fornendo i concetti base sugli agenti intelligenti e i sistemi multiagente. Gli agenti intelligenti sono sistemi computazionali capaci di eseguire azioni in modo autonomo e flessibile, interagendo con altri agenti attraverso cooperazione, coordinamento e negoziazione. L’insegnamento fornisce sia gli strumenti metodologici per la comprensione dei sistemi di agenti intelligenti che le architetture di riferimento per la realizzazione di sistemi multiagente anche attraverso l’introduzione di alcune note  piattaforme di sviluppo.

    This course contributes to the goals of the master degree in Computer Science by supplying the concepts of intelligent agents and multi-agent systems. Intelligent agents are computational systems capable of performing autonomous actions in a flexible way and interacting with other agents through cooperation, coordination and negotiation. This course provides both the methodological tools for understanding intelligent agent systems and the reference architectures for the creation of multi-agent systems also through the introduction of some well-known development platforms.

    Oggetto:

    Risultati dell'apprendimento attesi

    Conoscenza e capacità di comprensione. Al termine dell'insegnamento è previsto che si conoscano:

    • le metodologie e gli strumenti per modellare sistemi software mediante un approccio ad agenti.

    Capacità di applicare conoscenza e comprensione. Al termine dell'insegnamento è previsto che si sia in grado di:

    • realizzare sistemi di agenti intelligenti mediante alcuni piattaforme di sviluppo;
    • individuare l'utilità e l'applicabilità dei sistemi di agenti intelligenti alla progettazione di software distribuito.

    Autonomia di giudizio. L'insegnamento permette di sviluppare le seguenti competenze:

    • realizzare un sistema ad agenti intelligenti individuando le componenti essenziali del sistema e le loro interazioni;
    • scegliere i formalismi e i linguaggi più adatti alla realizzazione delle componenti individuate.

    Abilità comunicative. L'insegnamento prevede che si impari a:

    • esporre, in forma orale, una relazione tecnica che spieghi e motivi le scelte progettuali adottate nella realizzazione di un sistema di agenti intelligenti.

    Capacità di apprendimento. Chi supera con profitto l'insegnamento dovrà dimostrare di essere in grado di:

    • comprendere vantaggi e svantaggi della progettazione di sistemi distribuiti mediante approcci basati su sistemi autonomi intelligenti.

     

    Knowledge and understanding. At the end of the course the student is expected to know:

    • methodologies and tools for modeling software systems using an agent approach.

    Ability to apply the knowledge and understanding. At the end of the course the student should be able to:

    • build intelligent agent systems using some well-known development platforms;
    • identify the utility and applicability of intelligent agent systems to distributed software design.

    Making judgments. The course will teach the following skills:

    • create an intelligent agent system by identifying the essential components of the system and their interactions;
    • choose the most suitable formalisms and languages ​​for the realization of the identified components.

    Communication skills. At the end of the course the student must be able to:

    • communicate, in written and oral form, a technical report that explains and motivates the design choices adopted in the creation of a system of intelligent agents.

    Learning skills. In order to complete the course, students will need to showcase their ability to:

    • understand the advantages and disadvantages of designing distributed systems using intelligent autonomous systems approaches.
    Oggetto:

    Modalità di insegnamento

    Le lezioni si svolgono con il supporto di slide.

    The teaching method consists of frontal lessons with the support of slides.

    Oggetto:

    Modalità di verifica dell'apprendimento

    L'esame prevede lo svolgimento di un esonero, per il quale ciascuno studente dispone di al massimo 3 tentativi, e di una prova orale. Alla prova orale si accede se si è superato l'esonero (giudizio non insufficiente). La validità dell'esonero è limitata alla sola prova orale dello stesso appello (non è possibile sostenere l'orale in un successivo appello). L'esito dell'esonero è un giudizio tra: insufficiente, sufficiente, discreto, buono, distinto e ottimo. Il voto finale è determinato dal giudizio dell'esonero e dal risultato conseguito nella prova orale e verrà comunicato al termine della prova orale e dovrà essere accettato o rifiutato nella stessa seduta.

    In modo facoltativo è possibile presentare all'orale un esercizio che mostri l'utilizzo della piattaforma Jade e Jason. L'esercizio è a vostro piacere purché non triviale, ovvero realizzi un sistema di agenti che scambiandosi informazioni raggiungano un qualche obiettivo comune o individuale.

    The exam involves carrying out an exemption ("esonero", in Italian), for which each student has a maximum of 3 attempts, and an oral exam. The oral exam is accessible only after the "esonero" has been passed. The validity of the "esonero" is limited to the oral exam of the same round (it is not possible to take the oral exam in a subsequent round). The outcome of the "esonero" is a judgment among the following: "insufficiente", "sufficiente", "discreto", "buono", "distinto" and "ottimo". The final mark is determined by the judgment of the "esonero" and by the result obtained in the oral exam and will be communicated at the end of the oral exam and must be immediately accepted or rejected.

    Optionally, during the oral exam, it is possible to show and discuss an exercise showing the use of "Jason" and "JADE". The exercise is at your leisure as long as it is not trivial. It should show the realization of a multi-agent system where some agents interact each other aimed to achieve a common goal or a individual goal.

    Oggetto:

    Programma

    • Introduzione agli agenti intelligenti.
    • Modello generale di agente. Agenti intelligenti. Agenti come sistemi intenzionali. Architettura astratta di agenti: agenti reattivi e con stato.
    • Agenti deduttivi.
    • Practical reasoning agents. Ciclo di controllo di practical reasoning agents.
    • Logiche per sistemi multiagente: logica modale (sintassi, semantica, teoria della corrispondenza). Logiche temporali. Logiche per knowledge e belief. Ragionamento su azioni (situation calculus). Model Checking.
    • Modelli formali di agenti BDI: la logica di Cohen e Levesque.
    • Linguaggi e architetture per agenti: PRS, Agent Oriented Programming, Concurrent METATEM, GOLOG.
    • Agenti reattivi e ibridi: la Subsumption Architecture di Brooks, il Mars explorer di Steels, architetture ibride, Touring Machines.
    • Multiagent Systems come sistemi distribuiti di intelligenza artificiale.
    • Comunicazione fra agenti: Speech acts come azioni. Agent Communication Languages (ACL): KQML e FIPA. Protocolli di interazione. Contract Net. Semantica sociale. Commitment e protocolli a commitment.
    • Interazioni fra agenti: teoria dei giochi, strategie e equilibri di Nash, il dilemma del prigioniero, giochi iterati .
    • Allocazione di risorse scarse. Aste.
    • Introduzione a Jade. Jade e FIPA, ciclo di vita dei behavior, directory facilitator.
    • Introduzione a Jason, interprete, esempi di programmi Jason. Cenni alla piattaforma JaCaMo.
    • Introduzione a SARL, esempi di programmi (se avanza tempo).
  • Introduction to intelligent agents.
  • Agents as intensional systems. Abstract architectures for intelligent agents.
  • Deductive reasoning agents.
  • Logics for multiagent systems: modal logic, temporal logic, logics for knowledge e belief. Model checking.
  • Formal models for BDI (Belief, Desire, Intention) agents: Cohen and Levesque's intetion logic.
  • Practical Reasoning Agents. Agent Oriented Programming. Concurrent METATEM. GOLOG.
  • Reactive and hybrid agents.
  • Multiagent systems.
  • Multiagent Systems and Societies of Agents.
  • Communication: Agent Communication Languages (ACL), SInteraction Protocols, Social Semantics and Commitment Protocols.
  • Multiagent interactions: game theory, strategies and Nash equilibria.
  • Allocating Scarce Resources: Auctions.
  • Languages and environments for multiagent systems: Jade, Jason, JaCaMo, SARL. .
  • Testi consigliati e bibliografia



    Oggetto:
    Libro
    Titolo:  
    An Introduction to MultiAgent Systems. Second Edition
    Anno pubblicazione:  
    2009
    Editore:  
    John Wiley & Sons
    Autore:  
    Michael Wooldridge
    ISBN  
    Obbligatorio:  
    Si


    Oggetto:
    Libro
    Titolo:  
    Developing Multi-Agent Systems with JADE
    Anno pubblicazione:  
    2007
    Editore:  
    John Wiley & Sons
    Autore:  
    Fabio Luigi Bellifemine, Giovanni Caire, Dominic Greenwood
    ISBN  
    Obbligatorio:  
    No


    Oggetto:
    Libro
    Titolo:  
    Programming Multi-Agent Systems in Agentspeak Using Jason
    Anno pubblicazione:  
    2007
    Editore:  
    John Wiley & Sons
    Autore:  
    Rafael H. Bordini, Michael Wooldridge, Jomi Fred Hubner
    Obbligatorio:  
    No


    Oggetto:
    Ultimo aggiornamento: 02/05/2023 22:30
    Location: https://magistrale.informatica.unito.it/robots.html
    Non cliccare qui!