Breadth-Last Technical Electives: Integrating the CS Core via Computer Games and Mobile Robotics

hesitantdoubtfulΤεχνίτη Νοημοσύνη και Ρομποτική

29 Οκτ 2013 (πριν από 3 χρόνια και 11 μήνες)

65 εμφανίσεις

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