Autonomous Multirobot Systems Course
Contents
- 1 Autonomous Multirobot Systems 2015
- 1.1 Important Announcements
- 1.2 Course Overview
- 1.3 Who the Course is For
- 1.4 Student Responsibilities
- 1.5 Course Logistics
- 1.6 Research Presentations
- 1.7 Grading
- 1.8 Plagiarism
- 1.9 Week 1
- 1.10 Week 2
- 1.11 Week 3
- 1.12 Week 4
- 1.13 Week 5
- 1.14 Week 6
- 1.15 Week 7
- 1.16 Week 8
- 1.17 Week 9
- 1.18 Week 10
- 1.19 Spring Break
- 1.20 Week 11
- 1.21 Week 12
- 1.22 Week 13
- 1.23 Week 14
- 1.24 Week 15
- 1.25 Finals Week
Autonomous Multirobot Systems 2015
Important Announcements
New:
- Be sure to bring laptop to class
- Please sign up with piazza for this course: [piazza.com]
- Project 1A description 2015_Project_1A due Friday January 23 at 11:55PM
- Project 1B description 2015_Project_1B due Friday February 6 at 11:55PM
- Research Presentation Overview 2015_Research_Presentation
- Example presentation: Media:Example-presentation.pptx
- Project 2 description 2015_Project_2 due Friday February 27 at 11:55PM
- Project 3 description 2015_Project_3 due Tuesday March 10 at 11:55PM
- Project Final description 2015_Project_Final due Thursday March 12 at 11:55PM
Course Overview
We will survey the inspiration and motivation for multirobot systems, the unique challenges in this field and the wide range of solutions developed thus far. Students will learn about the theoretical and algorithmic aspects of multi-agent and multi-robot systems, including communication, coordination and cooperation. This is a "hands-on" class requiring the students to develop and evaluate their own simulated multirobot system. Autonomous MultiRobot Systems is a graduate course, but undergraduate students with strong programming skills and a background in robotics or AI are welcome.
Topics to be covered:
- Multiagent architectures.
- Communication, cooperation and coordination in mulitrobot systems.
- Diversity.
- Taxonomies of multirobot systems and tasks.
- Adversarial domains including robot soccer.
- Example biological multiagent systems.
- Multirobot learning.
Who the Course is For
The course is open to and intended for graduate and upper level undergraduate students in Computer Science and Engineering
Prerequisites: Students should have strong programming skills and some familiarity with Linux. Here's a short test to check if you have strong programming skills: quiz. If you don't do well on that quiz, you should either drop the course, or be sure to plan so that you can devote extra time to the course.
Student Responsibilities
- Read the emails sent to the course email list. Check at least daily.
- Participate in class and via the piazza site.
- Don't plagiarize.
Course Logistics
- Instructor: Associate Professor Tucker Balch
- Office hours: Tu/Th 1:30-2:30 (after class) or by appointment
- firstname at cc.gatech.edu
- phone 678-523-8685
- TA for Python issues:
- Arindam Bose,
- Office hours: 1.30-3.30 Tuesday outside class.
- TA for C and other issues:
- Jayita Bhattacharya
- Office hours: Wednesday 4:00-5:00 at CCB commons
Research Presentations
Visit this page for details on the research presentation component of this course: Multirobotics Course Research Presentations
Grading
- 70%: Projects
- 10%: Project 1: Drunken Sailor
- 10%: Project 2: ASCII Soccer
- 10%: Project 3: Herds and flocks
- 10%: Project 4: Predator / Prey
- 30%: Final Project
- 20%: Presentations
- 15% Best one
- 5% Other one
- 10%: Class participation/pop quizzes
- Drop worst 2
Late policy: -5% per day late
Plagiarism
Unless specifically stated otherwise I expect all code that you submit was written by you. I will present some libraries in class that you are allowed to use. Otherwise, all source code, images and write ups you provide should have been created by you alone.
What is allowed:
- Meeting with other students to discuss implementations. You should talk about solutions at the pseudo code level.
- Sharing snippets of code to solve specific (small) problems such as examples of how to address sections of arrays in Python. In this case the shared code should not be more than 5 lines.
- Searching the web for other solution outlines that you may draw on (but not copy directly). If you are inspired by a solution on the web, you MUST cite that code with comments in your code.
What is not allowed:
- Copying sections of code longer than 5 lines. Note that merely changing variable names does not suffice.
- Copying code from the web.
- Use of ideas from the web that are not cited in comments.
Week 1
Tuesday, 6 January, 2015
Course overview and intro
Definition of autonomy (NASA Video)
Example of multi agent coordination (Harvard Video)
Drunken Sailor description
Thursday 8 January 2015
Intro and discussion of ASCII Soccer
How does sensing affect necessity for diversity?
Week 2
Tuesday, 13 January, 2015
Introduction to the deliberative/reactive dichotomy
AI winter
Gray Walter
First intro to reactive robotics
Thursday 15 January
Class cancelled
Week 3
Tuesday 20 Jan
Overview and discussion of sailor project (no memory)
Bug algorithms: [by Howie Choset]
Thursday 22 Jan
Overview and discussion of sailor project (memory)
Build a map
Week 4
Tuesday 27 Jan
Lecture by Brian Hrolenok.
Slides here
Slides on Reynold's Boids here
Thursday 29 Jan
Motor Schema Based Navigation (Arkin)
See especially section 4: AuRA: Principles and Practice in Review
Week 5
Tuesday 3 Feb
Motor Schemas Case Study: See Chapter 6 Balch Thesis
Motor Schema Formulations: See Appendix Balch Thesis
Thursday 5 Feb
Reinforcement Learning: Section 1, 3.1, 4.2, 5.2 Kaelbling Littman Moore
Week 6
Tuesday 10 Feb
Balch presents example presentation
- LaValle, Steven M. "Rapidly-Exploring Random Trees A Цew Tool for Path Planning." (1998). [[1]]
- Bruce, James, and Manuela Veloso. "Real-time randomized path planning for robot navigation." Intelligent Robots and Systems, 2002. IEEE/RSJ International Conference on. Vol. 3. IEEE, 2002. [[2]]
Thursday 12 Feb
- Arindam presents Python framework
Week 7
Tuesday 17 Feb
Team 1: Robot Soccer +5
- Primary paper: Biswas, Joydeep, et al. "Opponent-driven planning and execution for pass, attack, and defense in a multi-robot soccer team." Proceedings of the 2014 international conference on Autonomous agents and multi-agent systems. International Foundation for Autonomous Agents and Multiagent Systems, 2014. http://www.cs.cmu.edu/~mmv/papers/14aamas-cmdragons.pdf
- Veloso, Manuela, Peter Stone, and Kwun Han. "The CMUnited-97 robotic soccer team: Perception and multi-agent control." Robotics and Autonomous Systems 29.2 (1999): 133-143. https://www.cs.utexas.edu/~pstone/Papers/bib2html-links/RAS99.pdf
- Wu, Shih-Lin, et al. "A Multi-agent Algorithm for Robot Soccer Games in Fira Simulation League." FIRA RoboWorld Congress USA. 2007. http://robogames.net/symposium/2007/07-118-Wu-ChangGungUniv-Multi-agentAlgorithmforRobotSocce.pdf
Team 2: Flocking, Herding Swarming +5
- Primary paper: Reynolds, Craig W. "Flocks, herds and schools: A distributed behavioral model." ACM Siggraph Computer Graphics 21.4 (1987): 25-34. http://www.cs.toronto.edu/~dt/siggraph97-course/cwr87/
- Moeslinger, Christoph, Thomas Schmickl, and Karl Crailsheim. "A minimalist flocking algorithm for swarm robots." Advances in Artificial Life. Darwin Meets von Neumann. Springer Berlin Heidelberg, 2011. 375-382. http://www.researchgate.net/profile/Thomas_Schmickl/publication/221531179_A_Minimalist_Flocking_Algorithm_for_Swarm_Robots/links/09e41507eadaa2b0cd000000.pdf
- Couzin, Iain D., et al. "Effective leadership and decision-making in animal groups on the move." Nature 433.7025 (2005): 513-516. http://www.uvm.edu/~pdodds/files/papers/others/2005/couzin2005.pdf
Check out this video: https://www.facebook.com/video.php?v=1087180774641291&fref=nf
Thursday 19 Feb
Team 6: Ant Navigation & Stigmergy +5
- Primary Paper: Beckers, Ralph, O. E. Holland, and Jean-Louis Deneubourg. "From local actions to global tasks: Stigmergy and collective robotics." Artificial life IV. Vol. 181. 1994. http://www.eecs.harvard.edu/~rad/courses/cs266-fall04/papers/beckers-alife94.pdf
- Beckers, Ralph, Jean-Louis Deneubourg, and Simon Goss. "Trails and U-turns in the selection of a path by the ant Lasius niger." Journal of theoretical biology 159.4 (1992): 397-415. http://www.eecs.harvard.edu/~rad/courses/cs266/papers/beckers-uturns.pdf
- Wehner, Rudiger. "Desert ant navigation: how miniature brains solve complex tasks." Journal of Comparative Physiology A 189.8 (2003): 579-588. http://www.mnf.uni-greifswald.de/fileadmin/Zoologisches_Museum/Hildebrandt/Dokumente/wehner03.pdf
Team 10: Honeybee Communication +5
- Primary paper: C. Grüter and W. Farina, The honeybee waggle dance: can we follow the steps?, Trends in Ecology & Evolution, vol. 24, no. 5, pp. 242-247, 2009.
- Bartholdi, T. Seeley, C. Tovey and J. Vate, The Pattern and Effectiveness of Forager Allocation Among Flower Patches by Honey Bee Colonies, Journal of Theoretical Biology, vol. 160, no. 1, pp. 23-40, 1993. http://www.sciencedirect.com/science/article/pii/S0022519383710027
- S. Nakrani and C. Tovey, From honeybees to Internet servers: biomimicry for distributed management of Internet hosting centers, Bioinspir. Biomim., vol. 2, no. 4, pp. S182-S197, 2007. http://iopscience.iop.org/1748-3190/2/4/S07
- M. Beekman, G. Sword and S. Simpson, Biological Foundations of Swarm Intelligence, in Swarm Intelligence, 1st ed., C. Blum and D. Merkle, Ed. Berlin: Springer-Verlag, 2008, pp. 3-42.
Week 8
Tuesday 24 Feb
- Recap of Project 2: Communication in Robot Soccer
- Overview of Project 3: Flocking and Herding
Team 9: Robot Formation Control
- Balch, Tucker, and Ronald C. Arkin. "Behavior-based formation control for multirobot teams." Robotics and Automation, IEEE Transactions on 14.6 (1998): 926-939. http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=736776
- Ji, Meng, Abubakr Muhammad, and Magnus Egerstedt. "Leader-based multi-agent coordination: Controllability and optimal control." American control conference. 2006. http://users.ece.gatech.edu/~magnus/Papers/JiEgerstedtMuhammadACC06.pdf
- Lewis, M. Anthony, and Kar-Han Tan. "High precision formation control of mobile robots using virtual structures." Autonomous Robots 4.4 (1997): 387-403.
http://link.springer.com/article/10.1023/A:1008814708459
Thursday 26 Feb
Team 3: Self Assembly and Modular Robotics 1
- White, P. J., Kris Kopanski, and Hod Lipson. "Stochastic self-reconfigurable cellular robotics." Robotics and Automation, 2004. Proceedings. ICRA'04. 2004 IEEE International Conference on. Vol. 3. IEEE, 2004. http://creativemachines.cornell.edu/papers/ICRA04_White.pdf
- Tolley, Michael T., et al. "Stochastic modular robotic systems: a study of fluidic assembly strategies." Robotics, IEEE Transactions on 26.3 (2010): 518-530. http://creativemachines.cornell.edu/sites/default/files/T-RO_2010_Tolley.pdf
- Tolley, Michael T., Jonathan D. Hiller, and Hod Lipson. "Evolutionary design and assembly planning for stochastic modular robots." New Horizons in Evolutionary Robotics. Springer Berlin Heidelberg, 2011. 211-225. http://www.michaeltolley.com/publications/IROS_2009_Tolley.pdf
Team 4: Self Assembly and Modular Robotics 2
- Yim, Mark, et al. "Modular self-reconfigurable robot systems [grand challenges of robotics]." Robotics & Automation Magazine, IEEE 14.1 (2007): 43-52. http://ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=4141032&tag=1
- J.W. Romanishin, K. Gilpin, and D. Rus, “M-Blocks: Momentum Driven, Magnetic, Modular Robots,” in 2013 IEEE/RSJ Conference on Intelligent Robots and Systems (IROS)., Tokyo, Japan, 2013, pp. 4288 - 4295 http://ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=6696971
- Felton et al., “Robotic Self – Assembly by Folding: A Printed Inchworm Robot,” in 2013 IEEE/RSJ Conference on Robotics and Automation (ICRA)., Karlsruhe, Germany, 2013, pp. 277 - 282 http://ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=6630588
Friday 27 Feb
Drop day
Week 9
Tuesday 3 March
Team 11: Path planning for robot teams: Cooperative/Deliberative
Team 8: Optimal Task Allocation
Thursday 5 March
Team 7: Multi-robot team learning
Team 5: Coordinated control for sensing
Week 10
Tuesday 10 March
Topic 1
Topic 2
Thursday 12 March
Topic 1
Topic 2
Spring Break
Monday 16 March - Friday 20 March
Week 11
Tuesday 24 March
Topic 1
Topic 2
Thursday 26 March
Topic 1
Topic 2
Week 12
Tuesday 31 March
Topic 1
Topic 2
Thursday 2 April
Topic 1
Topic 2
Week 13
Tuesday 7 April
Topic 1
Topic 2
Thursday 9 April
Topic 1
Topic 2
Week 14
Tuesday 14 April
Topic 1
Topic 2
Thursday 16 April
Topic 1
Topic 2
Week 15
Tuesday 21 April
Topic 1
Topic 2
Thursday 23 April
Topic 1
Topic 2
Finals Week
27 April - 1 May