design-research#

The umbrella entry point for the CMU Design Research Collective design-research ecosystem.

design-research supplies one discoverable namespace, exact component version pins, and compatibility-tested examples for the package family. Its four wrapper submodules route to public exports owned by the specialized component packages; the umbrella does not reimplement their research logic.

Get Started#

Python 3.12 or newer is required. A first installed-package session needs only:

python -m venv .venv
source .venv/bin/activate
python -m pip install --upgrade pip
python -m pip install design-research

Then import the package family through the four wrapper submodules:

import design_research as dr

problem_ids = dr.problems.list_problems()
problem = dr.problems.get_problem(problem_ids[0])

print(problem.metadata.title)
print(dr.agents.Workflow)
print(dr.experiments.Study)
print(dr.analysis.validate_unified_table)

Important

Joining the IDETC 2026 tutorial on Sunday, August 23? Use the Workshop Setup and Preflight page to download the materials and verify your Python environment before the session.

Architecture: Two Complementary Views#

Control Topology#

Problems and Agents are peer study inputs. Experiments owns study design and coordinates their execution, then defines the artifact handoff to Analysis.

Runtime And Data Flow#

Problems + Agents → Experiments artifact set → Analysis → evidence that can refine the next study protocol.

These are two views of the same package family, not an installation order. The umbrella routes imports and pins a tested combination; implementation stays with the package that owns each behavior.

Ecosystem Packages#

  • Problems — tasks, prompts, grammars, benchmarks, and evaluators: documentation · source

  • Agents — AI participants, workflows, tools, and traceable reasoning: documentation · source

  • Experiments — hypotheses, factors, conditions, replications, execution, and artifact export: documentation · source

  • Analysis — validation, transformation, statistics, and visualization: documentation · source

Quality Signals#

Coverage reports the deterministic test suite’s total line coverage; Examples Passing reports per-file runnable-example results; and API in Examples reports coverage of curated top-level exports. Use make coverage, make examples-test, and make examples-coverage to reproduce them locally.