Iterative Design of a Robot-Centered Curriculum for Introduction to Computer Science

AAAI Conferences

In the context of steeply declining enrollments in Computer Science [6], our group is focusing on developing curricular modules for introduction to Computer Science (CS1) classes in which robots are used as educational tools to motivate students about applications of Computing. We strongly believe that robots can be an ingredient in the solution to the retention and diversity problems plaguing Computer Science education. Robots have been used in a number of contexts to excite students towards further study in STEM (Science, Technology, Engineering and Mathematics) fields. At Carnegie Mellon, a student taught course in which programming robot behaviors and creating robotic art are the main activities attracts nearly half its students from the humanities, business, and art schools [5]. High school robotics competitions such as FIRST and Botball have grown explosively over the last decade. Robot kits, such as Lego's Mindstorms, have also become a popular tool in traditional CS1 [1] and CS2 [3] courses. Robots, as physically manifested computing devices, inherently show students how computing algorithms can impact the real world; they provide a degree of relevance to assignments that is often missing. Even so, there are well-known weaknesses to using robots in computing courses [1]: Robots are typically too expensive for student ownership, and so students must work on robot programming assignments in labs with limited hours. Feedback is delayed due to the real-time nature of robotics, and so students must devote more time to tedious debugging, and less to developing solutions.


$99 CMU robot is computer science learning tool

AITopics Original Links

I remember programming turtle graphics in Logo when I was in high school. These days, students can learn basic computer science from a robot developed by researchers at Carnegie Mellon. The Finch was co-developed by Tom Lauwers at CMU's Create lab. It's designed to be an interactive, programmable teaching aid to get students into computer science and robotics. Programmable with Java and Python, the bird-like bot runs on a 15-foot USB cable and comes with temperature and light sensors, a bump sensor, and a three-axis accelerometer that can be used as a mouse.


GEF: A Self-Programming Robot Using Grammatical Evolution

AAAI Conferences

Grammatical Evolution (GE) is that area of genetic algorithms that evolves computer programs in high-level languages possessing a BNF grammar. In this work, we present GEF (“Grammatical Evolution for the Finch”), a system that employs grammatical evolution to create a Finch robot controller program in Java. The system uses both the traditional GE model as well as employing extensions and augmentations that push the boundaries of goal-oriented contexts in which robots typically act including a meta-level handler that fosters a level of self-awareness in the robot. To handle contingencies, the GEF system has been endowed with the ability to perform meta-level jumps. When confronted with unplanned events and dynamic changes in the environment, our robot will automatically transition to pursue another goal, changing fitness functions, and generate and invoke operating system level scripting to facilitate the change. The robot houses a raspberry pi controller that is capable of executing one (evolved) program while wirelessly receiving another over an asynchronous client. This work is part of an overall project that involves planning for contingencies. In this poster, we present the development framework and system architecture of GEF, including the newly discovered meta-level handler, as well as some other system successes, failures, and insights.


TeRK: A Flexible Tool for Science and Technology Education

AAAI Conferences

TeRK combines a highly functional, low cost controller, the Qwerk, with an extensive software infrastructure and lively web community to lower the barrier to entry for students, hobbyists, artists and researchers interested in using robotic technologies. We further describe our experiences in applying TeRK to engage and excite two audiences; middle school girls and students taking the introductory computer science course.


Robot Diaries: Broadening Participation in the Computer Science Pipeline through Social Technical Exploration

AAAI Conferences

In this paper we describe the results of a series of new robotics workshops for secondary school girls. Specifically we show that, over the course of a three-month pilot workshop, a group of eight girls showed engagement with the workshop content and gained technical knowledge. The Robot Diaries program is unique in that it creates a social narrative approach to robotics education. The robotic technology becomes a tool for expression and communication rather than the sole focus of the workshop.