- Docente: Andrea Roli
- Crediti formativi: 6
- SSD: ING-INF/05
- Lingua di insegnamento: Italiano
- Modalità didattica: Convenzionale - Lezioni in presenza
- Campus: Cesena
- Corso: Laurea Magistrale in Ingegneria e scienze informatiche (cod. 8614)
Conoscenze e abilità da conseguire
Al termine del corso, lo studente possiede le competenze che permettono di progettare un sistema costituito da uno o più agenti robotici (ove si intende per agente robotico un dispositivo fisico che elabora informazioni acquisite dall'ambiente e agisce su di esso in modo autonomo). In particolare, lo studente possiede le conoscenze relative ai modelli, ai metodi, alle architetture e agli strumenti principali per la programmazione di agenti robotici dotati di significative capacità computazionali e cognitive.
Contenuti
Introduzione alla robotica
- Concetti di robot e suo comportamento in un ambiente
fisico
- Introduzione alle principali problematiche nella progettazione
di sistemi robotici
Sistemi dinamici complessi: definizioni e nozioni preliminari -
propedeutici agli argomenti di robotica
- Definizioni e concetti preliminari (sistema, modello,
dinamica, ecc.)
- Sistemi dinamici discreti (concetti di spazio delle fasi e degli
stati, traiettoria, attrattore, biforcazione, transizione di fase,
caos)
- Esempi: automi cellulari, reti booleane
Metodi, approcci ed esempi rilevanti per la progettazione
di agenti e robot
- Behavior-Based Robotics
- The Subsumption Architecture
- Artificial Evolution and Artificial Life
- Progettazione automatica di programmi per robot
- Approfondimenti ed esempi (e.g., nozioni di embodiment,
sensory-motor coordination e nicchie)
- Logica fuzzy e sistemi fuzzy
Apprendimento in robotica
- Apprendimento per rinforzo
- Reti neuronali per il controllo di robot
Pianificazione in robotica
- Algoritmi di ricerca informata. A* e sue varianti per problemi
di path planning
- STRIPS e sue estensioni
- Pianificazione nonlineare
Attività di laboratorio
- Esperimenti con simulatori di sistemi robotici
Testi/Bibliografia
Il testo principale usato nel corso è: R. Pfeifer and C. Scheier,
"Understanding intelligence", The MIT Press, 1999.
Saranno, inoltre, utilizzate parti dei seguenti testi:
R. Pfeifer and J. Bongard, "How the body shapes the way we think",
The MIT Press, 2007
M. Mataric, "The Robotic Primer", The MIT Press, 2007.
Metodi didattici
Il corso prevede lezioni frontali in aula e attività di laboratorio. Le attività di laboratorio saranno strutturate in modo da permettere allo studente di applicare le conoscenze acquisite durante le lezioni frontali e negli insegnamenti collegati al presente corso.
Modalità di verifica e valutazione dell'apprendimento
L'esame di fine corso ha l'obiettivo di valutare il raggiungimento dei principali obiettivi formativi, cioè la conoscenza dei metodi e dei principali esempi di programmazione di robot e la capacità di progettare un sistema robotico in grado di svolgere compiti significativi. La verifica avviene mediante la presentazione e discussione di una relazione riguardante un progetto sviluppato dagli studenti (anche in piccoli gruppi e su temi collegati ad altri insegnamenti) e la discussione di argomenti presentati durante il corso. I principali criteri di valutazione riguardano la conoscenza degli argomenti trattati nel corso, la metodologia seguita durante il progetto e il rigore scientifico.
Strumenti a supporto della didattica
Nel corso sarà utilizzato materiale didattico fornito dal docente (lucidi e articoli tratti da riviste e convegni). Inoltre, le attività di laboratorio prevedono l'utilizzo di simulatori robotici (e.g., ARGoS) e, ove possibile, di robot reali.
Link ad altre eventuali informazioni
http://apice.unibo.it/xwiki/bin/view/Courses/
Orario di ricevimento
Consulta il sito web di Andrea Roli