Data Mining the City — Syllabus 2019

Violet Whitney
Data Mining the City
6 min readAug 25, 2019
Left: Flatland Challenge, Right: City Growth

From Yelp reviews directing people to preferred restaurants to Airbnb reprogramming homes into vacation rentals, the invisible code that powers a city’s use may have more drastic influence than any physical invention in the last century. This course will focus on creating agent based models that enable designers to speculate creatively about behavior in the urban environment. Students will develop a critical understanding of the social, economic, and political dynamics caused by these technologies as well as technical training in simulation, sorting and visualization techniques. We will hypothesize about the relationships of tools and space, as well as develop models and simulations so designers can gain a foothold in the changing landscape of a platform city.

The main technical language of this course will be Python in Processing and C# in Unity. No prior coding knowledge is necessary, though the content of the course will require perseverance. This course is exceptionally difficult and time intensive. Students are expected to regularly submit coursework, attend classes and submit a final comprehensive project.

Outcomes:

  • Methods, tools and data, system-logic
  • Experimentation with code-driven workflows
  • Critical understanding of simulation/data concepts (generalization, bias)
  • How the underlying framework of a system determines its behavior over space and time

Vignette Simulation

Medium Submissions:

Students will submit a Medium post to the course website for each module by midnight on the due date. Posts should include: a catchy title, authors, a succinct description of what their simulation is, why it’s important, simple sketches or diagrams of how it works, code snippets demonstrating how it was made, and visual documentation of the simulation running (videos, gifs, images).

Left: Houdini Crowd Simulation — for Unity, Right: Engineering Informatics

Populations

Post Due: Sep 24

week 1 | Sep 4 | Complexity, Agent Based Models, Unity

  • Lab:Pseudo Code, Simple Agent Based Model
  • Module: Unity Intro

week 2 | 11-Sep | Populations, Emergent Behavior, Randomness

week 3 | Sep 18 | Data Subjectivity, Bias, Fidelity, Limitations of Models

  • Discussion: We will have a discussion based on the readings. What do we consider “models” ? Why do we need models? What are the limitations of models?

week 4 | Sep 25 | Student Presentations: Population

Space

Post Due: Oct 23

week 5 | Oct 2 | Environment, Logistics, Movement, Routing, Graph Theory, Activity Based Travel Models

  • Lab: Project Brainstorm / Spreadsheet Shared
  • Module: Mapbox SDK and/or routing

week 6 | 9-Oct | Workshop on Simulation Arguments

  • Workshop In Class Paper Workshop Reading Example Papers + MetaPaper

week 7 | Oct 16 | Desk Crits

week 8 | Oct 23 | Student Presentations: Space

Arch. Midterm Reviews Oct 22 — Nov 2

Students should be in groups now!

Time

Post Due: Nov 13

week 9 | Oct 30 | Scheduling, Taylorism, Affordance, Game Theory, Behavioral Economics, Decision Trees

week 10 | Nov 6 | “Invisible” City & Simulation As Practice

Meet in 300 Buell S

We will have a discussion based on the readings. What are the “invisible” forces driving the city? Can we study them forensically through their intended and unintended physical consequences? What are the limitations of models? What does it mean to create a practice around simulation? What does this mean for the built environment and practitioners?

week 11 | Nov 13 | Student Presentations: Time

Meet in 115 Avery (moved rooms for special lecture)

Left: Humans of Simulated New York, Francis Tseng, Right: Coffee Biz Tycoon

Final “Vignette Simulation”

Post Due: TBD

week 12 | Nov 20 | Desk Crits

week 13 | Nov 27 | Optional Desk Crits GVC

week 14 | Dec 7 (Sat) | Optional Desk Crits GVC

week 15 | Dec 16 | Final Review

GSAPP Final Review Week Dec 3 — Dec 12

  • Final Post /Presentation Due

Grading

  • Attendance / Class Participation…………….………….… 20%
  • Populations .…………….……………………..…………… 15%
  • Space .……………………….………………..…………… 15%
  • Time .……………………….………………..…………… 15%
  • Final………….…………….………………..……..….… 35%

Class Perspective

Experimentation — This class emphasizes experimentation over something well done but expected. Try to make things that surprise yourself. Life is short!

Openness — We’ll learn about an eclectic range of subjects, and strive to develop relations and new models that have not yet been made. Be open to new and untested theories and models.

Programming is hard — Learning to program will take years and years of practice like any other language. Not only is it a language, it’s also a very different way of thinking. Sometimes the best way to learn is to build things you enjoy. Play!

Collaboration Attitude — One of the best ways to learn new methods (especially in programming) is to learn from peers. Respect every voice, even quiet ones, and make class a great place to be. Support and push one another.

Documentation Methods

  • This class emphasizes videos, gifs and anything interactive because it demonstrates time, behavior, and rhythm which is hard to capture in a static image.
  • Diagrams and code are an important tool in documentation. They help to reveal intentions and assumptions in work. They also allow others to build off of your work.
  • Posting your work online is an opportunity to establish your voice, get credit for your ideas, and participate in the collective voice of the class.

Welcome to this class. I’m glad you’re here and I can’t wait to see how you grow and what you do this semester and beyond.

Violet

--

--

Violet Whitney
Data Mining the City

Researching Spatial & Embodied Computing @Columbia University, U Penn and U Mich