Breadth
-
Last Technical Electives:
Integrating the CS Core via Computer
Games and Mobile Robotics
William W. White
Southern Illinois
U
niversity Edwardsville
Department of Computer Science
Edwardsville, IL 62026
-
1656
wwhite@siue.edu
Jerry B. Weinberg
Southern Illinois
U
niversity Edwardsville
Department of Computer Science
Edwardsville, IL 62026
-
1656
jweinbe@siue.edu
Breadth
-
Last Technical Electives: Integrating the CS Core
via Computer Games and Mobile Robotics
The CS Core
2
•
Discrete
Structures
•
Programming
Fundamentals
•
Algorithms and
Complexity
•
Architecture and
Organization
•
Operating
Systems
•
Net
-
Centric
Computing
•
Programming
Languages
•
Human
-
Computer
Interaction
•
Graphics and Visual
Computing
•
Intelligent
Systems
•
Information
Management
•
Social and Professional
Issues
•
Software
Engineering
•
Computational Science and Numerical
Methods
The IEEE
-
CS/ACM Computing Curricula Task Force identified the
core body of knowledge appropriate for a CS undergraduate
curriculum:
Source: “Computing
Curricula
2001
-
Computer Science: Fi nal Report”, 12/15/01, The
Joint Task
Force on Computing
Curricula
-
IEEE
Computer
Society and Association
for Computing
Machinery,
http://www.computer.org/portal/cms_docs_ieeecs/ieeecs/education/cc2001/cc2001.pdf
Breadth
-
Last Technical Electives: Integrating the CS Core
via Computer Games and Mobile Robotics
CS Technical Electives
3
Technical electives commonly address some, but rarely all, of
these areas:
Example Technical Electives
Discrete
Structures
Programming
Fundamentals
Algorithms and
Complexity
Architecture and
Organization
Operating
Systems
Net
-
Centric
Computing
Programming
Languages
Human
-
Computer
Interaction
Graphics and
Visual Computing
Intelligent
Systems
Information
Management
Social and
Professional Issues
Software
Engineering
Comput
. Science &
Numerical Methods
Advanced Algorithms
Artificial Intelligence
Compiler Design
Computer Graphics
Database Management
Distributed Systems
Networks & Data Communications
Theory of Computation
Breadth
-
Last Technical Electives: Integrating the CS Core
via Computer Games and Mobile Robotics
Breadth
-
Last
4
A
breadth
-
last
technical elective integrates the
entire
CS core
into a single course, taken at the end of the undergraduate
curriculum, with the following goals:
•
Demonstrate how the diverse core areas fit together
within an integrated system instead of in the traditional
segregated manner that frequently ignores their
interdependence.
•
Facilitate the students’ ability to envision alternative
and more far
-
reaching solutions to practical software
development problems.
Breadth
-
Last Technical Electives: Integrating the CS Core
via Computer Games and Mobile Robotics
Game Design & Development
5
CS Core Area
Corresponding Course Topics
Discrete Structures
Isometric Grids; Music Sequencers;
Binary Space Partitioning
Programming Fundamentals
Event
-
Driven Programming; Recursive
Pathfinding
Algorithms and Complexity
Collision Detection;
Fractal Terrain Generation; Finite State Machines
Architecture and Organization
Graphics Processors; Peripheral Devices; Display Technologies
Operating Systems
Multimedia
Coordination; Cross
-
Platform Compatibility; Multithreaded Race Conditions
Net
-
Centric Computing
Multiplayer Platforms; Wireless Connectivity; Game Latency; Mobile Gaming
Programming Languages
Scripting Languages; Application Programming Interfaces
Human
-
Computer
Interaction
Intuitive Game Interfaces
; Heads
-
Up Displays
Graphics and Visual Computing
Real
-
Time Rendering; Character Animation; Texture Mapping; Lighting; Radiosity
Intelligent Systems
Non
-
Player Characters; Emergent Behavior; Dead Reckoning
Information Management
Game Asset Management; Massively Multiplayer Data Reduction
Social and Professional Issues
Game Content Censorship; Social Isolation; Software Piracy
Software Engineering
System Design; Agile Programming; Rapid Development
Comput
. Science & Numerical Methods
Subdivision Surfaces; Rigid
-
Body Dynamics
One breadth
-
last example:
Breadth
-
Last Technical Electives: Integrating the CS Core
via Computer Games and Mobile Robotics
Game Design & Development
6
Sample assignments:
Breadth
-
Last Technical Electives: Integrating the CS Core
via Computer Games and Mobile Robotics
Intelligent Mobile Robotics
7
CS Core Area
Corresponding Course Topics
Discrete Structures
Grid
-
, Graph
-
,
Quadtree
-
Based Maps;
Schemas; Voxels
Programming Fundamentals
Space
-
Limited Code Efficiency; Recursive Problem
-
Solving
Algorithms and Complexity
Position Sensing; Navigation; Spatial Mapping; Collision Avoidance
Architecture and Organization
Sensors;
Microcontrollers; Digital Signal Processing; Layers of Abstraction
Operating Systems
Multitasking; Interprocess Communication; Resource Scheduling
Net
-
Centric Computing
Wireless Connectivity; Multi
-
Robot Coordination; Web Interfacing
Programming Languages
Concurrent Programming; Functional Languages
Human
-
Computer
Interaction
Tele
-
Operation; Tele
-
Presence;
Heuristic Design; Cognitive Modeling
Graphics and Visual Computing
Computer Vision; Color Tracking; Pattern Recognition; Image
-
Map Correspondence
Intelligent Systems
Intelligent Agents; Path Planning; Reinforcement Learning; Swarm Intelligence
Information Management
Resource Management; Sensor Fusion
Social and Professional Issues
Industrial Automation; Assistive Robotics; Military Robots; Anthropomorphism
Software Engineering
Behavior Diagrams; Sequence Diagramming; Finite State Machines
Comput
. Science & Numerical Methods
Analog
-
to
-
Digital Conversion; Dead Reckoning; PID Control
Another breadth
-
last example:
Breadth
-
Last Technical Electives: Integrating the CS Core
via Computer Games and Mobile Robotics
Intelligent Mobile Robotics
8
Base System Setup:
Xbee
RF Communication Module
Level Translation Circuit Board
XBC Microcontroller
XBC Mounted to Robot Base Used to Detect Items of
Different Color and Control Robot Movement and Arm
Breadth
-
Last Technical Electives: Integrating the CS Core
via Computer Games and Mobile Robotics
Additional Breadth
-
Last Possibilities
9
Mobile Communications
•
Networking
•
Operating Systems
•
Architecture
•
Interface Design
•
Social Implications
Scientific Visualization
•
Parallel Processing
•
Computer Graphics
•
Numerical Methods
•
Algorithms
•
Database Management
•
Customer
-
Driven Development
Design Patterns
•
Software Engineering
•
Systems Analysis
•
Object
-
Oriented Programming
•
Algorithm Complexity
•
Code Refactoring
•
Network Programming
Enter the password to open this PDF file:
File name:
-
File size:
-
Title:
-
Author:
-
Subject:
-
Keywords:
-
Creation Date:
-
Modification Date:
-
Creator:
-
PDF Producer:
-
PDF Version:
-
Page Count:
-
Preparing document for printing…
0%
Comments 0
Log in to post a comment