|
UNM CS-151L: CS4All
Computer Science Department
University of New Mexico
Albuquerque, New Mexico
Development and implementation of this course is funded in part by the
National Science Foundation
|
Course Description
CS-151L - An introduction to Computational Science and Modeling (also known as Computer Science for All)
- is a dual-credit computational science course open to high school as well as college students.
CS-151L is a hybrid course, meaning that meaning that a significant part of the course content is
on-line and the remaining part is taught in-person. This hybrid course uses a style of pedagogy
called a “flipped course”. That is, most content is delivered during out-of-class times via videos
and reading materials while in-class time is used for hands-on activities, project work, questions
and other interactive learning.
In this course, the student will author original computer programs using an agent-based modeling environment
(or programming language) called NetLogo. NetLogo runs on Windows and Mac operating systems. NetLogo is
free to use and is open source. Students will gain experience designing, building, testing, debugging and
running experiments with some simple computer models and with some complex adaptive systems. Students will
also learn and apply mathematics relevant to modeling and simulation such as probability and statistics,
and data analysis.
This course also introduces students to “great ideas” in computer science that impact their daily lives
with topic including “big data”, algorithms for search engine page ranking, pattern recognition, and
data compression.
Pre-Requisites: None.
Co-Requisites: None.
Instructors:
Joel Castellanos Lecturer,
Dept of Computer Science, UNM
Irene Lee , Research Scientist, Santa Fe Institute
Maureen Psaila-Dombrowski, Project Coordinator, Santa Fe Institute
Course Information:
-
Syllabus
-
UNM Academic Calendar: Listing of Holidays, Final's week, last day switch to Audit without the Dean's approval, and other academic dates.
Week 1: What is Computer Science and Getting started with NetLogo
- Video:
What is Computer Science?, by Ed Angel
- Video:
How to Download and Install NetLogo on a MacOS X, by Irene Lee
- Video:
How to Download and Install NetLogo on a Windows 7, by
Joel Castellanos.
- Video:
Tour of the NetLogo Interface, by Irene Lee.
- Video:
Getting Started in NetLogo: Hello World and Turtle Graphics, by
Joel Castellanos.
- Video:
Statements and Expressions in NetLogo, by
Maureen Psaila-Dombrowski.
- Notes:
Netlogo Command List for week 1
- Notes:
Computer Science Concepts Sheet for Week 1
- Lab Assignment:
NetLogo Lab 1: Your Name in Turtle Graphics
-
Optional Programming Challenges
Week 2: Introduction to Computational Thinking
- Video:
Three A's of Computational Thinking, by Irene Lee
- Video:
Decomposition in Computer Programming, by Maureen Psaila-Dombrowski
- Video:
Procedures in NetLogo, by Maureen Psaila-Dombrowski
- Video:
What's Inside a Computer, by HowStuffWorks
- Video:
Bits and Bytes: Data Representation, by Ed Angel
- Video:
Bits and Bytes: Numbers, by Ed Angel
- Reading:
Blown To Bits: Appendix: The Internet as System and Spirit
(Read Part 1: The Internet as a Communication System, pages 301 through 309), by Harry Lewis, Ken Ledeen and Hal Abelson
- Notes:
Netlogo Command List for week 2
- Notes:
Computer Science Concepts Sheet for Week 2
- Lab Assignment:
NetLogo Lab 2: Spirograph
-
Optional Programming Challenges
Week 3: Introduction to Abstraction / Data Representation
- Video:
Layers of Abstraction in Computer Science, by Maureen Psaila-Dombrowski
- Video:
Data Representation: Colors Ed Angel
- Video:
Computer Science Constructs: Local Variables, by Maureen Psaila-Dombrowski
- Video:
Computer Science Constructs: Looping and Iteration, by Maureen Psaila-Dombrowski
- Video:
Introduction to Complex Systems
- Video:
Emergence, PBS
- Reading:
Blown To Bits: Appendix: The Internet as System and Spirit
(Read Part 2: The Internet Spirit, pages 309 through 316), by Harry Lewis, Ken Ledeen and Hal Abelson
- Notes:
Netlogo Command List for week 3
- Notes:
Computer Science Concepts Sheet for Week 3
- Lab Assignment:
NetLogo Lab 3: Spiraling Art using a Repeat Loop
Week 4: Introduction to Modeling
- Video:
Introduction to Computational Science By Irene Lee
- Video:
Introduction to Agent Based Modeling By Irene Lee
- Video:
Computer Science and Simulation / Emergency Planning Guest Lecture: Stephen Guerin.
- Video:
dice and data (Part 1) By Nick Bennett.
- Netlogo Program:
dice-and-data.nlogo Note: You need to right click to download a NetLogo program.
Make sure to "Save As", remember where you save and make sure the filename extension saves as .nlogo.
- Video:
Netlogo and the Random Walk, by Joel Castellanos.
- Video:
Wiggle Walk and Sliders to Control Global Variables in Netlogo, by Joel Castellanos.
- Reading:
Blown To Bits: Chapter 1: Digital Explosion
(Read pages 1 through 9), by Harry Lewis, Ken Ledeen and Hal Abelson
- Notes:
Netlogo Command List for week 4
- Notes:
Computer Science Concepts Sheet for Week 4
- Lab Assignment:
NetLogo Lab 4: Experiments with the Random and Wiggle Walks
Week 5: Boolean Logic and Conditional Control Flow
- Video:
Boolean Logic By Maureen Psaila-Dombrowski
- Video:
Conditional Control Flow By Nick Bennett
- Video:
Patches and Agent/Environment interactions By Maureen Psaila-Dombrowski
- Video:
Conditional Control Flow and Bumper Turtles in both 2D and 3D Netlogo By Joel Castellanos.
- Reading:
Blown To Bits: Chapter 1: Digital Explosion
(Read pages 9 through 17), by Harry Lewis, Ken Ledeen and Hal Abelson
- Notes:
Netlogo Command List for week 5
- Notes:
Computer Science Concepts Sheet for Week 5
- Lab Assignment:
NetLogo Lab 5: Bumper Turtles (with 3D extra credit)
Week 6: Variables and Scope (Local, Global and Agent)
- Video:
Abstraction in Modeling and Simulations
- Video:
Variables and Scope By Maureen Psaila-Dombrowski
- Video:
Gluing a Torus: 53 second video showing why the Netlogo 2D world with horizontal and vertical world wrap on topologically equivalent to a torus (donut shape). From the University of Hannover, Germany
- Video:
Interface Input in Netlogo By Maureen Psaila-Dombrowski
- Video:
Interface Output in Netlogo (part 1) By Maureen Psaila-Dombrowski
- Video:
Agent Based Modeling in Computation & Biology
by guest lecturer Melanie Moses
- Reading:
Blown To Bits: Chapter 2: Naked in the Sunlight - Privacy Lost, Privacy Abandoned
(Read pages 19 through 28), by Harry Lewis, Ken Ledeen and Hal Abelson
- Notes:
Netlogo Command List for week 6
- Notes:
Computer Science Concepts Sheet for Week 6
- Lab Assignment:
NetLogo Lab 6: Energizer Turtles
Week 7: Running Experiments with Computer Models
- Video:
Designing and Running Experiments in Netlogo By Maureen Psaila-Dombrowski
- Video:
Population Dynamics: Birth and Death By Maureen Psaila-Dombrowski
- Video:
Breeds and Shapes in Netlogo By Maureen Psaila-Dombrowski
- Video:
Agents in Netlogo By Maureen Psaila-Dombrowski
- Video:
Being Random By Dave Ackley
- Reading:
Blown To Bits: Chapter 2: Naked in the Sunlight - Privacy Lost, Privacy Abandoned
(Read pages 28 through 38), by Harry Lewis, Ken Ledeen and Hal Abelson
- Notes:
Netlogo Command List for week 7
- Notes:
Computer Science Concepts Sheet for Week 7
- Lab Assignment:
NetLogo Lab 7: Experimenting with Life and Death
Further Reading and Resources
Wikipedia: Computer Science
CNET News: "Wikipedia is about as good a source of accurate information as Britannica"
Video:
What is Computer Science: YouTube Video from Rochester Institute of Technology Department of Computer Science
NetLogo User Manual
NetLogo Programming: An Introduction by Alan Isaac of American University
NetLogo Tutorial in English and Spanish