The New Domestic

Thoughts.Ideas.You
Data Mining the City
12 min readDec 19, 2019

by Shailee Kothari and Sritoma Bhattacharjee

“When one looks at the floor plan, it is supposed to describe human relationships, in which the addition of windows, doors, walls, and stairs are utilized to first divide the space, then selectively reunite the inhabited space.” Architecture is designed to provide a format for social life, and the dynamic interactions that happen in constantly pacing time. — Robin Evans in Figures, doors & passages.

The Hypothesis — Background

The project aims to rethink the design of future neighborhoods in order to improve the quality of life, while tackling the challenges of rising inequality, densification, increasing costs and globalization in cities today.

Due to rapid urbanization, there has been a resurgence of co-living all over the world. The high prices of real estate and an increasingly solitary lifestyle are leading people to seek new ways of living.

Cities that we inhabit now are the result of the huge transformation in our lives with the arrival of industrialization, the separation of the place of living and the place of work, and the idea that you leave the home to work However, our houses and neighborhoods should be changing in relation to the fact that 80 per cent of young professionals are working from their beds (wall street journal article).

Now workers coordinating across different time zones are returning to a flexible sleep schedule, in order to make conference calls with offices on the other side of the world. Shifting attitudes to sleep are already creating new typologies of urban architecture such as new hotels that have sleeping pods, are very reminiscent of the Archigram designs of the 1960s,”

Community living also brings into question the relationship of men, women and children in today’s world as theorized by Dolores Hayden in The Grand Domestic Revolution through domestic reorganization and creating community services.

The combination of smart-phone technology, the flexible and un-tethered nature of work, the sharing economy, and the rise of co-living has given the “horizontal architecture” of the bed a new significance, claims Architectural Historian Beatriz Colomina.

What are we doing — a new way of organizing apartments.

The co-living models being tried out today concern themselves only with space optimization. The potential, instead, it seems would lie in being able to optimize space through time. It thus presents itself as a spatial as well as a temporal problem. An agent based scheduling and space organization simulation has been attempted to unlock the potential of such an approach.

Ownership

Historically, certain sects of people have been treated in inhuman ways. When it comes to ownership of land and space, they fall into a great disadvantage as ownership of land and space is very much a factor of time. It is an asset that builds through generations and can be used to build other assets. The implications thus multiply significantly. With this ever widening chasm between the rich and the poor, cities are becoming increasingly polarized. With a belief that space shouldn’t be a commodity to be owned by people, the project explores the possibility of housing with zero ownership and tests it against varying levels of privacy.

Privacy

The simulation looks at the use of space in flux based on contemporary variable lifestyle and its inefficiency in occupation of space over different time cycles. Leading to a layered privacy concept where the owner would be able to regulate the sharing ratio of the apartment. Four scenarios are considered:

  1. 100% Ownership and 100% Privacy — each person has their own apartment
  2. 100% Ownership and 0% Privacy — current co-living model
  3. 0% Ownership and 100% Privacy — each room is always occupied by 1 person
  4. 0% Ownership and 0% Privacy — each room is always occupied as per the room limit.

Living: 4 persons

Kitchen and Dining: 2 persons

Study: 2 persons

Bedroom: 2 persons

Bathroom: 1 person

Schedule

A hypothetical schedule is created for a nurse who has night shifts, an accountant with a 9–5 job, an architecture student who spends sleepless nights at school, a retiree who spends most of his/her time at home and a techie who works from home. These schedules are then multiplied to get 20 schedules for twenty people.

Adjacency

We outlined different rules for generating floor plans based on the privacy and sharedness level and using the transitions from space to space in the schedule. The corridor is always generated first followed by the living room and the bedroom, the bathroom and the kitchen and then the study. In the model where there is no ownership and no sharedness, the corridor is the seed which connects to the living area or bedroom area. This scenario led to the some of the entries being from the bathroom where people freshen up before entering their living room or bedroom. The kitchen is connected to the living room and bedroom, and the study is connected to the bedroom and living room. The bathroom turns out to be the key in all spaces and they all benefit from being connected to the bathroom. Another model was created where all spaces get accessed from the corridor and thus the corridor becomes the space of encounter.

Since the normal rules for housing such as light/ventilation or efficiency of vertical circulation of services were not the concern here, they were not considered in generating the floor plan.

Simulation Vignettes

SCENARIO 1: 100% PRIVACY & 100% OWNERSHIP
SCENARIO 2: 100% PRIVACY & 0% OWNERSHIP
SCENARIO 2 Modified Floor Plan: 100% PRIVACY & 0% OWNERSHIP
SCENARIO 3: 0% PRIVACY & 0% OWNERSHIP

How It Works

The schedules of the different people that are going to live in the apartment are input into an excel sheet. A csv file is created from it which is then turned into arrays in c#. An app can be used by people to input their schedules into the system and generate floor plans in real time.

For the sake of simplicity, hours of the day are taken in two hour intervals. Each array contains the spaces that are being used at that hour. The simulation starts from 8 AM and generates all the spaces required at that time. It then goes onto 10 AM and generates only those spaces which are not in the previous array.

SCHEDULE AS EXCEL
SCHEDULE AS CSV INPUT — INTERACTIVE

People Per Square Foot

CAPITALIST VS COMMUNIST LIVING

The project, through a changed ownership model, proposes a more affordable way of living. One would thus only be paying for the space that they occupy for that specific period of time. People would move from space to space while their phone detects the change in space at the threshold (door) and charges them for it and registers it in the system. The varying affordability allows us to create a society where all are allowed equal access to space vs today’s capitalist rental market.

Even though the proposed designs focus on creating reasonable cost and density, they create opportunities for intellectual conglomeration by means of this density through spaces that can force or stimulate interactions. Through such a controlled system, the owners can control the interactions people have in space.

DESIGN SOCIAL INTERACTIONS BASED ON NEEDS

What Do We Learn

By controlling the privacy and ownership, we create varying floor plans, each which can accommodate a different density of residents. The same number of residents occupy a considerably more area when there is ownership and no sharedness, compared to where there is no ownership and no sharedness. This area occupied reduces even further when there is no ownership and no sharedness. It was thus found that the quality of life can be made better by scheduling the occupancy of the different spaces instead of cramming multiple residents into one space or making the space itself smaller.

Further Thoughts

The traditional notion of a “living room” or a “bedroom” cannot be used to design housing in the future. The way people use these spaces is going to be drastically different in a zero ownership model and it thus lends itself to a lot more experimentation and thought.

Implications of such a project would be an equilibrium of work timings where the population in a city works for different third of the day.

NEIGHBORHOODS BASED ON EQUALITY INSTEAD OF SEGREGATION

The system can begin as a equal living neighborhood instead of mirroring the current power segregation in society.

This model of living could lead to a reduction in the contemporary social isolation epidemic.

Finally this shared concept can be extended for the reuse of other objects like cellphones,clothes, furniture, etc.

Script Vignettes

Scenario 3 Function

using System.Collections;using System.Collections.Generic;using UnityEngine;public class RoomSpawning : MonoBehaviour{public GameObject LivingRoom;public GameObject KitchenDiningRoom;public GameObject StudyRoom;public GameObject BathRoom;public GameObject BedRoom;public GameObject Corridor;string[] eightAM = { "Living", "Bedroom", "Bathroom", "Bathroom", "Study" , "Living", "Bedroom", "Bathroom", "Bathroom", "Study" , "Living", "Bedroom", "Bathroom", "Bathroom", "Study" ,"Living", "Bedroom", "Bathroom", "Bathroom", "Study" };string[] tenAM = { "Living", "Bed", "Bed", "Out", "Out" , "Living", "Bed", "Bed", "Out", "Out" ,"Living", "Bed", "Bed", "Out", "Out", "Living", "Bed", "Bed", "Out", "Out" , "Living", "Bed", "Bed", "Out", "Out" };string[] twelvePM = { "Bath", "Bath", "Bed", "Out", "Out" , "Bath", "Bath", "Bed", "Out", "Out" , "Bath", "Bath", "Bed", "Out", "Out", "Bath", "Bath", "Bed", "Out", "Out"  };string[] twoPM = { "Study", "Kitchen", "Bed", "Out", "Out" , "Study", "Kitchen", "Bed", "Out", "Out" , "Study", "Kitchen", "Bed", "Out", "Out", "Study", "Kitchen", "Bed", "Out", "Out" };string[] fourPM = { "Living", "Study", "Bed", "Out", "Out" ,"Living", "Study", "Bed", "Out", "Out", "Living", "Study", "Bed", "Out", "Out", "Living", "Study", "Bed", "Out", "Out"  };string[] sixPM = { "Bath", "Study", "Bath", "Kitchen", "Out" , "Bath", "Study", "Bath", "Kitchen", "Out" , "Bath", "Study", "Bath", "Kitchen", "Out", "Bath", "Study", "Bath", "Kitchen", "Out" };string[] eightPM = { "Bed", "Study", "Kitchen", "Living", "Out" ,"Bed", "Study", "Kitchen", "Living", "Out" , "Bed", "Study", "Kitchen", "Living", "Out", "Bed", "Study", "Kitchen", "Living", "Out"  };string[] tenPM = { "Bed", "Study", "Out", "Bath", "Out" , "Bed", "Study", "Out", "Bath", "Out" , "Bed", "Study", "Out", "Bath", "Out" , "Bed", "Study", "Out", "Bath", "Out"  };string[] twelveAM = { "Bed", "Bath", "Out", "Bed", "Out" , "Bed", "Bath", "Out", "Bed", "Out" , "Bed", "Bath", "Out", "Bed", "Out" , "Bed", "Bath", "Out", "Bed", "Out" };string[] twoAM = { "Bed", "Living", "Out", "Bed", "Bath" , "Bed", "Living", "Out", "Bed", "Bath", "Bed", "Living", "Out", "Bed", "Bath", "Bed", "Living", "Out", "Bed", "Bath" };string[] fourAM = { "Bath", "Bed", "Out", "Bed", "Bed" , "Bath", "Bed", "Out", "Bed", "Bed", "Bath", "Bed", "Out", "Bed", "Bed" , "Bath", "Bed", "Out", "Bed", "Bed"  };string[] sixAM = { "Kitchen", "Bed", "Out", "Bed", "Bath" ,"Kitchen", "Bed", "Out", "Bed", "Bath" , "Kitchen", "Bed", "Out", "Bed", "Bath" , "Kitchen", "Bed", "Out", "Bed", "Bath"   };int LivingBuilt = 0;int LivingNeed = 0;int KitchenBuilt = 0;int KitchenNeed = 0;int BedBuilt = 0;int BedNeed = 0;int BathBuilt = 0;int BathNeed = 0;int StudyBuilt = 0;int StudyNeed = 0;// Start is called before the first frame updatevoid Start(){}// Update is called once per framevoid FixedUpdate(){List<string> schedule = new List<string>();//eightAM Array adding spaces to the Listforeach (string Living in eightAM){schedule.Add("Living");LivingBuilt++;break;}foreach (string Bedroom in eightAM){schedule.Add("Bedroom");break;}foreach (string Bathroom in eightAM){schedule.Add("Bathroom");break;}foreach (string Study in eightAM){schedule.Add("Study");break;}foreach (string Kitchen in eightAM){schedule.Add("Kitchen");break;}foreach (string Living in tenAM){if schedule.Count "Living" >= LivingBuiltschedule.Add("Living");LivingBuilt++else don't do anything}foreach (string Bedroom in tenAM){schedule.Add("Bedroom");}foreach (string Bathroom in tenAM){schedule.Add("Bathroom");}foreach (string Study in tenAM){schedule.Add("Study");}foreach (string Kitchen in tenAM){schedule.Add("Kitchen");}foreach (string Living in twelvePM){schedule.Add("Living");}foreach (string Bedroom in twelvePM){schedule.Add("Bedroom");}foreach (string Bathroom in twelvePM){schedule.Add("Bathroom");}foreach (string Study in twelvePM){schedule.Add("Study");}foreach (string Kitchen in twelvePM){schedule.Add("Kitchen");}foreach (string Living in twoPM){schedule.Add("Living");}foreach (string Bedroom in twoPM){schedule.Add("Bedroom");}foreach (string Bathroom in twoPM){schedule.Add("Bathroom");}foreach (string Study in twoPM){schedule.Add("Study");}foreach (string Kitchen in twoPM){schedule.Add("Kitchen");}foreach (string Living in fourPM){schedule.Add("Living");}foreach (string Bedroom in fourPM){schedule.Add("Bedroom");}foreach (string Bathroom in fourPM){schedule.Add("Bathroom");}foreach (string Study in fourPM){schedule.Add("Study");}foreach (string Kitchen in fourPM){schedule.Add("Kitchen");}foreach (string Living in sixPM){schedule.Add("Living");}foreach (string Bedroom in sixPM){schedule.Add("Bedroom");}foreach (string Bathroom in sixPM){schedule.Add("Bathroom");}foreach (string Study in sixPM){schedule.Add("Study");}foreach (string Kitchen in sixPM){schedule.Add("Kitchen");}foreach (string Living in eightPM){schedule.Add("Living");}foreach (string Bedroom in eightPM){schedule.Add("Bedroom");}foreach (string Bathroom in eightPM){schedule.Add("Bathroom");}foreach (string Study in eightPM){schedule.Add("Study");}foreach (string Kitchen in eightPM){schedule.Add("Kitchen");}foreach (string Living in tenPM){schedule.Add("Living");}foreach (string Bedroom in tenPM){schedule.Add("Bedroom");}foreach (string Bathroom in tenPM){schedule.Add("Bathroom");}foreach (string Study in tenPM){schedule.Add("Study");}foreach (string Kitchen in tenPM){schedule.Add("Kitchen");}foreach (string Living in twelveAM){schedule.Add("Living");}foreach (string Bedroom in twelveAM){schedule.Add("Bedroom");}foreach (string Bathroom in twelveAM){schedule.Add("Bathroom");}foreach (string Study in twelveAM){schedule.Add("Study");}foreach (string Kitchen in twelveAM){schedule.Add("Kitchen");}foreach (string Living in twoAM){schedule.Add("Living");}foreach (string Bedroom in twoAM){schedule.Add("Bedroom");}foreach (string Bathroom in twoAM){schedule.Add("Bathroom");}foreach (string Study in twoAM){schedule.Add("Study");}foreach (string Kitchen in twoAM){schedule.Add("Kitchen");}foreach (string Living in fourAM){schedule.Add("Living");}foreach (string Bedroom in fourAM){schedule.Add("Bedroom");}foreach (string Bathroom in fourAM){schedule.Add("Bathroom");}foreach (string Study in fourAM){schedule.Add("Study");}foreach (string Kitchen in fourAM){schedule.Add("Kitchen");}foreach (string Living in sixAM){schedule.Add("Living");}foreach (string Bedroom in sixAM){schedule.Add("Bedroom");}foreach (string Bathroom in sixAM){schedule.Add("Bathroom");}foreach (string Study in sixAM){schedule.Add("Study");}foreach (string Kitchen in sixAM){schedule.Add("Kitchen");}var CorridorPosition = new Vector3(10, 0, 0);var LivingPosition = CorridorPosition + new Vector3(10, 0, 0);var BedPosition = CorridorPosition + new Vector3(10, 0, 10);Vector3 BathPosition = LivingPosition + BedPosition ;var StudyPositionvar KitchenPositionvar NewLivingPosition = CorridorPosition + new Vector3(10, 0, 0);var NewBedPosition = CorridorPosition + new Vector3(10, 0, 0);var NewStudyPositionvar NewBathPositionvar NewKitchenPositionInstantiate(Corridor, CorridorPosition, Quaternion.identity);foreach (string Living in schedule){Instantiate(LivingRoom, LivingPosition, Quaternion.identity);break;}foreach (string Bedroom in schedule){Instantiate(BedRoom, BedPosition, Quaternion.identity);break;}foreach (string Bathroom in schedule){Instantiate(BathRoom, BathPosition, Quaternion.identity);break;}foreach (string Kitchen in schedule){Instantiate(KitchenDiningRoom, new Vector3(0, 0, 0), Quaternion.identity);break;}foreach (string Study in schedule){Instantiate(StudyRoom, new Vector3(0, 0, 0), Quaternion.identity);break;}schedule.Clear();}}

Linking CSV file Function

for (int i = 0; i < data.Length - 1; i++){string[] row = data[i].Split(new char[] { ',' });if (row[1] != ""){Schedule s = new Schedule();int.TryParse(row[0], out s.id);s.name = row[1];s.room = row[2];s.room = row[3];s.room = row[4];s.room = row[5];schedules.Add(s);}

References

Evans, R. (1997). Translations from drawing to building. Cambridge, MA: MIT Press.

https://steemit.com/architecture/@twotoedsloth/domesticspaceasfiguresdoorsandpassagesbyrobinevans-uw0rl7v1ny

http://work.antonandirene.com/onesharedhouse/2/

https://emthesis.files.wordpress.com/2008/11/evans-figures-doors-and-passages.pdf

--

--