迭代日志记录
(类来自 pyomo.contrib.pyros.util)
- class pyomo.contrib.pyros.util.IterationLogRecord(iteration, objective, first_stage_var_shift, second_stage_var_shift, dr_var_shift, dr_polishing_success, num_violated_cons, all_sep_problems_solved, global_separation, max_violation, elapsed_time)[source]
基础类:
objectPyROS 求解器迭代日志记录。
- Parameters:
迭代 (int 或 None, 可选) – 迭代次数。
目标 (int 或 None, 可选) – 主问题的目标值。 注意:如果原始模型的方向是最大化, 那么这是原始模型目标值的负值。
first_stage_var_shift (float 或 None, 可选) – 当前迭代与前一迭代之间第一阶段变量向量的无穷范数差异。
second_stage_var_shift (float 或 None, 可选) – 当前迭代与之前迭代之间决策规则变量向量的无穷范数差异。
dr_polishing_success (bool 或 None, 可选) – 如果DR抛光成功解决则为True,否则为False。
num_violated_cons (int 或 None, 可选) – 在分离步骤中发现违反的第二阶段约束的数量。
all_sep_problems_solved (int 或 None, 可选) – 如果所有分离问题都成功解决,则为True, 否则为False(例如,如果出现超时、子求解器错误,或由于自定义约束优先级仅解决了部分问题)。
global_separation (bool, optional) – 如果分离问题是通过从属全局优化器解决的,则为True,否则为False。
max_violation (int 或 None) – 在分离步骤中发现的任何第二阶段约束的最大缩放违规。
elapsed_time (float, optional) – 到当前迭代为止的总时间,以秒为单位。
- all_sep_problems_solved
如果所有分离问题都成功解决,则为True,否则为False(例如,如果出现超时、子求解器错误,或由于自定义约束优先级仅解决了部分问题)。
- Type:
int 或 None
- __init__(iteration, objective, first_stage_var_shift, second_stage_var_shift, dr_var_shift, dr_polishing_success, num_violated_cons, all_sep_problems_solved, global_separation, max_violation, elapsed_time)[source]
初始化自身(参见类文档字符串)。
方法
__init__(迭代, 目标, ...)初始化自身(参见类文档字符串)。
获取迭代日志标题的字符串。
获取迭代日志字符串。
log(log_func, **log_func_kwargs)记录自身。
log_header(log_func[, with_rules])日志头。
log_header_rule(log_func[, fillchar])日志头规则。
成员文档