- Nazwa przedmiotu:
- Inteligentne systemy robotyczne
- Koordynator przedmiotu:
- Cezary Zieliński, WOjciech Szynkiewicz
- Status przedmiotu:
- Fakultatywny dowolnego wyboru
- Poziom kształcenia:
- Studia II stopnia
- Program:
- Informatyka
- Grupa przedmiotów:
- Przedmioty techniczne - zaawansowane
- Kod przedmiotu:
- ISR
- Semestr nominalny:
- 3 / rok ak. 2015/2016
- Liczba punktów ECTS:
- 4
- Liczba godzin pracy studenta związanych z osiągnięciem efektów uczenia się:
- Realizacja przedmiotu obejmuje następujące formy zajęć:
- wykład prowadzony w wymiarze 2 godz. tygodniowo,
- zajęcia laboratoryjno-projektowe; w ramach tych zajęć student specyfikuje, a następnie implementuje oprogramowanie sterujące lub symulujące pracę robota – powstające problemy projektowe omawiane są w trakcie konsultacji
Bilans nakładu pracy przeciętnego studenta wygląda następująco:
- udział w wykładach: 15 x 2 godz. = 30 godz.,
- przygotowanie do kolejnych wykładów (przejrzenie materiałów z wykładu i dodatkowej literatury, próba rozwiązania miniproblemów sformułowanych na wykładzie): 5 godz.
- udział w konsultacjach związanych z realizacją projektu: 2 godz. + 2 x 1 godz. = 4 godz. (zakładamy, że wstępne przedyskutowanie tematu projektu wymaga 2 godz. konsultacji, a ponadto z konsultacji 2 razy w semestrze po 1 godzinie),
- realizacja zadań projektowych oraz opracowanie sprawozdania: 45 godz.
- przygotowanie do kolokwium (rozwiązanie zadań przedkolokwialnych, udział w konsultacjach przedkolokwialnych): 8 godz. + 1 godz. = 9 godz.
- przygotowanie do egzaminu (rozwiązanie zadań przedegzaminacyjnych) oraz obecność na egzaminie: 10 godz. + 3 godz. = 13 godz.
Łączny nakład pracy studenta wynosi zatem: 30 + 5 + 4 + 45 + 9 + 13 = 106 godz., co odpowiada ok. 4 punktom ECTS.
- Liczba punktów ECTS na zajęciach wymagających bezpośredniego udziału nauczycieli akademickich:
- Nakład pracy związany z zajęciami wymagającymi bezpośredniego udziału nauczycieli akademickich wynosi 30 + 5 + 3 = 38 godz., co odpowiada ok. 1.5 punktom ECTS (jeśli nie dopuszczamy wartości ułamkowych, to należy przyjąć 1 lub 2 punkty ECTS).
- Język prowadzenia zajęć:
- polski
- Liczba punktów ECTS, którą student uzyskuje w ramach zajęć o charakterze praktycznym:
- Nakład pracy związany z zajęciami o charakterze praktycznym wynosi 4 + 45 = 49 godz., co odpowiada ok. 2 punktom ECTS
- Formy zajęć i ich wymiar w semestrze:
-
- Wykład30h
- Ćwiczenia0h
- Laboratorium15h
- Projekt0h
- Lekcje komputerowe0h
- Wymagania wstępne:
- Wstęp do robotyki
- Limit liczby studentów:
- 30
- Cel przedmiotu:
- Cel:
- ukształtowanie umiejętności projektowania struktur układów sterowania systemów jedno- i wielorobotowych
- zapoznanie studentów z podstawowymi metodami programowania i sterowania robotów
- ukształtowanie podstawowych umiejętności w zakresie projektowania układów nawigacji robotów mobilnych
- Treści kształcenia:
- Celem przedmiotu jest zapoznanie z zaawansowanymi problemami planowania działań, programowania i sterowania autonomicznych robotów. Wykład składa się z dwóch części. W pierwszej omawiane są zagadnienia samo-lokalizacji robota mobilnego w znanym lub częściowo nieznanym środowisku wewnętrznym, planowania ścieżek ruchu oraz tworzenia map środowiska na podstawie informacji uzyskiwanej za pomocą czujników położenia, zbliżeniowych, odległości, kamer cyfrowych. Przedstawiane są głównie podejścia zakładające niepewność danych pomiarowych - wykorzystujące modele i metody probabilistyczne oraz stochastyczne. Prezentowane są wybrane metody i algorytmy samo-lokalizacji robota, budowy mapy otoczenia i planowania ścieżek ruchu. W drugiej części omawiane są metody konstruowania oprogramowania sterującego tego typu robotami oraz ogólne metody programowania robotów. Omawiane są zarówno specjalizowane języki programowania robotów jak i programowe struktury ramowe (biblioteka modułów programowych wraz ze wzorcem ich użycia). Jako przykład takiej struktury omawiany jest MRROC++, który wykorzystywany jest w Laboratorium Robotyki. Ponadto przedstawiane są systemy: reaktywne, behawioralne oraz rozmyte z punktu widzenia sterowania w systemach wieloagentowych. Poruszane są także zagadnienia związane z implementacją takich systemów.
Zadania laboratoryjne polegające na programowej implementacji oraz symulacji działania wybranych algorytmów m.in. samo-lokalizacji robota, budowy map otoczenia, planowania ścieżki oraz sterowania reaktywnego, behawioralnego, deliberacyjnego. Do realizacji projektów wykorzystane będą dane z rzeczywistych czujników takich jak: skaner laserowy, kamery cyfrowe, czujniki zbliżeniowe.
Treść wykładu:
1. Podstawowe pojęcia matematyczne. Prawdopodobieństwo warunkowe, reguła Bayesa, zmienne losowe, procesy Markowa.
2. Zadanie nawigacji robota mobilnego. Sformułowanie problemów: samo-lokalizacji robota, planowania ścieżki ruchu, konstruowania map otoczenia.
3. Podejście do lokalizacji robota wykorzystujące łańcuchy Markowa. Model czujnika i model działania. Model środowiska - ,,siatki zajętości'', drzewa binarne, czwórkowe, itp.
4. Metody losowe w zadaniu lokalizacji robota. Metody Monte Carlo, filtry cząsteczkowe.
5. Budowa mapy otoczenia na podstawie danych z czujników. Mapy geometryczne i topologiczne, hybrydowe. Metody i algorytmy tworzenia map środowiska.
6. Planowanie ruchu robota. Sformułowanie problemu planowania. Metody i algorytmy planowania ścieżki ruchu: metody geometryczne i topologiczne.
7. Metody probabilistycznych map drogowych w planowaniu ścieżek.
8. Metody programowania robotów. Ogólne wprowadzenie. Programowanie a struktura układu sterowania. Metody ff-line i on-line. Klasyfikacja języków programowania robotów.
9. Specjalizowane języki programowania robotów. Przegląd zagadnień i języków.
10. Programowe struktury ramowe. Przegląd zagadnień i struktur tego typu. Sposoby przetwarzania programowych struktur ramowych i języków programowania.
11. Systemy wieloagentowe. Struktura agenta, formalizacja opisu działania agenta za pomocą funkcji przejścia.
12. Systemy reaktywne. Agenty współdziałające i agenty rywalizujące, implementacja.
13. Systemy behawioralne. Rodzaje zachowań, implementacja.
14. Systemy rozmyte. Zbiory rozmyte, wykorzystanie do sterowania agentów upostaciowionych.
15. Środowisko MRROC++. Wprowadzenie. Sposoby wykorzystania MRROC++ do budowy systemów wielorobotowych.
- Metody oceny:
- Sprawdzanie założonych efektów kształcenia realizowane jest przez:
- ocenę wiedzy i umiejętności związanych z realizacją zadań projektowych – ocenę sprawozdań z realizacji projektu (zadań projektowych),
- ocenę wiedzy i umiejętności wykazanych na kolokwium i egzaminie pisemnym o charakterze problemowym (na kolokwium i egzaminie student może korzystać z dowolnych materiałów dydaktycznych)
- formatywną ocenę związaną z rozwiązaniem zadań przedkolokwialnych i przedegzaminacyjnych, a także z interaktywną forma prowadzenia wykładu
- Egzamin:
- tak
- Literatura:
- 1. Inteligencja wokół nas. Współdziałanie agentów softwareowych, robotów, inteligentnych urządzeń. Red.: S. Ambroszkiewicz, A. Borkowski, K. Cetnarowicz, C. Zieliński. Akademicka Oficyna Wydawnicza EXIT, Warszawa 2010. Monografie
Komitetu Automatyki i Robotyki Polskiej Akademii Nauk. Tom 15.
2. W. Szynkiewicz: Nawigacja robotów autonomicznych,. rozszerzony konspekt wykładu (dostępny na stronie internetowej przedmiotu).
3. Artificial Intelligence and Mobile Robots', Ed. D. Kortenkamp, R. P. Bonasso, R. Murphy, MIT Press, 1998.
- Witryna www przedmiotu:
- https://studia.elka.pw.edu.pl/priv/10Z/ISR.A/ISR_priv.html
- Uwagi:
- brak
Efekty uczenia się
Profil ogólnoakademicki - wiedza
- Efekt ISR_W
- Student będzie posiadał wiedzę na temat: nawigacji robota mobilnego; lokalizacji robota wykorzystujące łańcuchy Markowa; metod losowych w zadaniu lokalizacji robota; budowy mapy otoczenia na podstawie danych z czujników; planowania ruchu robota; metod probabilistycznych map drogowych w planowaniu ścieżek; metod programowania robotów; specjalizowanych języków programowania robotów; programowych struktur ramowych; systemów wieloagentowych w robotyce; systemów reaktywnych, behawioralnych i rozmytch; środowiska programowego MRROC++
Weryfikacja: egzamin, kolokwium, sprawozdanie z projektu
Powiązane efekty kierunkowe:
K_W04
Powiązane efekty obszarowe:
T2A_W02
Profil ogólnoakademicki - umiejętności
- Efekt ISR_U
- Student, który zaliczył przedmiot, potrafi: zaprojektować: strukturę układu sterowania systemu wieloobrotowego wraz ze specyfikacją jego zachowania za pomocą funkcji przejścia; opracować i zaimplementować algorytm nawigacji robota mobilnego; wykorzystać programową strukturę ramową do tworzenia oprogramowania sterującego systemem wielorobotowym; dobrać właściwą metodę projektowania do postawionego zadania projektowego; pozyskać informacje z literatury
Weryfikacja: sprawozdanie z projektu, kolokwium, egzamin
Powiązane efekty kierunkowe:
K_U01, K_U04, K_U12
Powiązane efekty obszarowe:
T2A_U01, T2A_U05, T2A_U17
Profil ogólnoakademicki - kompetencje społeczne
- Efekt ISR_K
- Student, który zaliczył przedmiot, potrafi pracować indywidualnie i w zespole
Weryfikacja: projekt realizowany jest w zespołach dwuosobowych
Powiązane efekty kierunkowe:
K_K01
Powiązane efekty obszarowe:
T2A_K06