Teaching Empirical Skills and Concepts in Computer Science using Random Walks Grant Braught Dickinson College
Integrating Empirical Methods into the Computer Science Curriculum Collaborators: David Reed, Creighton University Craig Miller, DePaul University Grant Braught, Dickinson College Goals: Identify core empirical skills and concepts Develop and assess materials
Integrating Empirical Methods into the Computer Science Curriculum Central Themes of Our Approach See empirical methods early and often Incremental exposure to empirical methods Integrate empirical methods into existing CS courses with minimal overhead See: Core Empirical Skills and Concepts for Computer Science Braught, Miller, Reed; SIGCSE 2004 Empirical Investigation Throughout the Curriculum Reed, Miller, Braught; SIGCSE 2000
Exploring Random Walks Expose students to issues most central to experimentation with simulations Consistency and Accuracy Hypothesis testing Unique Aspects Designed for first week of the first course Makes use of an underutilized time slot Extensions support incremental exposure
The Random Walks Application Demonstration
Exploring Random Walks Accuracy and Averaging Multiple Runs
Exploring Random Walks Consistency and Accuracy 1 Run/Experiment5 Runs/Experiment20 Runs/Experiment
Exploring Random Walks Hypothesis Testing How does the expected RMS distance of an unconstrained random walk compare to that of a random city-walk? Smaller? Larger? The Same? Typical results:RMS Unconst = RMS City =10.542
Extensions & Variations Later in First Course: An objects early assignment Implementing the Turtle object Split assignment content into two parts Later in the Curriculum A language interpreter Implementing the TurtleInterpreter object
Project Web Site Links to Related Papers Assignment Repository Classroom testers and evaluators needed Partial support for this work was provided by the National Science Foundation’s Course, Curriculum and laboratory Improvement Program. (Grant: DUE )