How can I solve maximum probability program?

(Li Xin) #1

Dear Professor,

I would like to solve an optimization problem \max_{x\in \mathbb{R}^n,x\geq0} \varphi(x)=\mathbb{P}[\xi\leq b+Ax], where \xi \in\mathbb{R}^m is a Gaussian random vector with variance-covariance matrix \Sigma and mean \mu. I formed a problem with standard normal as follows,
\mathbb{P}[\xi\leq b+Ax]=\mathbb{P}[W(\xi - \mu)\leq W(Ax+b-\mu)], where W is the whitening matrix.

Therefore, the r.v. follows the standard multivariate normal distribution. The problem becomes: \max_{x\in \mathbb{R}^n,x\geq0} \Phi(WAx+W(b-\mu)), where \Phi is the CDF of the standard multivariate normal. As \Phi is quasiconcave, I planned to solve this problem by posing a series of convex feasibility problems.

The original problem is equivalent to the feasibility problem.
\begin{array}{*{20}{c}} {{\rm{find}}}&x\\ {{\rm{s}}{\rm{.t}}{\rm{.}}}&{\Phi \left( {WAx + W\left( {b - \mu } \right)} \right) \ge \eta }\\ {}&{x \ge 0} \end{array}

I wanted to solve this quasiconcave problem by the bisection method. However, when I tried to solve the value of the first constraint with the function of mvncdf, it reported an error.! My program is shown below:

Is there any way to solve this problem? Do you have any suggestions to deal with this problem?
Thanks a lot!

Best wishes,

(Mark L. Stone) #2

It looks like you’re getting advice over at!topic/yalmip/F1AlMeu0urY . I doubt you will find additional advice on this forum.

(Michael C. Grant) #3

If you do come back, you need to read and heed the FAQ. If you had you would not have attempted to use mvncdf with CVX, as it is not among the functions accepted by CVX.

(Li Xin) #4

Yes, I tried both CVX and YALMIP, but I failed.

I couldn’t find ways to deal with this problem. So, I tried to post this problem on both forums.

Please do not blame me for my rudeness.

(Mark L. Stone) #5

You are forgiven if you heed the FAQ Why isn't CVX accepting my model? READ THIS FIRST!

(Li Xin) #6

Thank you for your suggestions! I will try other ways to solve this problem.
I’m sorry to bother you. : )

(Li Xin) #7

Following your suggestions, I read the users’ guide again. It seems mvncdf is illegal in CVX.
I’ll try other ways to solve this problem.
Thank you for your kind reply.

(Michael C. Grant) #8

Oh please, no apologies are needed! You are not being rude. But I do wish I could figure out how to get more people to read the instructions and the FAQ before they waste their time using CVX! Because indeed, many people try to use CVX on problems that will never be accepted, and we try to be as clear as possible about this fact in the documentation.

(Li Xin) #9

Thank you!
I think now I have a better understanding of CVX.
I will check it carefully next time.

:slight_smile: :slight_smile: :slight_smile: