docs: Update protocol docs and method selector improvements
- SYS_12: Add extractor library updates - SYS_15: Add method selector documentation updates - method_selector.py: Minor improvements to method selection logic 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -486,12 +486,17 @@ class ProblemProfiler:
|
||||
# Extract design variables
|
||||
design_vars = config.get('design_variables', [])
|
||||
profile.n_variables = len(design_vars)
|
||||
profile.variable_names = [v['parameter'] for v in design_vars]
|
||||
# Support both 'parameter' and 'name' keys for variable naming
|
||||
profile.variable_names = [v.get('parameter') or v.get('name') for v in design_vars]
|
||||
|
||||
volume = 1.0
|
||||
for var in design_vars:
|
||||
name = var['parameter']
|
||||
bounds = var.get('bounds', [0, 1])
|
||||
name = var.get('parameter') or var.get('name')
|
||||
# Support both 'bounds' array and 'min'/'max' fields
|
||||
if 'bounds' in var:
|
||||
bounds = var['bounds']
|
||||
else:
|
||||
bounds = [var.get('min', 0), var.get('max', 1)]
|
||||
profile.variable_bounds[name] = (bounds[0], bounds[1])
|
||||
profile.variable_types[name] = var.get('type', 'continuous')
|
||||
volume *= (bounds[1] - bounds[0])
|
||||
@@ -501,7 +506,11 @@ class ProblemProfiler:
|
||||
objectives = config.get('objectives', [])
|
||||
profile.n_objectives = len(objectives)
|
||||
profile.objective_names = [o['name'] for o in objectives]
|
||||
profile.objective_goals = {o['name']: o.get('goal', 'minimize') for o in objectives}
|
||||
# Support both 'goal' and 'direction' keys for objective direction
|
||||
profile.objective_goals = {
|
||||
o['name']: o.get('goal') or o.get('direction', 'minimize')
|
||||
for o in objectives
|
||||
}
|
||||
profile.is_multi_objective = profile.n_objectives > 1
|
||||
|
||||
# Extract constraints
|
||||
|
||||
Reference in New Issue
Block a user