1 / 59

Robots in the classroom: Motivating Students and Machines

Robots in the classroom: Motivating Students and Machines. Douglas Blank Computer Science Bryn Mawr College. Big picture. Would like to create an artificial intelligence Needs a body , a physical presence And a whole lot of learning And a desire to learn. Big picture.

nijole
Télécharger la présentation

Robots in the classroom: Motivating Students and Machines

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Robots in the classroom: Motivating Students and Machines Douglas Blank Computer Science Bryn Mawr College Bryn Mawr College Institute for Personal Robots in Education

  2. Big picture • Would like to create an artificial intelligence • Needs a body, a physical presence • And a whole lot of learning • And a desire to learn Bryn Mawr College Institute for Personal Robots in Education

  3. Big picture • Would like to create an artificial intelligence • Needs a body, a physical presence • And a whole lot of learning • And a desire to learnDevelopmental Robotics Bryn Mawr College Institute for Personal Robots in Education

  4. What is thought? What is consciousness? What drives a system to want to learn? How can we create such a system? Developmental Robotics Bryn Mawr College Institute for Personal Robots in Education

  5. Developmental Robotics • I believe in strong AI • Such an intelligence may be quite different from our own • Will probably be as complex as our own intelligence, and just as hard to figure out how it works • Will lead to conscious systems, within 50 years Bryn Mawr College Institute for Personal Robots in Education

  6. Two practical questions • What robot to use? • How can students participate in such research? Bryn Mawr College Institute for Personal Robots in Education

  7. What robot to use? Bryn Mawr College Institute for Personal Robots in Education

  8. How can we explore the “big picture”, given that most of our students are just now encountering CS and robotics? How can students participate? Bryn Mawr College Institute for Personal Robots in Education

  9. How can we explore the “big picture”, given that most of our students are just now encountering CS and robotics? Make the robots accessible. How can students participate? Bryn Mawr College Institute for Personal Robots in Education

  10. Pyro is the software component of a recently completed NSF grant, “Beyond LEGOs: Hardware, Software, and Curriculum for the Next Generation Robot Laboratory” Douglas Blank, Bryn Mawr College Deepak Kumar, Bryn Mawr College Lisa Meeden, Swarthmore College Holly Yanco, University of Massachusetts Lowell Pyro Bryn Mawr College Institute for Personal Robots in Education

  11. Pyro • Code for exploring robotics and AI, written in Python • GUI, libraries, abstractions, and collection of teaching materials • Robot, Device, OS, and Paradigm independent • Designed for beginning AI students to jump-right-in, but to also pedagogically scale as the user gains experience • A community of users, teachers and students Bryn Mawr College Institute for Personal Robots in Education

  12. Python • Looks like pseudo-code • Indentation matters • Object system built on top of functions • Support for functional programming • Large collection of libraries • Interactive • Can be easily integrated with other low-level languages Bryn Mawr College Institute for Personal Robots in Education

  13. “Pythons all the way down” • GUI (Tkinter) • Graphs, plots, bar charts, other visualizations • Libraries and modules • Neural networks, self-organizing map, backpropagation of error, genetic algorithm, genetic programming, mapping, RL, etc. • Vision interface • Display, and filter application • Complete Simulator • Sonar, Gripper, Camera, Lights, Bulbs, 2D/3D Bryn Mawr College Institute for Personal Robots in Education

  14. Can run the same control programs Bryn Mawr College Institute for Personal Robots in Education

  15. Servers: Robots and Simulators Bryn Mawr College Institute for Personal Robots in Education

  16. from pyrobot.brain import Brain class Avoid(Brain): def step(self): self.robot.move(1, 0) def INIT(engine): return Avoid('My Avoid Brain', engine) Brain: A Pyro Control Program Bryn Mawr College Institute for Personal Robots in Education

  17. Pyro, Python Robotics • http://PyroRobotics.org • Designed for advanced CS students • Ability to do PhD topics easily as senior projects • Modules for exploring many topics in AI and cognitive science • Not appropriate for CS1 Bryn Mawr College Institute for Personal Robots in Education

  18. Two additional questions • Where are all of the computer science students? • What happened? Bryn Mawr College Institute for Personal Robots in Education

  19. Commission on Professionals in Science and Technology “In computer science, the percentage of jobs held by women … was lower at the end of the 20 year period than it was in 1983.  [Things were so bad] that even while women’s share of these jobs was declining, their absolute numbers continued to increase through the year 2000, but then started to decline.” Bryn Mawr College Institute for Personal Robots in Education

  20. By any measure, we’re failing Bryn Mawr College Institute for Personal Robots in Education

  21. Bryn Mawr College Computer Science • Small, all women’s liberal arts college outside Philadelphia • CS is newest major • Computational Methods Minor • 1 - 5 Majors, Minors each year Bryn Mawr College Institute for Personal Robots in Education

  22. Bryn Mawr College Computer Science Deepak Kumar Dianna Xu Doug Blank Bryn Mawr College Institute for Personal Robots in Education

  23. Microsoft’s Educational Robot Initiative • Develop an institute to explore robots and education • Develop curricular materials for introductory computing courses • Make them accessible • Make them appeal to a broad range of students Bryn Mawr College Institute for Personal Robots in Education

  24. Robots could help? • Provides motivation to learn CS • We had a better programming environment for beginning students • Experience with making advanced robotics accessible • Yes, Person Robots could help make CS personal Bryn Mawr College Institute for Personal Robots in Education

  25. Institute for Personal Robots in Education • Begun July, 2006 from a $1 million grant from Microsoft Research • Apply the philosophy of making computer science relevant and accessible to CS1 • Develop a robot, software, and curricular materials for CS1 and CS2 • Foster the trend of putting the liberal arts into engineering and technology-related fields Bryn Mawr College Institute for Personal Robots in Education

  26. A Challenge How would you change CS education, if you were given a million dollars? Bryn Mawr College Institute for Personal Robots in Education

  27. Personal Robot robot.turnLeft(.5) robot.speak(“Hello”) Gyro running Myro Bryn Mawr College Institute for Personal Robots in Education

  28. CS1: Introduction to Computing Bryn Mawr College Institute for Personal Robots in Education

  29. CS2: Data Structures Bryn Mawr College Institute for Personal Robots in Education

  30. Approach • Robotics and computing interleaved. • Robotics serves as the motivating context for the computing. • To improve transfer • To demonstrate relevance • Start with the Project • What can we ask students to do that they will find motivating and relevant? • Then, what computing do we need (and in what order) to achieve that project? Bryn Mawr College Institute for Personal Robots in Education

  31. 15 Chapter/Week Outline • Chapter 1 The World of Robots • Chapter 2 Robots: Personal or Otherwise • Chapter 3 Sensing the World • Chapter 4 Making Decisions • Chapter 5 Behaviors • Chapter 6 Control Paradigms • Chapter 7 Making Music • Chapter 8 Communication • Chapter 9 Artificial Intelligence • Chapter 10 Computing & Computation • Chapter 11 Games: Soccer anyone? • Chapter 12 Social Robots & Entertainment • Chapter 13 Swarms • Chapter 14 Robot Ethics • Chapter 15 Smart Appliances Bryn Mawr College Institute for Personal Robots in Education

  32. Myro: Pyro, Reloaded • Implemented in .NET • Use IronPython, but be language agnostic • Simplified framework (“zero mystery”) • Rework everything (including C++ code) into a single framework • Sophisticated, yet extensible simulator • Standardized protocols between levels • Remain compatible with advanced robots and simulators Bryn Mawr College Institute for Personal Robots in Education

  33. Parallax Scribbler Bryn Mawr College Institute for Personal Robots in Education

  34. Prototypes Bluetooth Serial Transmitter/ Receiver Myro USB Bluetooth Dongle Bryn Mawr College Institute for Personal Robots in Education

  35. IPRE Robot Kit Bryn Mawr College Institute for Personal Robots in Education

  36. Parallax Scribbler Bryn Mawr College Institute for Personal Robots in Education

  37. Scribblers: Day 1 Bryn Mawr College Institute for Personal Robots in Education

  38. Editing Environment (IDLE) Bryn Mawr College Institute for Personal Robots in Education

  39. More on Myro • Pyro • Functions • Objects • Movement • Sensing • Sounds • IM • Future Myro Bryn Mawr College Institute for Personal Robots in Education

  40. Myro, First Steps >>> from myro import * Myro, (c) 2006 Institute for Personal Robots in Education [See http://www.roboteducation.org/ for more information] Version 0.8.0, Revision 1.80, ready! >>> robot = Scribbler(“com4”) Waking robot from sleep... Hello, I'm Scribby! >>> robot.beep(1, 800) >>> robot.joyStick() >>> ^D Bryn Mawr College Institute for Personal Robots in Education

  41. SimScribbler Bryn Mawr College Institute for Personal Robots in Education

  42. Functional Interface: Movement initialize(“com4”) turnLeft(value) turnRight(value) forward(value) backward(value) stop() # values are between 0 and 1 Bryn Mawr College Institute for Personal Robots in Education

  43. Object Interface: Movement robot = Scribbler(“com4”) robot = SimScribbler() robot.turnLeft(value) robot.turnRight(value) robot.forward(value) robot.backward(value) robot.stop() Bryn Mawr College Institute for Personal Robots in Education

  44. Movement Interface, Advanced translate(value) rotate(value) move(tvalue, rvalue) robot.translate(value) robot.rotate(value) move(tvalue, rvalue) # values are between -1 and 1 Bryn Mawr College Institute for Personal Robots in Education

  45. Functional Interface: Sensors getLight(position) getLine(position) getStall() getIR(position) getInfo() # returns dictionary getAll() # returns dictionary get(item, position) get(“light”, “left”) get(“stall”) Bryn Mawr College Institute for Personal Robots in Education

  46. Functional Interface: Sounds beep(duration, freq1) beep(duration, freq1, freq2) speak(“Hello world!”) getVoices() setVoice(“Fred”) Bryn Mawr College Institute for Personal Robots in Education

  47. Object Interface: Sounds robot.beep(duration, freq1) computer.beep(duration, freq1) computer.speak(“Hello world!”) computer.getVoices() computer.setVoice(“Fred”) s1 = makeSong(“a5 1; b5 .5; c5 .5”) s2 = makeSong(“a5 a4 1; c4 c#4 1;”) robot.playSong(s1) robot.playSong(s2) Bryn Mawr College Institute for Personal Robots in Education

  48. Chat (IM) Interface c1 = Chat(“sarah”, “password”) c2 = Chat(“joe”, “sEcrEt”) c1.send(“joe”, “Hi, what’s up?”) c2.receive() [(‘sara@myro.roboteducation.org', ‘Hi, what’s up?')] Bryn Mawr College Institute for Personal Robots in Education

  49. Chat Robot Remote Control >>> robot = Scribbler() >>> robot.setName(“Arnold”) >>> robot.initializeRemoteControl("mypassword") >>> robot.processRemoteControlLoop() # on a computer, far, far away: >>> chat = Chat("myname", “passwerd") >>> chat.send(“Arnold", "robot.turnLeft(.4)") >>> chat.receive() Bryn Mawr College Institute for Personal Robots in Education

  50. Reading the Light Sensors robot.getLight(“left”) robot.getLight(“center”) robot.getLight(“right”) robot.getLight() [657, 1453, 1025] Light sensors Bryn Mawr College Institute for Personal Robots in Education

More Related