2025-11-17 12:34:06 -05:00
|
|
|
{
|
|
|
|
|
"study_name": "simple_beam_optimization",
|
2025-11-17 21:24:02 -05:00
|
|
|
"description": "Test Phase 3.3 post-processing features",
|
|
|
|
|
"substudy_name": "05_test_postprocessing_5trials",
|
2025-11-17 12:34:06 -05:00
|
|
|
"design_variables": {
|
|
|
|
|
"beam_half_core_thickness": {
|
|
|
|
|
"type": "continuous",
|
|
|
|
|
"min": 10.0,
|
|
|
|
|
"max": 40.0,
|
|
|
|
|
"baseline": 20.0,
|
|
|
|
|
"units": "mm",
|
|
|
|
|
"description": "Half thickness of beam core"
|
|
|
|
|
},
|
|
|
|
|
"beam_face_thickness": {
|
|
|
|
|
"type": "continuous",
|
|
|
|
|
"min": 10.0,
|
|
|
|
|
"max": 40.0,
|
|
|
|
|
"baseline": 20.0,
|
|
|
|
|
"units": "mm",
|
|
|
|
|
"description": "Thickness of beam face sheets"
|
|
|
|
|
},
|
|
|
|
|
"holes_diameter": {
|
|
|
|
|
"type": "continuous",
|
|
|
|
|
"min": 150.0,
|
|
|
|
|
"max": 450.0,
|
|
|
|
|
"baseline": 300.0,
|
|
|
|
|
"units": "mm",
|
|
|
|
|
"description": "Diameter of lightening holes"
|
|
|
|
|
},
|
|
|
|
|
"hole_count": {
|
|
|
|
|
"type": "integer",
|
|
|
|
|
"min": 5,
|
2025-11-17 21:24:02 -05:00
|
|
|
"max": 15,
|
2025-11-17 12:34:06 -05:00
|
|
|
"baseline": 10,
|
|
|
|
|
"units": "unitless",
|
|
|
|
|
"description": "Number of lightening holes"
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
"extractors": [
|
|
|
|
|
{
|
|
|
|
|
"name": "max_displacement",
|
|
|
|
|
"action": "extract_displacement",
|
|
|
|
|
"description": "Extract maximum displacement from OP2",
|
|
|
|
|
"parameters": {
|
|
|
|
|
"metric": "max"
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
{
|
2025-11-17 21:24:02 -05:00
|
|
|
"name": "max_stress",
|
2025-11-17 12:34:06 -05:00
|
|
|
"action": "extract_solid_stress",
|
|
|
|
|
"description": "Extract maximum von Mises stress from OP2",
|
|
|
|
|
"parameters": {
|
2025-11-17 21:24:02 -05:00
|
|
|
"subcase": 1,
|
|
|
|
|
"element_type": "auto"
|
2025-11-17 12:34:06 -05:00
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"name": "mass",
|
|
|
|
|
"action": "extract_expression",
|
|
|
|
|
"description": "Extract mass from p173 expression",
|
|
|
|
|
"parameters": {
|
|
|
|
|
"expression_name": "p173"
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
],
|
|
|
|
|
"objectives": [
|
2025-11-17 21:24:02 -05:00
|
|
|
{
|
|
|
|
|
"name": "minimize_displacement",
|
|
|
|
|
"extractor": "max_displacement",
|
|
|
|
|
"goal": "minimize",
|
|
|
|
|
"weight": 0.33,
|
|
|
|
|
"description": "Minimize maximum displacement"
|
|
|
|
|
},
|
2025-11-17 12:34:06 -05:00
|
|
|
{
|
|
|
|
|
"name": "minimize_stress",
|
2025-11-17 21:24:02 -05:00
|
|
|
"extractor": "max_stress",
|
2025-11-17 12:34:06 -05:00
|
|
|
"goal": "minimize",
|
2025-11-17 21:24:02 -05:00
|
|
|
"weight": 0.33,
|
|
|
|
|
"description": "Minimize maximum von Mises stress"
|
2025-11-17 12:34:06 -05:00
|
|
|
},
|
|
|
|
|
{
|
2025-11-17 21:24:02 -05:00
|
|
|
"name": "minimize_mass",
|
2025-11-17 12:34:06 -05:00
|
|
|
"extractor": "mass",
|
|
|
|
|
"goal": "minimize",
|
2025-11-17 21:24:02 -05:00
|
|
|
"weight": 0.34,
|
|
|
|
|
"description": "Minimize beam mass"
|
2025-11-17 12:34:06 -05:00
|
|
|
}
|
|
|
|
|
],
|
|
|
|
|
"constraints": [
|
|
|
|
|
{
|
|
|
|
|
"name": "displacement_limit",
|
|
|
|
|
"extractor": "max_displacement",
|
|
|
|
|
"type": "less_than",
|
|
|
|
|
"value": 10.0,
|
|
|
|
|
"units": "mm",
|
2025-11-17 21:24:02 -05:00
|
|
|
"description": "Maximum displacement must be less than 10mm"
|
2025-11-17 12:34:06 -05:00
|
|
|
}
|
|
|
|
|
],
|
|
|
|
|
"optimization_settings": {
|
|
|
|
|
"algorithm": "optuna",
|
2025-11-17 21:24:02 -05:00
|
|
|
"n_trials": 5,
|
2025-11-17 12:34:06 -05:00
|
|
|
"sampler": "TPE",
|
|
|
|
|
"pruner": "HyperbandPruner",
|
|
|
|
|
"direction": "minimize",
|
|
|
|
|
"timeout_per_trial": 600
|
2025-11-17 21:24:02 -05:00
|
|
|
},
|
|
|
|
|
"post_processing": {
|
|
|
|
|
"generate_plots": true,
|
|
|
|
|
"plot_formats": ["png", "pdf"],
|
|
|
|
|
"cleanup_models": true,
|
|
|
|
|
"keep_top_n_models": 3,
|
|
|
|
|
"cleanup_dry_run": false
|
2025-11-17 12:34:06 -05:00
|
|
|
}
|
2025-11-17 21:24:02 -05:00
|
|
|
}
|