Log_sum_exp of a convex function is not dcp compliant?

戏子无情 提交于 2020-01-06 04:42:12

问题


I have a convex function f(b):

f(b) = log(pi) - lambda * log( t(r) %*% b)

dim(pi) = (n,1), lambda is a scalar constant, dim(r) = (n,n)

b is the parameter, dim(b) = (n,1)

The call to

is_convex(f) 
is_dcp(f) 

both return TRUE.

However, I don’t understand why the following returns FALSE:

is_dcp(log_sum_exp(f)) 

As far as I understand, log_sum_exp of a convex function is convex?

I noticed that both

is_convex(f) 

and

is_concave(f) 

return FALSE.

So it seems like CVRX is unable to deduce the convexity of log_sum_exp(f)?

Any help would be appreciated

(I use CVRX ver 0.99 package in R3.5)


回答1:


This bug has been fixed in CVXR v0.99-5.



来源:https://stackoverflow.com/questions/50615864/log-sum-exp-of-a-convex-function-is-not-dcp-compliant

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!