COMP329: 2017-2018

Robotics and Autonomous Systems

 

Administration

  1. Resources (this page): Course Module Web Page

  2. Syllabus: COMP329

  3. Announcements: At lectures & on my teaching pages

  4. Assessment: 100% CA

  5. Lecture Times:

  6. Mon: 10.00 - 11.00 (GHOLT-H223)

  7. Tue: 09.00 - 10.00 (GHOLT-H223)

  8. Thur: 12.00 - 13.00 (GHOLT-H223)

  9. Practical Labs

  10. Tues: 14.00 - 16.00 (Lab 5 Holt-109)

  11. Wed: 09.00 - 11.00 (Lab 5 Holt-109)

  12. Wed: 11.00 - 13.00 (Lab 5 Holt-109)

  13. Thu: 09.00 - 11.00 (Lab 5 Holt-109)

  14. Thu: 13.00 - 15.00 (Lab 5 Holt-109)

  15. Assessment Weightings: 100% from 2 assignments

Module Description

Aims:

  1. 1) To introduce the student to the concept of an autonomous agent;

  2. 2)To introduce the key approaches developed for decision-making in autonomous systems;

  3. 3)To introduce a contemporary platform for programming agents and multiagent systems;

  4. 4)To introduce the key issues surrounding the development of autonomous robots;

  5. 5)To introduce a contemporary platform for experimental robotics.


Learning Outcomes:

At the end of the module, the student will be able to demonstrate:

  1. 1)explain the notion of an agent, how agents are distinct from other software paradigms (e.g., objects), and judge the characteristics of applications that lend themselves to an agent-oriented solution;

  2. 2)identify the key issues associated with constructing agents capable of intelligent autonomous action;

  3. 3)describe the main approaches taken to developing such agents;

  4. 4)use a contemporary agent programming platform (e.g., AgentSpeak) for developing significant software or hardware-based agents;

  5. 5)identify key issues involved in building agents that must sense and act within the physical world;

  6. 6)program and deploy autonomous robots for specific tasks.

 

Approximate Syllabus:

  1. Strand 1: Strand one (2 hours lectures per week): Principles of Autonomous Agents.

  2. What is an agent

  3. Typical application areas for agent systems

  4. Abstract architectures for agents

  5. Tasks for agents; the design of intelligent agents - reasoning agents (e.g., Agent0), agents as reactive systems (e.g. subsumption architecture); hybrid agents (e.g., PRS); layered agents (e.g. Interrap)

  6. A contemporary programming language for autonomous robots (e.g., AgentSpeak).

  7. Strand 2: (1 hour lectures per week): Principles of Robotics.

  8. The sense -- decide -- act loop.

  9. Sensors: passive versus active sensors; light sensors; infra-red sensors; . . .

  10. Actuators: motors & servo motors; gearing; manipulators, . . .

  11. Movement: path planning; localisation;

  12. SLAM; . . .

  13. A contemporary experimental robotics platform (eg MINDSTORMS).


Recommended Texts

  1. An Introduction to MultiAgent Systems - Second Edition. Michael Wooldridge (Wiley, 2009)

  2. Introduction to Autonomous Mobile Robots - Second Edition. Roland Siegwart, Illah Reza Nourbakhsh and Davide Scaramuzza (MIT Press, 2011)

  3. Programming Multi-agent Systems in AgentSpeak Using Jason. Rafael H. Bordini, Jomi Fred Hubner and Michael Wooldridge (Wiley, 2007)

  4. Beginning Robotics Programming in Java with Lego Mindstorms, Wei Lu (APress / Springer 2016)


Lecture notes include material based on examples from all of the above texts.

Lecture Sets (pdf)

  1. Robotics

  2. About the course: COMP329 Introduction (1) 2018.pdf

  3. Autonomous Agents: COMP329 Agents (2-3) 2018.pdf

  4. Intro to LeJOS & EV3: COMP329 Intro to LeJOS (4) 2018.pdf

  5. Code: HelloWorld.java, SimpleDriver.java, SimpleSensor.java

  6. Perception & Odometry: COMP329 Odometry (5) 2018.pdf

  7. Code: SimplePilot.java, SimplePose.java

  8. Behavior Based Robots: COMP329 Behavior Based Robots (6) 2018.pdf

  9. Code: AvoidBehaviour.java, ForwardAvoid.java, ForwardBehaviour.java (note that to use this, you also need the code for the Simple Robot below)

  10. Threads & Multitasking in Robots: COMP329 MultiTasking in Robots (7) 2018.pdf

  11. Code: SimpleRobot.java, RobotMonitor.java, RunMonitor.java

  12. Maps & Mapping: COMP329 Maps and Mapping (8) 2018.pdf

  13. Navigation: COMP329_Lecture12.pdf

  14. Navigation in Lejos: COMP329_Lecture13.pdf

  15. Locomotion: COMP329 Locomotion (11) 2018.pdf

  16. Kinematics: COMP329 Kinematics (12) 2018.pdf

  17. Perception: COMP329-2017-Lecture7.pdf

  18. Autonomous Systems

  19. Agent Intentions: COMP329 Agents Intentions (14) 2018.pdf

  20. BDI:COMP329 BDI Agents (15) 2018.pdf

  21. AgentSpeak & Jason Intro: COMP329-2017-Lecture19.pdf

  22. AgentSpeak & Jason Advanced: COMP329-2017-Lecture20.pdf

  23. Code: mars.zip

  24. The Jason Interpreter: COMP329_Lect21.pdf

  25. Communication in Jason: COMP329_Lect22.pdf

  26. Bayesian and Markov Localization: COMP329_Lect23.pdf


Screen Casts

These video files are served from the University of Liverpool’s streaming video service.  To access the video, you will need to log in using your MWS user account.


  1. Introduction

  2. Lecture 1: 25th Sept 2017 (Intro)

  3. Lecture 2: 26th Sept 2017 (Autonomous Agents)

  4. Lecture 3: 28th Sept 2017 (Autonomous Agents / Intro to Lejos)

  5. Lecture 4: 2nd Oct 2017 (Intro to Lejos / Perception & Odometry)

  6. Lecture 5: 5th Oct 2017 (Odometry, Sensors and Behaviours)

  7. Lecture 6: 10th Oct 2017 (Threads & Multitasking)

  8. Lecture 7: 12th Oct 2017 (Maps & Mapping)

  9. Lecture 8: 16th Oct 2017 (Navigation)

  10. Lecture 9: 17th Oct 2017 (Navigation)

  11. Lecture 10: 19th Oct 2017 (Navigation in Lejos)

  12. Lecture 11: 24th Oct 2017 (Locomotion)

  13. Lecture 12: 26th Oct 2017 (Locomotion)

  14. Lecture 13: 30th Oct 2017 (Kinematics)

  15. Lecture 14: 31st Oct 2017 (Perception)

  16. Lecture 15: 6th Nov 2017 (Perception / Agent Intentions)

  17. Lecture 16: 7th Nov 2017 (Agent Intentions)

  18. Lecture 17: 9th Nov 2017 (Beliefs, Desires, Intentions)

  19. Lecture 18: 13th Nov 2017 (Beliefs, Desires, Intentions)

  20. Lecture 19: 14th Nov 2017 (Introduction to AgentSpeak)

  21. Lecture 20: 20th Nov 2017 (Introduction to AgentSpeak)


  1. Book Resources (pdf)

  2. Programming Multi-Agent Systems in AgentSpeak Using Jason (pdf)

  3. see also the Jason SourceForge site

  4. Introduction to Autonomous Robots (1st Edition pdf)

  5. Beginning Robotics Programming in Java with Lego Mindstorms


Labs 2017

  1. All the new labs are listed on the new Lab Page.


Assignment 1

  1. Details: The Details of this assignment can be found here

  2. Deadline: 3rd November at 12 noon


Assignment 2

  1. Details: The Details of this assignment can be found here

  2. Deadline: 3pm Monday 11th December