CVXPY 中表达式的增量求和
Incremental Summation of Expressions in CVXPY
我需要逐步构建一个 CVXPY 表达式,例如一笔钱。
目前我正在使用:
sum_expr = None
for ...
var = cp.Variable(...)
if sum_expr:
sum_expr += var
else:
sum_expr = var
# use sum_expr
有没有更简洁、更简洁的方法来做到这一点?
是否有一些默认的 NOP/Null/Void/Nil 值我可以用来初始化 sum_expr
以便我可以避免 if
语句而只使用 +=
?
简短的回答是使用中性元素进行特定操作,例如cp.Constant(0)
求和,cp.Constant(1)
求积。
没有内置的 "Null" 表达式,但是向解析树添加单个中性元素并不会真正影响性能。
更长的答案是 here。
我需要逐步构建一个 CVXPY 表达式,例如一笔钱。
目前我正在使用:
sum_expr = None
for ...
var = cp.Variable(...)
if sum_expr:
sum_expr += var
else:
sum_expr = var
# use sum_expr
有没有更简洁、更简洁的方法来做到这一点?
是否有一些默认的 NOP/Null/Void/Nil 值我可以用来初始化 sum_expr
以便我可以避免 if
语句而只使用 +=
?
简短的回答是使用中性元素进行特定操作,例如cp.Constant(0)
求和,cp.Constant(1)
求积。
没有内置的 "Null" 表达式,但是向解析树添加单个中性元素并不会真正影响性能。
更长的答案是 here。