迭代日志记录

(类来自 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]

基础类:object

PyROS 求解器迭代日志记录。

Parameters:
  • 迭代 (intNone, 可选) – 迭代次数。

  • 目标 (intNone, 可选) – 主问题的目标值。 注意:如果原始模型的方向是最大化, 那么这是原始模型目标值的负值。

  • first_stage_var_shift (floatNone, 可选) – 当前迭代与前一迭代之间第一阶段变量向量的无穷范数差异。

  • second_stage_var_shift (floatNone, 可选) – 当前迭代与之前迭代之间决策规则变量向量的无穷范数差异。

  • dr_polishing_success (boolNone, 可选) – 如果DR抛光成功解决则为True,否则为False。

  • num_violated_cons (intNone, 可选) – 在分离步骤中发现违反的第二阶段约束的数量。

  • all_sep_problems_solved (intNone, 可选) – 如果所有分离问题都成功解决,则为True, 否则为False(例如,如果出现超时、子求解器错误,或由于自定义约束优先级仅解决了部分问题)。

  • global_separation (bool, optional) – 如果分离问题是通过从属全局优化器解决的,则为True,否则为False。

  • max_violation (intNone) – 在分离步骤中发现的任何第二阶段约束的最大缩放违规。

  • elapsed_time (float, optional) – 到当前迭代为止的总时间,以秒为单位。

iteration

迭代次数。

Type:

int 或 None

objective

主问题目标值。 注意:如果原始模型的方向是最大化, 那么这是原始模型目标值的负数。

Type:

int 或 None

first_stage_var_shift

当前迭代与前一迭代之间第一阶段变量向量的相对差异的无穷范数。

Type:

float 或 None

second_stage_var_shift

当前迭代与之前迭代之间第二阶段变量向量的相对差异的无穷范数(在名义不确定参数实现下评估)。

Type:

float 或 None

dr_var_shift

当前迭代与先前迭代之间决策规则变量向量的相对差异的无穷范数。 注意:此值不会在日志消息中报告。

Type:

float 或 None

dr_polishing_success

如果DR抛光成功解决则为True,否则为False。

Type:

bool 或 None

num_violated_cons

在分离步骤中发现违反的第二阶段约束的数量。

Type:

int 或 None

all_sep_problems_solved

如果所有分离问题都成功解决,则为True,否则为False(例如,如果出现超时、子求解器错误,或由于自定义约束优先级仅解决了部分问题)。

Type:

int 或 None

global_separation

如果分离问题是通过从属全局优化器解决的,则为True,否则为False。

Type:

bool

max_violation

在分离步骤期间发现的任何第二阶段约束的最大缩放违规。

Type:

int 或 None

elapsed_time

到当前迭代为止的总时间,以秒为单位。

Type:

float

__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__(迭代, 目标, ...)

初始化自身(参见类文档字符串)。

get_log_header_str()

获取迭代日志标题的字符串。

get_log_str()

获取迭代日志字符串。

log(log_func, **log_func_kwargs)

记录自身。

log_header(log_func[, with_rules])

日志头。

log_header_rule(log_func[, fillchar])

日志头规则。

成员文档

static get_log_header_str()[source]

获取迭代日志标题的字符串。

get_log_str()[source]

获取迭代日志字符串。

log(log_func, **log_func_kwargs)[source]

记录自身。

static log_header(log_func, with_rules=True, **log_func_kwargs)[source]

日志头。

static log_header_rule(log_func, fillchar='-', **log_func_kwargs)[source]

日志头规则。