MajorLieutenant Project — The Robot Tour Guide

1. Motivation

A primary reason to build intelligent robots is to accomplish missions. For this project, the mission is to give tours. This project will give you experience with some of the aspects of designing, implementing, testing, demonstrating, and reporting on robot software to carry out missions. In particular, you will either design robot software and report on your robot software design or you will implement, test, and demonstrate robot software.

2. Goals

The goals of this assignment are:

3. Assignment Overview

You have two assignment options. You may choose either. They are:

Theory
Design robot software and report on your design. For this option, think BIG. What super awesome project could you accomplish if you had a well-organized team, excellent access to a fleet of well-functioning TurtleBots in a large room you could set up entirely to your liking, and half a semester to work?
Practice
Implement, test, and demonstrate robot software. For this option, think small but cool. What can you reasonably accomplish during the time we actually have remaining in the course that would, nonetheless, look impressive?
For either option,
your software should be targeted toward the OU TurtleBots and intended to help with the mission of acting as a robot tour guide, similar to what was described in Homework 1.

4. Assignment Details

4.1 Robot Hardware

Your software should be targeted to run on an OU TurtleBot without physical modification. Hardware modifications to the OU TurtleBots, including changing the sensor suite, will not be allowed.

4.2 Robot Software Compatibility

Your software must be compatible with ROS. You are encouraged to develop and test your software using Gazebo as well but this is not mandatory.

4.3 Robot Software Paradigm

Your software should use either the deliberative or hybrid architectures and should focus on adding some deliberative software component applicable to and useful for the given mission.

4.4. Demonstration Environment

If you choose the practice option, you may construct your own demonstration environment within FH 300, using available furnishings of the classroom, so long as you do not disrupt or interfere with other legitimate uses of that room.
Room:
Felgar Hall 300. You may add "interior walls" using cardboard, marker board, etc.

Furnishings:
Various office furnishings, such as chairs, tables, and desks.

Flooring:
Carpet, cardboard, marker board (face up or down), and tape.

5. Deliverables

5.1 Progress Report

On Thursday, 13 April 2017, each team will give a brief progress report. This report will describe the basic approach your team is taking with your software, including which robotics paradigm your software follows, your plans regarding autonomy and human operation, the sensors you are planning to use and how you plan to use them, and any software you have discovered or developed that you believe will be of interest to other teams and how you believe they could make use of that software.

5.2 Written Report

Each team will submit a draft and final written report on their project. Both the draft report and the final report have the same required contents. The draft report will be graded on a ✓+ / ✓ / ✓– (check-plus/check/check-minus) scheme only and is intended primarily to allow me to provide you with feedback that you can use to improve the quality of your final report. The final report will be point graded.

If you have chosen the theory option, your primary deliverable will be a report on your design. Your report will be modeled on a technical report that might be published by a laboratory. This will have the same basic structure as a conference paper or journal article but without the fancy formatting or severe page limits. Because you will not be implementing or testing your design, the results and conclusions presented in your report should be expected results and conclusions, not actual results and conclusions, and be clearly marked as expected. Your report will have the following components:

Note that while all of the components above must be included in your report, they do not necessarily need to be organized into sections this same way. For example, if your approach combines ideas from multiple prior approaches, you might describe the approach in a single section with multiple subsections or, alternately, in multiple sections. As a second example, you might choose to combine your discussion and conclusions into one section or to combine your conclusions and future work into one section. However, deviations from the expected order and division of the document should be justifiable, not gratuitous.

You should submit an electronic copy of your report through D2L.

Draft Report Due: 11:00 pm, Tuesday, April 25.

Final Report Due: 11:00 pm, Thursday, May 4.

5.3 Robot Demonstration

If you have chosen the practice option, your primary deliverables will be your software itself plus a demonstration of that software running on one of the OU TurtleBots. Your demonstration will take place sometime during the week of May 1 through May 5. Please work with me ASAP to determine your demonstration time.

When requesting a demonstration time, please indicate whether you wish to have one demonstration or two and please give at least two alternatives for each demonstration requested. I will try to honor all requests but if there are scheduling conflicts between teams, I will resolve these in a first-come, first-served manner and the later requesting team may need to determine an alternate time for a demonstration.

5.4 Project Poster

Each team will submit a draft and final poster on their project. Both the draft and the final poster have the same required contents. The draft poster will be graded on a ✓+ / ✓ / ✓– (check-plus/check/check-minus) scheme only and is intended primarily to allow me to provide you with feedback that you can use to improve the quality of your final poster. The final poster will be point graded.

Your poster will be modeled on a technical poster that a researcher might present at a conference. As such, it will have the same components as the report. However, the poster is not meant to be a self-contained document like the report. Instead, like slides for a presentation, the poster is meant to be supporting material that you may refer to while explaining your work to people standing before you. As such, you will want to keep the words to a minimum, using phrases or bullet points rather than long paragraphs of text and include diagrams, graphs, and other figures that are difficult to convey through spoken words.

Draft Poster Due (electronic copy only): 11:00 pm, Monday, May 2.

Final Poster Due (both electronic and printed copy): 11:00 am, Friday, May 6.

6. Grading

6.1 Theory

If you chose the theory option, your project will be graded as follows. 10 points (of 100) will come from the originality/appropriateness of your design for the tour guide mission. The other 90 points will be assigned for your report on that design, using the following point distribution:

  1. Title (2pt)
  2. Authors (2pt)
  3. Abstract (10pts)
    1. problem/question
    2. reason for interest
    3. overall approach
    4. solution/answer
    5. summary conclusions
  4. Introduction (14pts)
    1. motivation
    2. nature
    3. scope
    4. approach intro
    5. results overview
    6. outline of conclusions
    7. related work
  5. Approach/Methods (20pts)
    1. broad description
    2. details
      1. clear
      2. logical
      3. appropriate for application
      4. demonstrates robotics knowledge
  6. Results (12pts)
    1. concise
    2. thorough
    3. understandable
  7. Discussion (12pts)
    1. notable points from results
    2. comparison to expectations
    3. comparison to literature
  8. Conclusions (8pts)
    1. clear
    2. justified
  9. Future Work (6pts)
    1. suggestions
    2. justified
  10. Bibliography (2pts)
  11. Appendices (2pts)

6.2 Practice

If you chose the practice option, your project will be graded as follows:

  1. Originality/Appropriateness for Tour Guide Mission (10pts)
  2. Software Quality (20pts)
    1. well organized (e.g., modular, structured, object-oriented)
    2. well documented internally (including naming and commenting)
    3. elegant
    4. refined
    5. straightforward
  3. Demonstrated Quality (20pts)
    1. effective
    2. efficient
    3. consistent/reliable
    4. deft
  4. Apparent Intelligence (50pts)

7. Notes on this Assignment

These notes pertain to the practice option.

You may write your program from scratch or may start from programs for which the source code is freely available (such as on the web or from friends or student organizations). If you do not start from scratch, you must give a complete and accurate accounting of where all of your code came from and indicate which parts are original or changed, and which you got from which other source. Similarly, for the written components of this assignment you may follow the format or content of other written works but you must give a complete and accurate accounting of who deserves credit for all parts of your documents. Failure to give credit where credit is due is academic fraud and will be dealt with accordingly. Please see OU’s academic integrity website.

You may use whatever computing resources you have access to for the development and testing of your world and launch files and your control code. However, your control code must launch and run successfully on the OU TurtleBots by following the instructions you provide on doing so.