Topic outline

  • COURSE DESCRIPTION

    Syllabus Attività Formativa

     

    Anno Offerta

    2022/2023                                                                                                                                                                

    Corso di Studio

    INFORMATICA APPLICATA

    Regolamento Didattico

     

    Percorso di Studio

     

    Insegnamento/Modulo

    COGNITIVE ROBOTICS

    Attività Formativa Integrata

     - 

    Partizione Studenti

     - 

    Periodo Didattico

    S2 - Secondo Ciclo Semestrale

    Sede

     

    Anno Corso

     

    Settore

    INF/01 - INFORMATICA

    Tipo attività Formativa

    A scelta

    Ambito

     

    CFU

    6.0

    Ore Attività Frontali

    48.0

    AF_ID

     

     

    Tipo Testo

    Codice Tipo Testo

    Num. Max. Caratteri

    Obbl.

    Testo in Italiano

    Testo in Inglese

    Lingua insegnamento

    LINGUA_INS

    100

     

    English

    Contenuti

    CONTENUTI

    1400

    Il corso si propone l'obiettivo di fornire agli studenti i metodi e le tecniche per poter progettare di simulare e programmare robotici o reali atraverso l'utilizzzo tool e di linguaggi dispositivi di programmazione allo stato dell'arte.

    Il corso si propone inoltre di trasmettere una conoscenza approfondita dei modelli e degli algoritmi di intelligenza artificiale applicati alla robotica cognitiva.

    The course aims to provide students with the methods and techniques to be able to design simulate and program robotic or real through the use of tools and programming device languages ​​at the state of the art.

    The course aims will also convey a in-depth knowledge of AI models and algorithms applied to cognitive robotics. 

     

    Testi di riferimento

    TESTI_RIF

    4000

    Murphy R.R. - Introduction to AI robotics - MIT Press - 2000

    S. Russell, P. Norvig, “Artificial Intelligence. A Modern Approach", Prentice Hall, Second Edition - 2003

    Arkin R.C. - Behavior-based robotics - MIT Press – 1998

    Pefeifer R. & Scheier C. - Understanding Intelligence - MIT Press - 2000

    Lentin J. and Cacace J., Mastering ROS for Robotics Programming: Design, build, and simulate complex robots using the Robot Operating System, BIRMINGHAM –MUMBAI - 2018

    Murphy R.R. - Introduction to AI robotics - MIT Press – 2000

    S. Russell, P. Norvig, “Artificial Intelligence. A Modern Approach", Prentice Hall, Second Edition - 2003

    Arkin R.C. - Behavior-based robotics - MIT Press – 1998

    https://aimacode.github.io/aima-exercises/

     

    Pefeifer R. & Scheier C. - Understanding Intelligence - MIT Press - 2000

    Lentin J. and Cacace J., Mastering ROS for Robotics Programming: Design, build, and simulate complex robots using the Robot Operating System, BIRMINGHAM –MUMBAI - 2018

    Obiettivi formativi

    OBIETT_FORM

    4000

    Il corso partirà dalla definizione di agenti intelligenti per arrivare ad agenti robotici affrontando aspetti metodologici della Robotica Cognitiva. La robotica cognitiva consiste nel dotare robot e agenti incarnati di un comportamento intelligente progettando e implementando un'architettura di elaborazione che li renda atti a deliberare, apprendere e ragionare su come comportarsi in risposta a obiettivi complessi in un mondo complesso. I modelli ispiratori della Robotica Cognitiva derivano da diverse discipline: le architetture neurali dalle neuroscienze, i comportamenti di base dall'etologia, le motivazioni e le emozioni dalla psicologia, il comportamento multirobot dalla sociologia. Questi modelli potrebbero essere implementati in termini di logica formale, modelli probabilistici e neurali che si trasformano in agenti computazionali incorporati.

    Il programma del corso è diviso in due parti. Nella prima parte, sarà introdotta la robotica cognitiva e i principali paradigmi e architetture di controllo di sistemi robotici fino all’introduzione della disciplina dell’Interazione Uomo-macchina.

    Nella seconda parte saranno introdotti i principali sistemi di programmazione robotica. Nella fattispecie ROS (Robotic Operating System) e Choregraph, un applicativo per la programmazione di robot umanoidi.  

     

    The objective of this course is to provide students with a complete and in-depth knowledge of the principles and techniques of artificial intelligence by introducing the classical problems of AI, as well as the models and the ones used to address these problems. The course will start from the definition of intelligent agents to arrive at robotic agents by addressing methodological aspects of Cognitive Robotics. Cognitive robotics consists of equipping embodied robots with a designing behavior and agents that implements a goal processing architecture that enables them to deliberate intelligent and learn and reason about how to behave in response to a complex world. The inspiring models of Cognitive Robotics derive from different disciplines: neural architectures, neuroscience, basic behaviors from ethology, motivations and emotions from psychology, multirobot behavior from sociology. These models could be implemented in terms of formal logic, probabilistic and neural models that turn into embedded computational agents.

    The course program is divided into two parts. In the first part, cognitive robotics and the main robotics control paradigms and architectures will be introduced up to the introduction of the Human-Machine Interaction discipline.

    In the third part, main robotic programming systems will be introduced. In this case ROS (Robotic Operating System) and Choregraph, an application for programming humanoid robots.

    Prerequisiti

    PREREQ

    4000

    Esami di Base di Matematica, Programmazione e Algoritmi e Strutture dati rappresentano prerequisiti fondamentali per la comprensione degli argomenti trattati

    Basic exams of Mathematics, Programming and Algorithms and Data Structures are fundamental prerequisites for understanding the topics covered

    Metodi didattici

    METODI_DID

    4000

    Verranno erogate lezioni frontali in aula. Lo studio e l’approfondimento degli argomenti sarà realizzato anche attraverso esercitazioni. 
    Il Materiale Didattico opportunamente predisposto verrà fornito mediante piattaforma di E-LEARNING e condiviso nei files di TEAMS.
    LA FREQUENZA IN AULA È FORTEMENTE CONSIGLIATA sebbene non obbligatoria per poter sostenere la prova finale

    Lectures will be given in the classroom. 
    The study and in-depth study of the topics will also be carried out through coding exercises and/or homework.
    The Didactic Material properly prepared will be provided through the E-LEARNING platform and shared within the TEAMS files.
    ATTENDANCE IN THE CLASSROOM IS STRONGLY RECOMMENDED although not mandatory in order to take the final exam

    Altre informazioni

    ALTRO

    4000

     

     

    Modalità di verifica dell'apprendimento

    MOD_VER_APPR

    4000

    Ciascuno studente prenderà parte alla realizzazione di un progetto di gruppo (composto da 2 a 3 Studenti) concordato con il Docente, su cui verranno accertate individualmente le capacità pratiche acquisite. 
    La verifica si baserà su:  
    1. Un REPORT di PROGETTO: (Project Document and Code) che mira a verificare che lo studente abbia acquisito la capacità di PROGETTARE e SVILUPPARE (programmare),  sistemi di controllo robotico basati su tecniche di AI, VALUTATI in simulazione o in scenari reali , a seconda della piattaforma robotica che lo studente intende utilizzare. 
    2. Una PROVA ORALE: gli studenti presenteranno il progetto realizzato attraverso l’uso di slides per la verifica individuale delle capacità acquisite dal singolo studente

    UNA MODALITÀ ALTERNATIVA (Nuova Edizione): Ogni studente parteciperà alla realizzazione di:

    1) Due Implementation Robotic Challenges intra-corso (realizzate in Gruppi di 2-3 studenti), che mirano a verificare che lo studente abbia acquisito la capacità di PROGETTARE E SVILUPPARE (programmare) un sistema di controllo robotico basato su tecniche di IA, VALUTATE in un ambiente simulato o scenario reale (a seconda della piattaforma robotica che lo studente intende utilizzare).

    2) una valutazione finale finale effettuata dal Pepper Robot (Domande a Risposte Multiple), durante la quale verranno valutate singolarmente le competenze teoriche acquisite.

    Each student will take part in the realization of a group project (composed of 2 to 3 Students) agreed with the Professor, on which the practical skills acquired will be individually assessed.
    Verification will be based on:
    1. A PROJECT REPORT which aims to verify that the student has acquired the ability to DESIGN AND DEVELOP (programming) a robotic control system based on AI techniques, EVALUATED in a simulated or real scenario, depending on the robotic platform the student aims at deploying. 

    2. An ORAL EXAMINATION: students will present the project carried out through slides for the individual assessment of the skills acquired by the student.


    AN ALTERNATIVE MODALITY (New Edition):

    Each student will take part in the realization of:

    1) Two intra-course implementation Robotic Challenges (realized in Groups of 2-3 students), which aim at verifying that the student has acquired the ability to DESIGN AND DEVELOP (programming) a robotic control system based on AI techniques, EVALUATED in a simulated or real scenario (depending on the robotic platform the student aims at deploying). 

    2)  final final evaluation made by the Pepper Robot (Multiple Answers Questions), during which the acquired theory competences will be individually assessed.

    Programma esteso

    PROGR_EST

    2400

    INDICE DELLE LEZIONI

    PARTE 1

    I Introduzione alla Robotica Cognitiva

    Intelligenza artificiale e robotica (dalla robotica alla robotica cognitiva)

    Hardware robotico (sensori ed effettori): introduzione a: Architetture software robotiche, Architettura di sussunzione, Architettura a tre strati, Linguaggi di programmazione robotica

    II Architetture di controllo della robotica

    Sistemi Robotici e Architetture Cognitive Introduzione: Funzionalità Reattiva (Comportamenti, Coordinamento dei comportamenti, Locomozione)

    Funzionalità reattiva (rilevamento, range sansing)

    Funzionalità deliberativa: deliberazione, navigazione, pianificazione, localizzazione e mappatura (opzionale)

    III Interazione Huma-Robot

    Interazione uomo-robot

    Multi-robot Systems

    PARTE 2

    I ROS – Sistema operativo robotico

    Introduzione a ROS, ti dà una comprensione dei concetti fondamentali alla base di ROS.

    Iniziare con la programmazione ROS, come lavorare con i pacchetti ROS.

    Simulazione di robot utilizzando ROS

    Sviluppare algoritmi di controllo robotico

    II Programmazione di robot umanoidi

    Introduzione su Pepper, Robot sociali. Guida sviluppatori: NAOqi OS, Prima configurazione Pepper, Come connettere Pepper in rete, Download e installazione del software Aldebaran: Choreographe Suite, Python in Choregraphe, Dialogo in Choregraphe

    SDK: Creare un'applicazione, Hello World, Applicazione di ballo, Applicazione interattiva; Creare un'applicazione da zero, Uso del tablet

    INDEX OF LESSONS

    PART 1

    I Introduction to Cognitive Robotics

    AI & Robotics (From Robotics to Cognitive Robotics)

    Robot hardware (sensors and effectors): introduction to: Robotic Software Architectures, Subsumption architecture, Three-layer architecture, Robotic programming languages

    II Robotics Control Architectures

    Robotic Systems and Cognitive Architectures Introduction: Reactive Functionality ( Behaviors, behaviors coordination, Locomotion)

    Reactive Functionality (Sensing, range sansing)

    Deliberative Functionality: Deliberation, navigation, planning , localization and mapping (optional)

    III Huma-Robot interaction

    Human-robot interaction  

    Multi-Robot System

    PART 2

    I ROS – Robotic Operating System

    Introduction to ROS, gives you an understanding of the core underlying concepts of ROS.

    Getting Started with ROS Programming, how to work with ROS packages.

    Simulating Robots Using ROS

    Develop robotic controlling algorithms

    II Programming Humanoid Robots

    Introduction on Pepper, Social Robots. Developer Guide: NAOqi OS, First Pepper setup, How to connect Pepper to network, Download and install Aldebaran soIware: Choreographe Suite, Python in Choregraphe, Dialogue in Choregraphe

    SDK: Create an Application, Hello World, Dance Application, Interactive Application; Create an application from scratch, Using the tablet

     



    Obiettivi Agenda 2030 per lo sviluppo sostenibile

    OB_SVIL_SOS

    4000

    No

     

     

     






  • SLIDES

    • Folder icon
      Cognitive Robotics Lessons 2024 Folder
      Available from 1 March 2025