|
CS 371 - Introduction to Artificial Intelligence
Fourth Hour Robotics Project |
Due: Various dates, demonstrations on the last day of class
Note: Work is to be done in three teams (formed in class).
Fall 2024 Robotics Challenge
The Fall 2024 Robotics Challenge consists of 2 challenges for 3 teams. There is a Google Doc distributed to the class early this semester to support construction of the robots.
Pioneer Team
- Given an assembled and mostly configured Sunfounder PiCar-X AI Car Kit, the prior Pioneer Team achieved a remote desktop solution for working with the robot on a local wifi network. If this can be improved/streamlined, add necessary instructions for this to the shared Google doc.
- Provide a calibration process for (1) finding true zeros for motors to steer straight, look to the horizon, and look forward, as well as (2) find the rotational tilt of the head with respect to the horizon. (The previous Pioneer Team developed a technique for steering calibration and started an optimal flow process for further calibration.)
- Create a simple HTML page documenting this calibration process such that other teams (present and future) can benefit from it. Create a subdirectory with supporting files and link to it via a relative HTML link. Do NOT make an over-fancy webpage (e.g. with .php files, WordPress dependencies, etc.).
- Rubric:
- 70% - Significant development of calibration process for all motors (20% in week 4, 50% in week 11)
- 30% - HTML Documentation of calibration process (due by the end of week 12)
Line-Following Teams
- Develop improvements to the line-following code supplied with the robot API examples directory. See below for possible improvements.
- Create a simple HTML page documenting your improved line-following code such that other teams (present and future) can benefit from it. Create a subdirectory with supporting files and link to it via a relative HTML link. Do NOT make an over-fancy webpage (e.g. with .php files, WordPress dependencies, etc.).
- Rubric:
- 70% - Demonstration of clear and significant improvement to the line-following capability of the robot beyond the line-following scripts provided. (20% at midterm, 50% at last class)
- 30% - HTML Documentation of line-following improvements.
Line-Following Challenges
In addition to making line-following code more reliable and/or better performing, there are a hierarchy of additional challenges that past Lego robotics teams have worked to achieve. Their documentation can help provide some insight to such challenges, although the kinematics of the new PiCar-X robot makes some aspects easier (additional sensor information) or more difficult (non-zero turning radius).
-
Challenge #1 - Line-Following: Implement robot line-following that will follow a line through sudden turns up to 90 degrees.
-
Challenge #2 - Intersection-Finding: Implement robot line-following that will follow a line as in (1), but stop when it comes to an intersection
of two or more lines.
-
Challenge #3 - Intersection-Choosing: Implement robot line-following that will, beyond (1) and (2), exit the intersection at the nth spoke clockwise from the line it travelled.
-
Challenge #4 - Intersection-Traversing: Implement robot line-following that will perform (3) in succession given n1, n2, n3, ...
-
Challenge #5 - Search and Traverse: Implement robot line-following that, given a graph topology, its current intersection and heading, and its goal intersection and heading, will generate a sequence of moves and perform (4).
-
Challenge #6 - Localize, Search, and Traverse: Implement robot line-following that, given all that is given in (4) except its current intersection and heading, will take action to ascertain its state (localize), and then perform (5).
-
Challenge #7 - Explore, Search, and Traverse: Implement robot line-following that explores lines and intersections, forms a graph roadmap,
and navigates to a graph intersection with the following property: Let d(i,j)
be the minimum number of edges to travel to get from intersection i to
intersection j. Let D(i) be max(d(i,j)) for all j. A goal intersection
has the minimum D(i).
Reference Links