- get_model()->get_maxmin_system()->update_variable_bound(action->get_variable(),
- action->requested_core() * speed_.scale * speed_.peak);
+ while (const auto* var = get_constraint()->get_variable(&elem)) {
+ const auto* action = static_cast<CpuCas01Action*>(var->get_id());
+ double bound = action->requested_core() * speed_.scale * speed_.peak;
+ if (action->get_user_bound() > 0) {
+ bound = std::min(bound, action->get_user_bound());
+ }
+
+ get_model()->get_maxmin_system()->update_variable_bound(action->get_variable(), bound);