Skip to content

Add structural archetype truss benchmarks (cantilever, Pratt, Warren variants) #27

@cmccomb

Description

@cmccomb

Summary

Add explicit truss benchmark archetypes that are currently missing or underrepresented in the packaged catalog, using DesignBench artifacts as seeds.

Proposed archetypes

  • Cantilever truss (from DesignBench cantilever_01 style definition).
  • Pratt-like bridge truss (from bridge_pratt_03 style data).
  • Warren bridge variants (from bridge_warren_01 and bridge_simple variant families).

Proposed scope

  • Add catalog entries for each archetype as first-class problems with stable IDs.
  • Normalize support conditions, load definitions, and objective/constraint fields to this repository's schemas.
  • Ensure each archetype has at least one well-defined baseline configuration and expected behavior.
  • Add examples that demonstrate loading and solving/evaluating each archetype.
  • Add tests that validate:
    • parsing/registry loading,
    • structural analysis execution,
    • objective/constraint outputs are finite and deterministic.

Notes from source material

  • Candidate seeds exist in DesignBench under:
    • data/problems/cantilever.json
    • data/modification_trees/bridge_pratt_03_tree.json
    • data/modification_trees/bridge_warren_01_tree.json
    • data/modification_trees/bridge_simple_01_variant*.json

Out of scope

  • Eval split generation and split-specific metadata.

Acceptance criteria

  • New archetype problems are discoverable via the registry and documented in generated catalog docs.
  • At least one example per archetype runs end-to-end.
  • Tests cover at least one invariant per archetype (e.g., support condition sanity, feasible analysis execution, bounded outputs).

Metadata

Metadata

Assignees

No one assigned

    Labels

    scope:grammarGrammar-based problem family workscope:optimizationOptimization problem family work

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions