Corral Exiting/Escape - Bryn Mawr Computer Science

Download Report

Transcript Corral Exiting/Escape - Bryn Mawr Computer Science

Personal
Robots for
CS1
Deepak Kumar
Bryn Mawr
College
Promising Practices in CS1
Deepak Kumar
Promising
Practices in
CS1
IPRE
• Institute for Personal Robots in Education
• Goals: To explore the use of personal robots
• People: Douglas Blank, Deepak Kumar (BMC),
Tucker Balch, Mark Guzdial (GaTech),
Stewart Tansley (MSR)
Deepak Kumar
Promising
Practices in
CS1
Key Motivators…
• Introductory computing courses serve as a gateway into
the CS curriculum.
• Should provide interesting and diverse range of
examples and exercises.
• Alignment of course content to student interests to
increase engagement can have a positive impact on
students choosing to enter computing as a major in
college.
• Most tasks should be attainable and provide a basis for
supportive and positive feedback to students.
Deepak Kumar
Promising
Practices in
CS1
Additional Motivators…
• Use a personal robot
• Let the needs of the curriculum drive the design
of the robot, software, and text
• Use tools that are easy to use, scale with
experience
• Create an accessible, engaging environment for
new, diverse population of students
• Computer Science ≠ programming
• Make computing a social activity
• Make computing a medium for creativity
• Performances vs. competitions
Deepak Kumar
Promising
Practices in
CS1
A Personal Robot Kit
•
•
•
•
•
•
•
•
•
•
•
Color camera
3 Light sensors
2 IR proximity sensors
2 Line sensors
Stall sensor
Speaker
3 LEDs
2 motors
Bluetooth wireless
Pen port
Myro Python Module
Deepak Kumar
Promising
Practices in
CS1
Myro: Features
• Simple, easy to use API even for nonprogrammers.
• Seamlessly integrated with standard Python.
• Plans to work with MSRS and .NET (will support
multiple languages).
• Design driven by curricular goals.
See: Kumar et al. Engaging Computing Students with AI and Robotics, Forthcoming in Spring 2008.
Deepak Kumar
Promising
Practices in
CS1
“Hello World”
# Hello World
from myro import *
speak(“Hello, World!”)
Deepak Kumar
Promising
Practices in
CS1
•
•
•
•
•
•
•
•
•
•
•
•
CS1:Course Contents
Chapter 1 The World of Robots
Chapter 2 Robots: Personal or Otherwise
Chapter 3 Building Brains
Chapter 4 Sensing the World
Chapter 5 Making Decisions
Chapter 6 Behaviors
Chapter 7 Control Paradigms
Chapter 8 Making Music
Chapter 9 Communication
Chapter 10 Artificial Intelligence
Chapter 11 Computing & Computation
Chapter 12 Applications of Robots
Deepak Kumar
Promising
Practices in
CS1
Programming as a social activity
Deepak Kumar
Promising
Practices in
CS1
Myro: Example
# Avoiding Obstacles
from myro import *
initialize(ask(“What port?”))
# program settings...
cruiseSpeed = 0.6
turnSpeed = 0.5
def main():
while True:
Left, Right = getObstacles()
if Left:
turnRight(turnSpeed)
elif Right:
turnLeft(turnSpeed)
else:
forward(cruiseSpeed)
Deepak Kumar
Promising
Practices in
CS1
A CS1 Assignment: Exploring a Pyramid
Deepak Kumar
Promising
Practices in
CS1
Some Results…
• Learned CS concepts through robots
• Robots made learning experience more
hands-on, tangible, and exciting
• Most frustrating parts were dealing with robot
hardware inconsistencies
• Viewed CS as a type of logic and problem
solving; requiring patience & thought
• Discovered that CS and robots are applicable
to the real world
Deepak Kumar
Promising
Practices in
CS1
Another CS1 Assignment…
Corral Exiting/Escape
Imagine a corral (an enclosed
area with maze like partitions
and an entrance) with a light
source at the entrance (as
shown in the figure to the right).
Given the robot's position, can
we design a behavior that will
enable the robot to exit the
corral?
Deepak Kumar
Promising
Practices in
CS1
•
•
•
•
•
•
•
Some Directions…
Ability to draw
Ability to take pictures
Ability to make music/tones
Ability to play sounds and talk
Ability to express
Ability for robot interaction
Ability to have a web presence
Deepak Kumar
Promising
Practices in
CS1
Comments?
For more information visit: www.roboteducation.org
Deepak Kumar
Promising
Practices in
CS1
Deepak Kumar