IoT Home Cooling System Design

Source: examples/grammar/iot_home_cooling_system_design.py

Introduction

Build and evaluate a small IoT home cooling-system design.

Technical Implementation

This page is generated from the top-of-file module docstring and the example source code. The full script is included below for direct inspection.

 1from __future__ import annotations
 2
 3import design_research_problems as derp
 4
 5
 6def main() -> None:
 7    """Create a simple IoT network and evaluate lifecycle and thermal metrics."""
 8    problem = derp.get_problem("iot_home_cooling_system_design")
 9    state = problem.initial_state()
10    transitions = problem.enumerate_transitions(state)
11
12    state = problem.add_processor(state, x=-8.708087, y=29.342105)
13    state = problem.add_sensor(state, dm_name="d0", x=3.651551, y=26.568279)
14    state = problem.add_cooler(state, dm_name="d0", x=6.947455, y=35.999289, btus=10_000.0, cfm=200.0)
15
16    evaluation = problem.evaluate(state)
17    print(problem.metadata.problem_id)
18    print("initial-transition-count", len(transitions))
19    print("product-count", len(state.products))
20    print("link-count", len(state.links))
21    print("total-cost", round(evaluation.total_cost, 3))
22    print("peak-temp-c", round(evaluation.peak_temp_c, 3))
23    print("capital-cost", round(evaluation.capital_cost, 3))
24    print("operation-cost", round(evaluation.operation_cost, 3))
25
26
27if __name__ == "__main__":
28    main()

Expected Results

Run Command

PYTHONPATH=src python3 examples/grammar/iot_home_cooling_system_design.py

Run the command shown below from repository root. Output should summarize the problem setup, a baseline solution, or diagnostic values relevant to this example.