Presentation is loading. Please wait.

Presentation is loading. Please wait.

Teaching Robotics and Computer Science with Pinball Machines Daniel Wong, Darren Earl, Fred Zyda, Sven Koenig University of Southern California.

Similar presentations


Presentation on theme: "Teaching Robotics and Computer Science with Pinball Machines Daniel Wong, Darren Earl, Fred Zyda, Sven Koenig University of Southern California."— Presentation transcript:

1 Teaching Robotics and Computer Science with Pinball Machines Daniel Wong, Darren Earl, Fred Zyda, Sven Koenig University of Southern California

2 Overview Games, Robotics, and Education Pinball Machines and Education Pinball Project @ USC Future Work Conclusion

3 Games and USC Bachelor’s program in CS (Games) Master’s program in CS (Game Development)

4 Games and Education Computer Architecture Algorithms and Data Structures Networking Human-Computer Interaction Artificial Intelligence –Path Planning –Machine Learning

5 Games and Education Technical skills –Programming skills –Software engineering skills Creativity Design skills Artistic skills Problem-solving skills Teamwork skills

6 Games and USC

7

8 Gamepipe Demo Day –Attendees have included Electronic Arts, Activision, Blizzard, Sony Computer Entertainment, Sony Online Entertainment, Digital Domain, Disney (Interactive, Feature Animation, Internet Group), LucasArts, Microsoft, Google, Akamai, 2K Sports, THQ, CNET Networks, Qualcomm, Tactical Language, Seven Studios, iSportGames, Emsense, Creative Artists Agency, Applied Minds, Big Stage, Konami, Pandemic, Insomniac Games, Naughtydog, Northrup Grumman, Steamboat Ventures, TnGames, Sun Microsystems, Motorola Research Laboratories, Humana Innovation Center, Sandia National Laboratories, and Westside Transmedia.

9 Games and USC Increased number of application to Bachelor’s program in Computer Science –223 in Fall ‘06 to 383 in Fall ’07 Equal number of CS and CS (Games) Successful internship placement –EA, Disney, Blizzard, Activision

10 Games and Robotics Robotics education place emphasis on high-level software Use games as motivation to teach robotics

11 Games and Robotics Communication protocol –Serial, I2C, SPI Signal generation –PWM Interface –To hardware: motors, servos –To sensors: switches, optical sensors

12 Games and Robotics Goal Teach hardware interface Using games as motivation Hardware+Games+Robotics= Pinball Machines!

13 Outline Games, Robotics, and Education Pinball Machines and Education Pinball Project @ USC Future Work Conclusion

14 Pinball and Education Pinball Machines can be used as a novel platform for teaching CS and Robotic Concepts

15 Pinball Machines Coin-operated arcade game Backbox Playfield DMD

16 Pinball Machine

17 Actuators Sensors Visual outputs Pinball Machine is a simple robot!

18 Pinball Machine DC motor Electro -magnets Upkicker Solenoids

19 Previous Work In Research –Hybrid system control (Lichtenberg and Neidig, 2003), Machine Learning In Teaching –CS160 “Intro. To Embedded and Real-Time Programming”, Brown University –ME218a “Smart Product Design Laboratory”, Stanford University –EE476 “Designing with Microcontrollers”, Cornell University –ENEE 488Q “Special Topics in Elec. Eng: Pinball Machine Project”, University of Maryland, College Park

20 Pinball and Education Teach game design –What makes pinball games fun? Teach robotics concept

21 Pinball and Education Easy to maintain Robust Simple Low-Level Control

22 Outline Games, Robotics, and Education Pinball Machines and Education Pinball Project @ USC Future Work Conclusion

23 Pinball Project Modify an existing pinball machine Custom games Flexible hardware control Simple API

24 Pinball Project Started Summer ‘08 2 generations of interface hardware 1 Pinball game design class Diverse development team

25 Timeline Summer ‘08: 1 st generation interface Fall ’08: Used in CS499 Spring-Summer ’09: 2 nd generation interface

26 Implementation

27 Interface Requirements Inexpensive Meet soft real-time need Portable Not Permanent

28 Implementation ~$100

29 Implementation

30 Event-driven software Friendly API installDedicatedSwitchEventHandler(leftFlipper, "Left Flipper Button", kSwitchRising); void leftFlipper(int switchId, std::string description, tSwitchEvent event) { if (event == kSwitchRising) setSolenoid("Left Flipper", 1); else setSolenoid("Left Flipper", 0); }

31 Pinhorse Fall 08 CS499: “Designing and Implementing Games on Pinball Machines” 2 students 1 semester

32 Pinhorse Lack of multiplayer gameplay –No time restriction –No direct influence Goal: –Players influence each other –Limited Time

33 Pinhorse Modeled after Horse in basketball –Player 1 makes shot –Player 2 tries to replicate shot 1 minute turns

34 Pinhorse

35 Outline Games, Robotics, and Education Pinball Machines and Education Pinball Project @ USC Future Work Conclusion

36 Future Work Formal evaluation Ball tracking Complex, engaging game Explore other pinball machines Hybrid pinball game

37 Future Work New collaboration with University of Alberta Implement ScriptEase module –ScriptEase: Model for AI scripting Implement high-performance player

38 Conclusion Games can motivate CS curriculum Robotics education focus on high-level Pinball Machines can be used as a novel platform for teaching CS and Robotics

39 Resources Web: idm-lab.org/pinball Sven Koenig, skoenig@usc.eduskoenig@usc.edu Daniel Wong, wongdani@usc.edu Thank you! The pinball project was supported in part by a grant from the USC Fund for Innovative Undergraduate Teaching and the National Science Foundation under Grant No. 0113881. Daniel Wong was supported by the USC Undergraduate Merit Research Program and the Rose Hills Foundation.


Download ppt "Teaching Robotics and Computer Science with Pinball Machines Daniel Wong, Darren Earl, Fred Zyda, Sven Koenig University of Southern California."

Similar presentations


Ads by Google