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