Maximize log[1+a1(x-d)/(b1(x-d)+c1)]-xlog[1+a(x-d)/(b(x-d)+c)], Known x>d, so this objection is concave. How to handle it


(Dan Dan) #1

maximize log[1+a1(x-d)/(b1(x-d)+c1)]-xlog[1+a(x-d)/(b(x-d)+c)],

Known d<x. Except x, the other quantities are constant.
So this objection is concave. How to handle it with CVX? thank you.


(Mark L. Stone) #2

According to my calculations in MAPLE, the function
log(1+a1*(x-d)/(b1*(x-d)+c1))-x*log(1+a*(x-d)/(b*(x-d)+c))
is not concave everywhere on the domain you claim.

For instance, at x=4, a1=1, b1=1, c1=1, a=1, b=1, c=1, d=3, its 2nd derivative equals 1/4.

Therefore, this is not a convex optimization problem, and CVX can not handle it.


(Dan Dan) #3
 First of all, thank you very much for your answer. With your parameter settings, its 2nd derivative equals -1/ln2*(4x^2-13x+9)/(2x^2-9x+10)^2, when x=4,this value <0.  By calculating the two derivative of the original formula, I can guarantee that the objective function is concave.   I forgot to say that all parameter values are greater than zero in this problem. 
 But this objective function can not be directly entered into CVX,  error is “Cannot perform the operation: {real affine} ./ {real affine}”.  do you think it is possible to convert it into a form acceptable to CVX? This form is somewhat complicated, and I feel puzzled and uncertain.
 I look forward to your reply.

(Mark L. Stone) #4

Please check that this is the correct function.

Function
f:=log(1+a1*(x-d)/(b1*(x-d)+c1))-x*log(1+a*(x-d)/(b*(x-d)+c));

2nd derivative of function:
Hf:=diff(f,x$2);

2nd derivative of function evaluated at specified point:
eval(subs(x=4,a1=1,b1=1,c1=1,a=1,b=1,c=1,d=3,Hf));
is 1/4