Home Systems — Model Architecture
This blog outlines the process of moving from abstract constraint to operational viewpoints for the ideal home. It starts with formally defining Land Capacity and Inhabitant Demand. It then frames the abstraction in terms of general stakeholder concerns and wraps up with several architectural viewpoints for implementing the model.
Introduction
The core constraint of the ideal home—Demand ⊆ Capacity—is a coherent abstraction. However, for the operability of the model, this abstraction must move toward concrete implementations. To do this, architectural design is useful for keeping the core constraint consistently applied.
The following will begin by creating operational definitions for demand and capacity. From there, macro-level design will be established for operational views and domains. With this completed, future implementation will be much more constructive and focused.
What Are Demand and Capacity?
Demand and capacity are the two variables that make up the core constraint of the ideal home (Demand ⊆ Capacity). While the relationship is intuitive enough, the terms themselves can become complicated when applied. Questions begin to emerge, such as:
- Is land simply the physical land?
- Does capacity include storage?
- Does inhabitant demand refer simply to biological needs?
- Does demand include comfort and psychological well-being as well?
These questions matter because the model needs to remain consistently applied across use cases.
Capacity & Demand as Sets
In the current understanding of the model, capacity and demand are treated as sets of objects. Thus, capacity can contain any number of objects, such as:
- Usable area
- Soil viability
- Water availability
- Sunlight exposure
- Shelter
- Climate conditions
Demand can contain objects such as:
- Metabolism
- Thermoregulation
- Utility usage
What this demonstrates is that demand and capacity are sets containing heterogeneous objects—that is, objects that are not of the same kind. For instance, usable area is not the same type of thing as sunlight exposure.
So the question becomes: what is the common property among each respective set? To put it more philosophically:
- What is the nature of capacity?
- What is the nature of demand?
Demand ⊆ Capacity Is an Abstraction
It is important to remember that Demand ⊆ Capacity is an abstraction, which means it is meant to be generalizable across use cases. Because of this, neither demand nor capacity should be trivially reduced to one type of thing. Instead, they need to apply to many operational realities at once.
Requirements for Operational Definitions
In order to arrive at a working definition, it may be best to consider the needs the definition must satisfy.
First, the definition must be generalizable—that is, it must apply across all use cases. While we cannot know all use cases, we can know those which we have already explored: across time and in terms of food, water, and energy usage. So we know the definition cannot be limited to any one of those perspectives but must subsume them.
Second, the definition must be meaningfully restrictive. In other words, the definitions cannot be so broad that they become operationally meaningless by providing no semantic constraint. For instance, if capacity simply means any aspect of land whatsoever, distinctions between storage and production become difficult to reason about consistently.
Definitions
With that in mind, we can begin working toward formal definitions.
Land Capacity (Capacity): any aspect of land that contributes to satisfying inhabitant demand.
More formally:
A more abstract version:
Inhabitant Demand (Demand): the required support needed by inhabitants.
Formally:
Architectural Viewpoints
To begin describing architectural design, it is useful to determine what perspective we are viewing the abstraction from. This is often termed a viewpoint in formal systems architecture.
A viewpoint implies the presence of a stakeholder and a concern. For the following, the primary stakeholders will be:
- developers — anyone who engages in constructing model implementations
- consumers — anyone who is interested in using the model for the sake of analyzing home systems
The concerns these stakeholders have largely fall under the umbrella of bridging the gap between the abstract and the concrete, or otherwise moving from theory to practice. For this, we need ways to put these abstract categories into:
- domain-based subsets
- modal perspectives
- temporal frameworks
The following will be an attempt at doing so.
Domain Viewpoint
Demand and capacity represent resource dynamics between land and inhabitants. These resource dynamics can be decomposed by type, or domain. For instance:
- Food
- Water
- Power
- Structure
- etc.
A major architectural task would be to identify central resource domains that drive the most meaningful exchange between land and inhabitants. We could call these core domains.
Core Domains
To narrow down potential core domains, we must identify what demands are most central to inhabitants. In general, these would be the demands that are necessary for survival. This would include the demand for resources such as:
- Food
- Water
- Shelter
Food and water are relatively straightforward resource domains. In terms of inhabitants, this represents metabolic and hydration requirements. This directly corresponds to a land’s capacity to provide caloric yield and water availability.
However, shelter becomes a bit less meaningful if taken as a static structure. Should we simply treat it as a need for a house? If so, capacity just becomes the ability to provide materials or the existing structure itself. Instead, shelter may be more meaningfully understood as the need for protection from the environment.
This includes weather, solar radiation, predators, and more. If we were to abstract a core need from this, thermoregulation may be the most comprehensive and appropriate for our current purposes. With that, we could say energy is a meaningful resource domain—land must provide enough energy for inhabitants to protect themselves from the elements.
This leads us to our core domains (non-exhaustive):
- Food
- Water
- Energy
Formal Subsets
With that in mind, we can begin formalizing these core domains. To start, demand and capacity represent resource sets. These sets can be partitioned into constituent subsets based on resource demands.
By applying those domains to our sets, we can produce formal subsets:
Thus, we can formally express the core constraint in terms of domain:
Metabolic Requirements ⊆ Caloric Yield
Hydration Requirements ⊆ Water Availability
Thermoregulatory Requirements ⊆ Energy Availability
Modal Viewpoint
A question that begins to emerge when considering resource subsets is: does this subset represent a potential or actual value? Is crop yield what a land is capable of producing or what it has actually produced? Are we thinking in terms of realized production or possible outcomes?
This concern creates the need for a modal viewpoint—a perspective concerned with the state or mode of a thing rather than its substance. In other words, the modal view is used when a use case requires knowledge of the state in which a resource exists.
From this view, we can now answer questions such as the above. A subset can be analyzed as actual or potential. For instance, a food subset of land capacity may be determined in terms of crop yield, as well as in terms of potential crop yield.
Actual vs. Potential
The primary practical difference between actual and potential is that of input. For instance, when measuring actual crop yield, we are measuring realized production (e.g., amount of each crop type, weight, etc.).
With potential yield, the input becomes arable area, soil profile, crop selection, climate conditions, etc.
On the surface, it may seem that actual and potential modes are primarily concerned with land capacity. This may be true practically speaking; however, these same modes can be applied to inhabitant demand. For instance, it may be useful to consider the potential for family growth, changing individual needs, or even health complications. Thus, there is a potential inhabitant demand that exists alongside the current actual demand.
Mode × Domain Matrix
From here, we can begin formalizing resources according to a matrix:
| Actual | Potential | |
|---|---|---|
| Food | Crop yield | Potential crop yield |
| Water | Water availability | Potential water availability |
| Energy | Energy availability | Potential energy availability |
If this seems obvious or unrevealing, that means the architecture is doing its job. The goal is not to produce profound insights, but rather to organize the macro-level structure of the model so that it can begin reflecting the nuances of the underlying reality while reducing complexity.
Extensibility of Modes
This section focused on actual and potential modes. However, these modes do not exhaust the modal view; they simply happen to be a useful starting point. Future extensions could account for a range of possible modal views, such as peaks, failure states, risk, etc. Furthermore, explicit use of possible world semantics, as well as stochastic analysis, could make the existing architecture more robust. That said, the current goal is simply to establish a minimally useful set that is immediately operational.
Temporal Viewpoint
It is necessary to consider temporality if we are to avoid treating the relationship between land and inhabitants as static. This is where the model becomes:
With the variable time, we can now model capacity and demand as multidimensional.
Common time periods may include:
- Seasonal
- Annual
- Long-term
Stocks and Flows
With the temporal dimension, we now see the importance of explicitly modeling storage — capacity is not just what is produced at any moment, but also what has accumulated over time. A question raised previously was: does capacity include storage? The answer is yes.
The distinction we actually make here is not between capacity and storage, but between stocks and flows. Flows are the processes through which transformation occurs. Practically speaking, in terms of resources, flow is the rate at which a quantity increases or decreases. A field of crops actively produces over a period of time, and the rate at which that occurs (e.g., x per month) can be thought of as the flow of production.
Stocks represent the state of resource quantity at a moment in time. While a crop field is understood as producing over time, a storage unit can be understood as holding a static amount at a discrete moment in time.
For a stronger visual representation, a matrix may help:
| Stock | Flow | |
|---|---|---|
| Food | Pantry | Crop growth rate |
| Water | Reservoir volume | Rainfall per day |
| Power | Battery charge | Solar generation rate |
Thus, where technical clarity is a concern, the above model may actually be described as:
Evaluative Metrics Viewpoint
From the relation of the above viewpoints, we can derive metrics for certain use cases.
Optimality
Represents how efficiently a system realizes its theoretical productive potential in practice. Measures the percentage of potential capacity that is realized as actual capacity.
Example:
- Actual Caloric Yield — 10,000 kilocalories per season
- Potential Caloric Yield — 100,000 kilocalories per season
- Optimality Rating — 10%
Feasibility
Represents the degree to which a system can satisfy required demand under its available capacity constraints. Measures the percentage of demand that can be satisfied by available capacity.
| Value | Meaning |
|---|---|
| 50% | insufficient |
| 100% | exact sufficiency |
| 200% | double required capacity |
Example:
- Potential Caloric Yield — 150,000 kilocalories per season
- Overhead Loss — 25,000 kilocalories per season
- Metabolic Requirements — 180,000 kilocalories per season
- Feasibility Rating — ~70% (almost sufficient at providing for demand)
Sustainability
Represents the degree to which a system can sustain its own productive capacity without self-exhaustion. Measures the percentage of potential capacity that remains after sustaining the system itself.
| Value | Meaning |
|---|---|
| 100% | no sustaining overhead |
| 80% | efficient |
| 50% | half of output consumed internally |
| 0% | entirely self-consuming |
| < 0% | unsustainable |
Example:
- Potential Caloric Yield — 100,000 kilocalories
- Overhead Loss — 25,000 kilocalories
- Sustainability Rating — 75% (~ efficient producer of capacity)
Conclusion
With that, the model has now moved from pure abstraction toward operationalization. Capacity and demand have been given formal definitions. Several viewpoints have been defined for common use-case perspectives. From here, the model can begin developing toward practical ends.
The next steps will involve developing thin-slice prototypes for each major domain. This will be done using an experimental method so that models can be empirically grounded. These prototypes can then be iterated upon as real-world demands emerge.
The prototypes will start small and minimal. The goal for this model is not precision, but utility. If a crude or simplistic model of the land provides useful metrics for analyzing feasibility, then further fidelity is not necessarily helpful nor desired.