Credits:   1 unit (4 credit hours)
Contact Hours:   3 lecture & 3 lab
Instructor:   Professor Jeffrey O. Pfaffmann
Last Taught:   Spring 2014
Text Book:   Introduction to Programming in Java: An Interdisciplinary Approach. By Robert Sedgewick and Kevin Wayne. (Addison-Wesley, 2007.)
     
Supplemental
Materials
:
  Myro in Java. Java software for ipre robot controller
http://wiki.roboteducation.org/Myro_in_Java
     
Description:   Robots are increasingly common, from factory floors to space exploration, and now even your home! This course provides hands-on experience programming small robots with an emphasis on artificial intelligence. Lecture/laboratory. This course is appropriate for both majors and non-majors alike; beginners are welcome.
     
Prerequistes:   None

Specific Course Goals:

After successfully completing this course, the student will be able to:

  • Students will learn the basic techniques of working with robotics and virtual agents.
  • Students will be able to implement programs using the fundamental concepts in programming, such as conditionals and loops.
  • Students will understand the basic principles of object-oriented programming, including definition and usage of classes, and interfaces.
  • Students will be able to understand and apply basic data structures and simple algorithms including array, recursion, and sorting.

Student Outcomes:

  ABET/CAC Outcome A   An ability to apply knowledge of computing and mathematics appropriate to the discipline.

Topics covered:

  • Java basics: statement, variable, data types
  • Java basics: class, object, and method
  • Sensor data storage/manipulation, and agent spatial representation (array)
  • Manipulation of command sequence (loops)
  • Perception-action response for robot navigation (conditionals)
  • Creating classes
  • Recursion
  • Movies creation
  • Inheritance and Interface
  • Text manipulation
  • File I/O, and Exception
  • Search and sorting algorithms