Space truss span structural optimization (mass minimization)

A fixed-joint binary optimization problem that selects candidate 3D truss members to minimize mass subject to factor-of-safety and deflection thresholds.

See Optimization Problem Catalog for the optimization family index.

Quick Facts

Field

Value

Problem ID

space_truss_span_mass_min

Problem Family

optimization

Implementation

design_research_problems.problems.optimization._truss_topology:SpaceTrussEngineeringOptimizationProblem

Capabilities

baseline-solver, bounded-variables, external-adapter, optional-evaluator, statement-markdown

Study Suitability

none

Tags

optimization, truss, 3d, structural, mass

Taxonomy

Formulation

binary_optimization

Convexity

nonconvex

Design Variable Type

discrete

Is Dynamic

no

Orientation

engineering_practical

Feasibility Ratio Hint

0.02

Objective Mode

single

Constraint Nature

hard

Bounds Summary

one binary variable per candidate member over a fixed 3D space-truss joint set

Tags

optimization, truss, 3d, structural, mass

Statement

Choose a 3D space-truss topology over a fixed bridge-like scaffold. Each binary design variable decides whether one candidate member is present. The optimizer builds a concrete SpaceTrussState, runs the real trussme structural analysis, and minimizes structural mass.

Feasible candidates must satisfy a minimum factor of safety and a maximum deflection threshold. The built-in baseline uses deterministic binary enumeration with cheap graph prechecks plus hard structural thresholds.

Problem Shape

Field

Value

Design Variable Count

36

Bound Summary

one binary variable per candidate member over a fixed 3D space-truss joint set

Total Constraint Count

4

Equality Constraint Count

0

Inequality Constraint Count

4

Variable Bounds

Variable

Lower Bound

Upper Bound

x[0]

0

1

x[1]

0

1

x[2]

0

1

x[3]

0

1

x[4]

0

1

x[5]

0

1

x[6]

0

1

x[7]

0

1

x[8]

0

1

x[9]

0

1

x[10]

0

1

x[11]

0

1

x[12]

0

1

x[13]

0

1

x[14]

0

1

x[15]

0

1

x[16]

0

1

x[17]

0

1

x[18]

0

1

x[19]

0

1

x[20]

0

1

x[21]

0

1

x[22]

0

1

x[23]

0

1

x[24]

0

1

x[25]

0

1

x[26]

0

1

x[27]

0

1

x[28]

0

1

x[29]

0

1

x[30]

0

1

x[31]

0

1

x[32]

0

1

x[33]

0

1

x[34]

0

1

x[35]

0

1

Manifest Parameters

Key

Value

candidate_point_fractions_3d

[[0.25, -1.0, 0.5], [0.25, 1.0, 0.5], [0.75, -1.0, 0.5], [0.75, 1.0, 0.5]]

load_magnitude

1000

max_height

5

maximum_deflection

0.2

minimum_fos

1

objective_metric

mass-min

span

10

width

4

Library Interface

  • generate_initial_solution(seed=None)

  • objective(x)

  • evaluate(x)

  • solve(initial_solution=None, seed=None, maxiter=200)