-
您好!我对于求和的部分还有些疑问,如果您能不吝赐教,我将非常感激。 第一个问题关于求和方式。我从您的文档中学到了两种求和的方法,第一种是用ExprBuilder,比如 expr = poi.ExprBuilder() 这里block是一个SimpleNamespace 第二种是用poi.quicksum。从您的例子中看主要是用在tupledict中。 我的问题是,如果我想求若干变量之和,用哪种方法比较好? 比如 x = [model.add_variable(lb=0) for _ in range(10)],然后我想限制这些x的和小于等于10。那我应该写: expr = poi.ExprBuilder() 还是: model.add_linear_constraint(poi.quick_sum(x), poi.Eq, 10) 第二个问题是quicksum与quicksum_,这两个很相似函数的适用类型分别是什么?他们有什么区别? 谢谢! |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment
-
可以看一下这里的代码 PyOptInterface/src/pyoptinterface/_src/aml.py Lines 72 to 86 in e16750a quicksum本质上就是逐次+= quicksum_的第一个输入变量表示在这个expr的基础上加和,而quicksum直接返回求和的结果作为一个新的ExprBuilder |
Beta Was this translation helpful? Give feedback.
可以看一下这里的代码
PyOptInterface/src/pyoptinterface/_src/aml.py
Lines 72 to 86 in e16750a
quicksum本质上就是逐次+=
quicksum_的第一个输入变量表示在这个expr的基础上加和,而quicksum直接返回求和的结果作为一个新的ExprBuilder