Modeling in Processing Daily Schedule Term 5
Course home page
See also Daily Schedule Term 4
Week 8 — Introducing ArrayList — Object-Oriented Design
- Preparation for Monday, March 14: Do parts (a)-(f) of the exam. If you already completed the exam all the way to part (g), that is fine. You only need parts (a)-(f) though.
- Monday, March 14 — We introduced ArrayList with two lengthy examples: (1) By taking my solution to parts (a)-(f) of the exam and converting the bouncer array and the obstacle array to both be array lists — (2) By doing Shiffman’s fountain example from Section 4.11
- Preparation for Thursday, March 17: Work through Sections 4.1 to 4.5 — As Assignment 5 to email me before class on Thursday, do Exercise 4.5
- Thursday, March 17 — Examine each others’ Assignment 5 results — Discuss Course Evals and Course Direction
- Reading and Preparation for Monday, March 21: Read 4.6 to 4.10 — Note: we already did the long example in Section 4.11 the previous Monday and applied the techniques in Section 4.13 — Read Section 4.12 — Do (but do not turn in) Exercise 4.9 at the end of Section 4.12
- More preparation for Monday: Practice modeling systems by modeling COVID spread on campus — Come to class with as many of the ideas in 4.6 to 4.9 applied to a COVID spread model that you have written down
- Assignment 6: Bring five copies, one for yourself and one for me and each of the rest of you of your COVID spread model to class — This can be captured on about one page of analysis
- Comment — The COVID spread problem, as we flesh it out, can be thought of as a good example of modeling, simulation, and rendering in Processing
- Monday, March 21 — Examine Exercise 4.9 starting with Exercise 4.7: Repellers — Examine and compare each others’ designs for a COVID spread model — Introduce the basics of object-oriented design with Basic UML Class Diagram Notation (handout is the first page of a handout by David Kieras posted on the University of Michigan EECS 381 website)
- Thursday, March 24 — Starting point for a simple COVID spread model — A Box2D Example
Week 10 — Cellular Automata — Add Rendering to COVID Spread Models
- For Monday, March 28 — Assignment 7: Add rendering to our simple COVID spread model
- Monday, March 28 — Start Chapter 7 — Cellular Automata 1D — Implementation of Exercise 7.1: CA with random ruleset including a much better way of getting ruleset from rulenum that uses the a loop and the left shift operator — Next version of a simple COVID spread model
- For Thursday, March 31 — Finish reading Chapter 7 and as Assignment 8 do Exercise 7.10 in Shiffman
- Thursday, March 31 — Finish Chapter 7 — Cellular Automata 2D — Assignment 8 Cellular Automata 2D Solution
Week 11 — Fractals — Make COVID Spread Model Realistic
- Preparation for Monday, April 4 — Assignment 9: Make the COVID model realistic by adding realistic association schedules, contact with the outside world during term for staffulty and during breaks for students, and any other tuning and rendering that you need to do to make the model compelling — Read Fractals Sections 8.1 to 8.3 — Type in one of the Cantor Set Examples
- Monday, April 4 — Start Fractals starting with recursion — Cantor set
- Preparation for Thursday, April 7 — Assignment 10: Exercises 8.10 and 8.13 — Finish reading Chapter 8 on fractals
- Thursday, April 7 — Finish Fractals by devoting a class to fully object-oriented fractal trees — Two extensions to this that would be cool to implement are to (a) terminate the growth at some point (so that we don’t eventually bog the computer down), and (b) add Perlin noise to the branching angles so that the tree seems to blow in the wind (this was one of Shiffman’s suggested exercises)
Week 12 — Finish COVID Models
- Monday, April 11 — Begin sharing COVID models — Discussion of JSON file format for defining COVID models — Discussion of tunable parameters — Discussion of ensemble averages
- Thursday, April 14 — Finish sharing COVID models — Demonstration of COVID Spread Model with JSON file format: COVID Spread Model with JSON
Week 13 — Finish Neural Nets — Begin Final Projects
- Preparation for Monday, April 18: Read Shiffman 10.1 to 10.3 (this was delayed while we spent more time on the COVID models)
- Monday, April 18 — Neural nets — Training neural nets — Example: Simplest neural net (just one neuron)
- Preparation for Thursday, April 21: Come with two final project ideas
- Thursday, April 21 — Multi-Layer Neural Nets — Two-Layer Neural Net - No Training — Discussion of Final Projects
Week 14 — Final Projects
- Preparation for Monday, April 25: Come with your two final project ideas narrowed down to one — Identify a small feature set that you are committed to implementing — Identify optional additional features that you will do only if time permits
- Monday, April 25 — Most of the class time will be devoted to working on the Final Projects
- Preparation for Thursday, April 28: Email me code and any other needed resources by 9pm (Deep Springs Time) that I will post on your final projects pages
- Thursday, April 28 — Theory for training multi-layer neural nets — Presentations of Final Projects