Quadratic Programming & Multi-Dimensional Newton Iteration

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Quadratic Programming & Multi-Dimensional Newton Iteration

Vivian Wu
Hi, all,

An optimization problem can be formulated as follows.
Take 2-Dimensional as an example(variables: x1, x2; constants: a~i).
min a*pow(x1,2)+b*x1*x2+c*pow(x2,2)
s.t.         d*x1+e*x2+f=0
              g*x1+h*x2+i>=0
              x1>=0
              x2>=0
We could use quadratic programming or multi-dimensional Newton iteration to solve it.

After going through QuantLib to search for quadratic programming or multi-dimensional Newton iteration, I found OptimizationMethod with CostFunction and Constraint(boundary constraints of the variables but not linear constraints on these variables) and Newton 1-D solver(not multi-dimensional). So they are not suitable for the problem.

Did I misunderstand these classes, like OptimizationMethod, and Newton?
Or I have missed the functions related to quadratic programming?
Is there any other ideas about how to solve the above problem?


Thanks in advance.


Regards,

       Vivian
Reply | Threaded
Open this post in threaded view
|

Re: Quadratic Programming & Multi-Dimensional Newton Iteration

alexandre p

Hello Vivian,

Let me preface this by saying that I have never tried to use QP in QuantLib and so may be wrong when I say it does not provide such a feature.

However: QP is algorithmically and mathematically complex and so libraries that provide it tend to be specialized.

Particularly in finance, where QP is most often used in problems like Markowitz portfolio optimization, the need for mixed integer constraints arising from the minimum weights restriction (ie do not enter into a position at less than x bp) makes the problem very difficult (NP hard in the general case). Heuristics and variations on branch and bound can help but this is very complicated stuff.

A dedicated library is thus probably what you want.

But QuantLib has surprised before... maybe I'm wrong :-)

Alexander

On May 29, 2015 10:52 AM, "Vivian Wu" <[hidden email]> wrote:
Hi, all,

An optimization problem can be formulated as follows.
Take 2-Dimensional as an example(variables: x1, x2; constants: a~i).
min a*pow(x1,2)+b*x1*x2+c*pow(x2,2)
s.t.         d*x1+e*x2+f=0
              g*x1+h*x2+i>=0
              x1>=0
              x2>=0
We could use quadratic programming or multi-dimensional Newton iteration to
solve it.

After going through QuantLib to search for quadratic programming or
multi-dimensional Newton iteration, I found OptimizationMethod with
CostFunction and Constraint(boundary constraints of the variables but not
linear constraints on these variables) and Newton 1-D solver(not
multi-dimensional). So they are not suitable for the problem.

Did I misunderstand these classes, like OptimizationMethod, and Newton?
Or I have missed the functions related to quadratic programming?
Is there any other ideas about how to solve the above problem?


Thanks in advance.


Regards,

       Vivian



--
View this message in context: http://quantlib.10058.n7.nabble.com/Quadratic-Programming-Multi-Dimensional-Newton-Iteration-tp16601.html
Sent from the quantlib-users mailing list archive at Nabble.com.

------------------------------------------------------------------------------
_______________________________________________
QuantLib-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/quantlib-users

------------------------------------------------------------------------------

_______________________________________________
QuantLib-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/quantlib-users