逻辑到析取访问者

(类来自 pyomo.contrib.cp.transform.logical_to_disjunctive_walker)

class pyomo.contrib.cp.transform.logical_to_disjunctive_walker.LogicalToDisjunctiveVisitor[source]

基础类:StreamBasedExpressionVisitor

将布尔表达式转换为线性(MIP)表示

该转换器避免了合取范式,而是遵循了可分解编程的成熟MINLP路径。

__init__()[source]

方法

__init__()

beforeChild(node, child, child_idx)

exitNode(node, data)

finalizeResult(result)

initializeWalker(expr)

walk_expression(expr)

遍历一个表达式,调用已注册的回调函数。

walk_expression_nonrecursive(expr)

非递归地遍历表达式,调用已注册的回调函数。

属性

client_methods

成员文档

walk_expression(expr)

遍历一个表达式,调用已注册的回调函数。

这是运行访问者的标准接口。它默认使用访问者的高效递归实现,如果递归堆栈太深,则回退到walk_expression_nonrecursive()

walk_expression_nonrecursive(expr)

非递归地遍历表达式,调用已注册的回调函数。

这个例程对于深度(或不平衡)树来说比递归遍历更安全。然而,它比递归实现稍微慢一些。