πŸŒ€ Studio-in-Flux

by Vaibhav Jain and Manas Bhatia

Spatial AI by William Martin
GSAPP 2024–2025 | Columbia University

Simulation GIF View Interactive Simulation β†’

Part A β†’ Real-World Setting

All Entities Overview
All Entities Overview

Document the Space

Elevation 1
Elevation 1
Elevation 2
Elevation 2

Location: GSAPP 600N Studio, Avery Hall

Environment

Environment 1
Environment 1
Environment 2
Environment 2

Obstacles

Obstacles 1
Obstacles 1
Obstacles 2
Obstacles 2

Entities

Entities 1
Entities 1
Entities 2
Entities 2

Agents

Agents 1
Agents 1

Circulation

Circulation
Circulation

πŸ’‘ How is the circulation affected by the change in the following rules between the agents and the environment?

a
Number of divisions
b
Layout arrangement in each division
c
Change the entrances/exits

Part B β†’ Spatial Concept

"The GSAPP architectural design studio exists as an oscillating field, where space is in constant negotiation between structure and spontaneity. As a striated space, it is gridded with desks, pinned-up drawings, and structured critiques, imposing order and discipline. Yet, within this framework, smooth space emergesβ€”fluid movement, impromptu discussions, and iterative design processes disrupt the grid, fostering creativity. This interplay transforms the studio into a form of Ba, a knowledge-mobilization space where collective intelligence thrives through cultural exchange and shared experimentation. ε’Œ (Wa) manifests in the delicate balance between collaboration and individual exploration, ensuring that both coexist within the studio's spatial rhythm. Following Bruno Zevi's framing, the studio is not merely a backdrop for work but an evolving stage where movement, dialogue, and intervention shape its essence. Finally, it embodies Void & Presence, where empty desks hold potential, and spaces between conversations define the invisible yet powerful currents of thought and design."

Part C – Semantic Model

🧱 ENTITIES β†’

Studio Isometric
πŸ›οΈ Studio
Area: sq ft / sq m
Floor Count: number
Ceiling Height: ft / m
Lighting Level: low / medium / high
Ventilation Type: natural / mechanical / hybrid
Occupancy Limit: number
Entry Count: number
Material Finish: string (e.g., concrete, wood, drywall)
Door and Window
πŸͺŸ Door and window
Type: window / door
Dimensions: width Γ— height
Is Openable: boolean
Material: glass / wood / metal
Location: wall reference or coordinate
Visibility Through: yes / no
Services and Ducts
πŸ› οΈ services and ducts
Type: HVAC / plumbing / electrical
Location: ceiling / wall / floor
Diameter: cm
Status: active / inactive
Maintenance Cycle (days): number
Exposure: exposed / concealed
Working Desk
πŸͺ‘ working desk
Dimension: width Γ— depth
Surface Material: wood / metal / plastic
Has Drawer: boolean
Fixed or Movable: fixed / movable
Position in Room: coordinate or zone
Power Outlet Access: boolean
Chair
πŸͺ‘ chair
Type: ergonomic / regular / stool
Has Wheels: boolean
Adjustability Level: 1–5
Material: mesh / leather / plastic
Condition: good / worn / broken
Computer and CPU
πŸ’» computer and CPU
Device Type: desktop / workstation
CPU Spec: string
RAM: GB
GPU: model / none
Operating System: string
Power Status: on / off
Keyboard and Mouse
⌨️ keyboard and mouse
Type: wired / wireless
Brand: string
Connectivity: USB / Bluetooth
Status: functional / needs replacement
Discussion Tables
πŸ§‘β€πŸ€β€πŸ§‘ πŸͺ‘ discussion tables
Shape: round / rectangular / oval
Dimension: width Γ— length
Seating Capacity: number
Material: wood / metal / laminate
Has Display Connection: boolean
Locker
πŸ” locker
Dimension: height Γ— width Γ— depth
Lock Type: key / pin / RFID
Ventilation Slot: yes / no
Material: metal / plastic
Status: locked / open
Storage and Open Shelf
πŸ“š storage and open shelf
Type: open / closed
Dimension: height Γ— width Γ— depth
Shelf Count: number
Material: wood / metal / MDF
Fixed to Wall: boolean
TV Stand
πŸ“Ί TV stand
Screen Size: inches
Input Ports: HDMI / USB / wireless
Has Wheels: boolean
Power Status: on / off
Audio Output: built-in / external
Printer
πŸ–¨οΈ printer
Type: laser / inkjet / plotter
Supported Paper Size: A4 / A3 / A0
Color Printing: yes / no
Status: online / offline
Location Zone: string
Trash Bin
πŸ—‘οΈ trash bins
Type: general / recycling / e-waste
Capacity: liters
Material: plastic / metal
Fill Level: percentage
Lid Type: open / foot pedal / swing
Students
πŸ§‘β€πŸŽ“ students
Name: string
Age: number
Department: string
Working Hours: time range
Preferred Location: zone or desk reference
Social Behavior: introvert / extrovert / mixed
Design Style: analog / digital / hybrid
Collaboration Frequency: low / medium / high
Mobility Pattern: static / roaming / flexible
Professors
πŸ‘¨β€πŸ« professors
Name: string
Professor ID: string
Discipline: design / history / theory
Studio Days: schedule
Interaction Frequency: high / medium / low
Studio Groups
πŸ‘₯ studio groups
Group ID: string
Project Theme: string
Member Count: number
Collaboration Schedule: frequency (daily / weekly)
Assigned Zone: location or room

πŸ”— RELATIONSHIPS β†’

Studio room has many Course/studio Divisions
πŸ›οΈ studio room has many Course/studio Divisions
A studio room is divided into multiple course or studio divisions, organizing students and activities by academic focus.
Studio Division has many desk divisions
πŸ›οΈ studio Division has many desk divisions
Desk proximity influences activity type (isolation or group work).
Desk Division has a Study desk
πŸ›οΈ desk Division has a Study desk
Desk is near Desk (proximity) β€” affects potential collaboration.
Study desk has a Storage shelf
πŸ›οΈ Study desk has a Storage shelf
Allows for open display of student work.
Study desk has many Computer, Cpu, Mouse, Keyboard
πŸ›οΈ Study desk has many Computer, Cpu, Mouse, Keyboard
Individual PC setup for every student.
Studio desk has many Study chairs
πŸ›οΈ studio desk has many Study chairs
Moveable study chairs allow for free movement, learning and collaboration.
Study chair has many students
πŸ›οΈ study chair has many students
A student shares the study desk with another student.
Student has a professor
πŸ›οΈ student has a professor
Student interacts with Professor (talking, working, observing).
Studio Division has a Common space
πŸ›οΈ studio Division has a Common space
The studio integrates a shared zone to foster informal gatherings and collaborative work.
Common space has many discussion tables
πŸ›οΈ common space has many discussion tables
Multiple discussion tables enable parallel group conversations and idea exchange.
Discussion table has many Storage lockers
πŸ›οΈ discussion table has many Storage lockers
Each table is paired with storage units to keep personal or group materials organized and accessible.
Common space has a Tv stand
πŸ›οΈ common space has a Tv stand
The TV stand supports visual presentations, announcements, and shared media viewing.
Common space has many Students and professor
πŸ›οΈ common space has many Students and professor
The area serves as a dynamic hub where faculty and students interact outside formal settings.
Common space has a Storage counter
πŸ›οΈ common space has a Storage counter
All the material required for the printer is stored in the storage counter.
Common space has a Studio printer
πŸ›οΈ common space has a Studio printer
Equipped with a shared printer, the space supports quick printing needs for design and documentation.
Common space has a Trash can
πŸ›οΈ common space has a Trash can
Accessible waste bins promote cleanliness and self-maintenance of the shared environment.
Studio Division has many Study chairs
πŸ›οΈ studio Division has many Study chairs
Multiple movable chairs allow flexible seating arrangements based on task or group size.
Study chair has many Students
πŸ›οΈ study chair has many Students
Chairs are shared across time by different students, supporting transient and adaptable use.
Studio Division has a Professor
πŸ›οΈ studio Division has a Professor
A designated professor oversees the studio, providing guidance and mentorship.
Professor has many Students
πŸ›οΈ professor has many Students
The professor mentors a group of students, fostering academic growth and project feedback.

πŸ” ACTIONS β†’

Sit Action
πŸͺ‘ Sit: Student occupies Study Chair
Changes chair state to "occupied" and updates user presence in the space.
Move Action
πŸͺ‘ Move: Student or Professor changes position
Updates user location attribute; alters proximity relationships and spatial dynamics.
Modify Environment Action
πŸͺ‘ Modify Environment: User interacts with lighting, furniture, or window
Adjusts environmental attributes like light level, airflow, or furniture configuration.
Collaborate & Rearrange Action
πŸ›οΈ Collaborate & Rearrange: Group Work with Spatial Adjustment
Switches user mode to "collaborative"; updates table state and layout configuration.
Present Action
πŸ“Ί Present: TV or Screen turns on for session
Activates presentation mode; shifts common space focus to visual attention.
Personalize Desk Action
πŸͺ‘ Personalize Desk: Make the Desk Your Own
Changes the desk's identity state to personalized by adding unique objects, decorations, or setups assigned to a student.
Store Items Action
πŸ›οΈ Store Items: Student uses locker or storage counter
Changes storage unit status to "occupied" and frees up desk space.
Arrive/Leave Desk Action
πŸͺ‘ Arrive/Leave Desk: Student Comes To or Leaves Desk
Changes the desk state between occupied and vacant, and updates the student's presence status at that location.

πŸ“ RULES β†’

Entry Rule
πŸšͺ Entry Rule : One Way In, One Way Out
Studio room can only be accessed and exited through a single designated door.
Access Path Rule
πŸšͺ Access Path : Corridor Only
Each studio division must be accessible only via the main corridor.
Spatial Division Rule
πŸ›οΈ Spatial Division – Multiple Subspaces
Each studio room must contain multiple studio divisions.
Seat Rule
πŸͺ‘ Seat Rule : One Chair, One Student
Each desk must have one chair; students can only occupy one at a time.
Furniture Rule
πŸ›οΈ Furniture Rule : Fixed Setup
Furniture is fixed; only chairs can be moved.
Tech Limit Rule
πŸ›οΈ Tech Limit : Setup Cap
A desk can never exceed its max number of PC setups.
Discuss and store Rule
πŸ›οΈ Discuss and store : Central Table and desks
Each studio division has allocated place to store and for group discussions
Printer and Dustbin Rule
πŸ›οΈ Printer and Dustbin Provision Rule
Every studio must always include two printers, each placed adjacent to a dustbin.

You are a logical engine assigned to the following semantic model and ontologies. You can only respond to queries and actions in accordance with these definitions.

Entities & Attributes

Rules

Actions

Part D β†’ Computational Model

The computational model forms the backbone of the Studio-In-Flux simulation, translating spatial rules and agent behaviors into a dynamic, interactive environment. This section breaks down the simulation's architectureβ€”from initialization and environment setup, through the main simulation loop and rendering, to user feedback and reset logic. Whether you're a designer, developer, or curious observer, you'll gain a clear understanding of how the studio's logic is encoded and visualized step by step.

Workflow Diagram

flowchart TD
    Start([Start])
    LoadUI([Load UI & Scripts])
    InitVars([Initialize Global Variables & UI Controls])
    SetupEnv([Setup Environment])
    CreateGrid([Create Grid])
    PlaceDesks([Place Desks])
    InitAgents([Initialize Agents])
    SetEntryExit([Set Entry/Exit Points])
    MainLoop([Main Simulation Loop])
    HandleInput([Handle User Input/Events])
    UpdateState([Update Simulation State])
    UpdateAgents([Update Agents])
    UpdateHeatmap([Update Heatmap])
    UpdateStats([Update Statistics & Scores])
    Render([Render/Display State])
    Draw([Draw Grid, Desks, Agents, Heatmap, Legends])
    UpdateUI([Update UI Elements])
    CheckEnd([Check for End Condition])
    PauseReset([Pause/Reset/Restart?])
    Reset([Reset Simulation])
    LoopOrEnd([Loop or End])

    Start --> LoadUI --> InitVars --> SetupEnv
    SetupEnv --> CreateGrid
    SetupEnv --> PlaceDesks
    SetupEnv --> InitAgents
    SetupEnv --> SetEntryExit
    SetupEnv --> MainLoop
    MainLoop --> HandleInput --> UpdateState
    UpdateState --> UpdateAgents
    UpdateState --> UpdateHeatmap
    UpdateState --> UpdateStats
    UpdateState --> Render
    Render --> Draw
    Render --> UpdateUI
    MainLoop --> CheckEnd
    CheckEnd -->|No| MainLoop
    CheckEnd -->|Yes| PauseReset
    PauseReset -->|Reset| Reset --> MainLoop
    PauseReset -->|End| LoopOrEnd
        

1. Initialization Phase

2. Environment & Agent Preparation

3. Main Simulation Loop

4. Rendering/Display

5. Output & Feedback

6. Termination/Restart

Part E β†’ Artificial Intelligence Methods

Tool: GPT-4o via Funkify

  1. Text-to-Text Reasoning
    • Interpreted the semantic model and spatial rules
    • Answered questions about circulation and layout
    • Explained the impact of changing parameters (e.g., divisions, desk orientation)
  2. Function Calling
    • Called custom functions like update_simulation(), collaboration_potential(), evaluate_circulation(), and calculate_layout_score()

Future Scope:

  • Screenshot Interpretation
    Tool: GPT-4o with images
    • Analyzed simulation screenshots
    • Described spatial behavior and circulation patterns visually
  • The simulation can be 3D
  • We can simulate two cases - one in which agents cannot move chairs, and one in which they can and compare the results using LLM.
  • We can find circulation impact when agents have different goals - to work individually vs in a group, to interact with desks, or to work at their desks, etc.

Part F β†’ Working AI System (Simulation)

2 DIVISIONS
4 DIVISIONS
9 DIVISIONS
SINGLE LOADED
DOUBLE LOADED
SINGLE LOADED
DOUBLE LOADED
ROW TYPE
ROW TYPE
COLUMN TYPE
COLUMN TYPE
I - SHAPED ENTRY/EXIT
L - SHAPED ENTRY/EXIT
Z - SHAPED ENTRY/EXIT
1
2
3
4
5
6
7
8
9
10
11
12

Part G β†’ Summarize Learnings

πŸ“š Learnings from the Simulation–LLM Integration

We set out to investigate how circulation within a studio space is affected when we change the rules and relationships defined in a semantic model. Specifically, we focused on varying:

  • Number of spatial divisions
  • Location of entry and exit points
  • Orientation of desks (row, column, cluster)
πŸ”Ά 1. Defining the Semantic Model
  • Created a detailed semantic model describing the studio environment, entities, attributes, relationships, actions, and rules.
  • This model served as the foundation for all logic, simulation, and reasoning tasks.
πŸ”Ά 2. Using LLM (Funkify) to Interact with the Model
  • Asked natural language questions about the space.
  • Tested LLM interpretation of the semantic model.
  • Changed studio parameters and queried the LLM about circulation under new configurations.
πŸ”Ά 3. Modeling Circulation and Layout Evaluation
  • Developed a function to evaluate circulation in text form.
  • Created a layout scoring function (numeric score based on fragmentation, access balance, desk arrangement).
  • LLM could evaluate circulation in text, but numeric scoring required explicit data.
πŸ”Ά 4. Calculating Agent Distance
  • Defined a function to calculate average agent distance (theoretical, needs real simulation data).
  • Concluded that real agent paths must be generated by the simulation and passed to the LLM for accurate evaluation.
πŸ”Ά 5. Simulation-Driven Reasoning Loop
  1. User defines an intent (e.g., "make circulation smoother").
  2. LLM interprets intent, updates simulation parameters.
  3. Simulation runs, generating spatial outcomes (agent paths, congestion).
  4. LLM reads results, interprets circulation, and suggests further changes.
  • Tested by asking questions about simulation screenshots and changing agent agency (e.g., allowing agents to move chairs).
πŸ”Ά 6. Key Takeaways
  • βœ… The semantic model must reflect what we intend to test.
  • βœ… Funkify is effective for reasoning and mapping function requirements.
  • ⚠️ The LLM can't compute without data, but can reason hypothetically or guide data generation.
  • ℹ️ The simulation must feed results (agent paths, congestion, timings) back into the loop for the LLM to make sense of it.
  • βœ… The AI system can autonomously interpret results, recommend adjustments, and identify optimal configurations for circulation.