bild
School of
Electrical Engineering
and Computer Science

Robotics and autonomous systems

Presentation / Competiion May 15 at 9am

The robots built by the robot will compete against each other on May 15 from 9am in the atrium in the main building, Osquars Backe 2.

Intro

This course is an advanced course in computer science focusing on the broad, inter-disciplinary field of robotics where the students build and program an autonomous robot.

Aim

After the course the student should be able to
  • describe basic concepts and technologies in the broad and interdisciplinary field of robotics,
  • describe the possibilities and limitations for robot technology of today
  • analyze a technical problem from a holistic viewpoint
  • develop a strategy for solving and solve a problem using available methods and tools
  • make descisions based on acquired knowledge
  • assess quality of own work and work by others
  • work in a project setting
  • communicate knowledge - orally and in writing

Course description

The course is divided into two parts, one that covers theory (lectures and lab) and one for practice (project).

Theory

The theoretical part of the course deals with fundamental concepts in robotics, kinematics and navigation. This part of the course consists mainly of the lectures and a lab assignment.

We will try to avoid too much of the normal teacher-speaks, students-listen paradigm for the lectures and instead discuss the different topics in the book together. The lectures will therefore more be like a combination of seminar and workshop. There are several reasons for this. The assumption is that everyone has read the material before each meeting and thus comes prepared. The goal with each meeting is that everyone gets a chance to get their questions answered so that we leave knowing what is required to know about that topic in the course. This promotes a deeper approach to learning and allows us to use the time together more efficiently than simply reciting the book.

One group of students will prepare the material for each gathering and present it during the first 30 min approximately. As you can imagine 30min is not that much and there is no way that all the material can be covered in that time. You are therefore required to sit down and discuss within the presenting group what the most important parts of the material are and the things that are hard to understand. Splitting the material in equal sized sections and making slides for one section each is thus not an appropriate strategy.

Every student attending the lecture is supposed to have read the material dealt with and should produce a one page reflection on the material. Writing the reflection helps you actively work with the material and think about what it is that you are reading and reason about how it relates to what you already know, want to know and want to do in the project later. The reflection should thus ideally not just be a summary of the material but rather something more processed than that. Knowledge becomes much more useful when it is connected between different domains and subjects. You should also collect the questions that you got when reading the material and write these down together with the relfection.

After the student presentation you will be divided into groups and you will be given about 30min to read each others reflections and then discuss the material within the group. This is an excellent time to try to get your questions answered. Each group should appoint one person as a secretary. He/she is responsible for writing down any questions that remain unanswered after the lecture and send these to the psot-lecture team.

The post-lecture team is responsible for finding answers to the questions that were left unanswered during the lectures, as reported by the secretary of each discussion group. The answers should be made available to the class no later than a week after class by sending an pdf document with the questions and answers to the lecturer who will post it on the webpage. It is likely that there will be similar questions from many groups. You are supposed to condense the material by combining such similar questions so that the final document does not grow too large. This also means that you cannot simply split the questions and work alone, you need at least to do the initial clustering together first.

Note that the lectures are supposed to be an instrument for learning and not assessment. You are required to participate actively in the lectures and related activities but what you do does not affect your grade (other than pass/fail). The lectures situtation is thus a "safe" environment where no question is too simple or stupid and learning is the only goal. The assessment of your knowledge for grading comes at the exam.

The lectures and the project will mostly deal with mobile robotics. However, a large part of industrial robotics today deals with industrial robots, i.e. manipulators. There will be one lab during the course where you will gain some experience with working a simulated robot arm.

Practice

During the course a small, mobile, autonomous robot for performing a certain task is built. This work is carried out as a project. The participants in the course work in groups on the practical implementation of a specific behaviour of this simple robot by integration of mechanisms for sensing, perception, planning and control of actions on the robot. At the end of the course there is a contest between the robots that the participants have constructed to assess the strength and weaknesses of different approaches.
Course labs:
1535 (Computers, maze and soldering)
1621 (small workshop)

The task to perform may vary from year to year. Over the last years the groups have build robots that play hockey and football and navigate through a maze to do search and rescue. You will most likely spend most of the time working on the project. For many students this is the first time that they get to apply a lot of the knowledge that they have acquired over the years at KTH or elsewhere. The project also offers a chance to work with an open-ended problem that offers a challenge beyond that of a typical lab or project. You need to plan the work, build the mechanics, design the algorithms, program low and high level and evaluate the result. The project thus gives you a chance to see something come to life from the drawing board to an experimental prototype.

You will be divided into groups depending on your skills and your availability so that the groups will be balanced. Availability here refer to how many other conflicting activities you have. One more course is not a big problem but experience shows that students that try to combine working on the robotics project with 3-4 other courses gets very impopular with the rest of the group.

The project groups are encouraged to make a project plan before they start the project work. You should appoint one person as project leader. He is the point of contact between the group and the course leaders.

Each student is required to keep a log of how much time s/he spends on the project work and doing what. Estimating how much time something will take is one of the hardest parts in real life engineering and this will an instrument for self-reflection at the end of the course. See assigments in BILDA for more info.

Towards the end of the course the project work should be documented in a project report. The report should be written as a technical report. It should be submitted as a pdf and be accompanied with the source code from the project in a zip- or tar-file. A draft version of the report should be handed in for peer-review by other students. That is the draft version that is peer-reviewed is not graded. The grading of the report will be done on the final report where you have had a chance to take comments into account. See assigments in BILDA for more info.

The idea with the per-review is that you get to practice assessing the qualtity of a report and work in general of others. This is an important skill at most future jobs. The reviews are part of the assessment for the final grade. The review will be read by another group so be constructive and avoid personal attacks. Also rememeber that the review should not only contain an account of weaknesses but also of strengths. The review itself should be a written document in pdf-format. Grammatic errors and typos are maybe best dealt with using a tool like Adobe Acrobat or PDF-XChange_Tools which is a free version that is compatible with teh Acrobat comments. The latter tool work well under linux through Wine. Just install the portable version and start the app under Wine (in Ubuntu 8.10 at least it works without any extra configuration). See assigments in BILDA for more info.

At the end of the course each student is required to hand in a self-reflection that discusses her/his work in the project. What did you spend time on? Did it take as much time as planned? Did you learn what you set out to learn? The aim again is to make ytou think about the learning. This document should also contain what you think is an appropriate grade for you own work in the course with a motivation. See assigments in BILDA for more info.

You are also required to produce a document where you reflect on the work by the group. How did the group work together? Did you follow the project plan? If not why? Was something harder/easier than planned? See assigments in BILDA for more info.

For the past 3 years or so we have been using the Eyebot microcontroller. This year we will switch to an FPGA based system designedby Jorge Sanchez de Nova. The new platform will feature about 10 times the processing power and a richer set of sensors. To keep in mind though is that this is the first year the platform is used, and as with all new developments there might be things that need to be adapted. Your feedback is therefore very important during the course.

Learning statement

Before the project part of the course each student is required to produce a document where s/he discusses what s/he wants to learn more by the end of the course. Again this is to make you actively think about the learning. Each student come into the course with a different background, different skills and thus it is likely that you will want to learn different things. After the course you will produce a document where you reflect one what you did learn and how that relected to what you wanted to learn.

Course book

The course book is "Introduction to Autonomous Mobile Robots" by Roland Siegwart and Illah R. Nourbakhsh" published by the MIT Press.

There is a page with the answer to some questions around some of the equations etc in the book to be found here.

Requirements

The requirements for passing the course are
  • Individual
    • Write a (approx 0.5-1 page) statement about what you hope to learn in the course.
    • Write a reflection on the material to be discuessed at the lecture plus some issues/question to disucss. You should bring 5 copies of it to the lecture (one for the teacher).
    • Active participation in the lectures (except the first one) (you are allowed to miss one without having to compensate for it)
    • Prepare a lecture together with 2 or 3 other students or be part of a post-lecture team to find answers to unanswered questions.
    • Keep a log of the time you spend and on what in the project. Granularity should be hours per days (at least).
    • Read and comment report and assess quality of the report and work of another group. (See assignment in BILDA)
    • A reflection (1 page typically) on your work in the course. Did you learn what you wanted? What did you spend time on (account for the time you spent)? (See assignment in BILDA)
    • A reflection (1 page typically) on the work within the group. What worked within the group? What did not? Could you have planned something differently? (See assignment in BILDA)
  • In groups of two
  • In project group of 4
    • Project plan. You should explicitly address the issue of level of ambition and amount of work individuals want to put down.
    • Solve the project task
    • Write a report (See assignment in BILDA)
    • Present the project work in debriefing meeting after the competion

Grading

The grade on the course is given by a holistic overall assessment of the work you performed in the course. The grade may not be the same for all member in the project groups. It is fine if different group member have different leves of ambition, that will always be the case to some extent, you need to discuss this in the group openly.

Schedule

Date Time Location Material covered Download
Wed, 14 jan 10:00-12:00 D41 L0: Course introdction
Chapter 1 (Patric)
course intro
robotics intro
Mon, 26 jan 10:00-12:00 D34 L1: Locomotion
Chapter 2
-
Mon, 2 feb 10:00-12:00 D34 L2: Kinematics
Chapter 3
-
Wed, 4 feb 10:00-12:00 Q26 L3: Sensors except vision
4.1 -> 4.1.7
-
Mon, 9 feb 10:00-12:00 D34 L4: Vision and features
the rest of Ch 4
-
Wed, 11 feb 10:00-12:00 Q26 L5: Localization
Chapter 5 except 5.8
focus on finding robot position
-
Wed, 18 feb 10:00-12:00 V35 L6: Mapping and representations
Chapter 5, start 5.8
focus on mapping and map representations
-
Wed, 25 feb 10:00-12:00 V35 L7: Planning and navigation
Chapter 6
-

Following this link to make your choice of lecture to present or answer questions on.

Important Dates

See Bilda for more information
Spec Date, time (and place)
Exam: Q33, Q34 Mon, 9 mar, 14:00-18:00
Learning statement due March 16 (pdf!!)
Milestone 1 March 30, 9-11
Milestone 2 April 21, 14-17
Milestone 3 May 7, 9-12
Competition May 15, 9-14
atrium main building
Project presentations and debriefing May 15, after competition
Draft Reports due May 17, 17:00 (pdf in BILDA!!)
Report review due May 22, 17:00 (pdf in BILBA!)
Final reports due May 29, 17:00 (pdf in BILDA!)
Self-reflection due May 29, 17:00 (pdf in BILDA!)
Reflection on group work due May 29, 17:00 (pdf in BILDA!!)

Contact

If you have any questions regarding the course you can contact
Copyright © Published by: Patric Jensfelt <patric@nada.kth.se>
Updated 2009-05-12