Optimization using symbolic toolbox

I am trying to solve a problem of the form:
max f(a,x)
subject to
g(a,x)<=0
Since the functions f and g are not convex, I am having a little trouble doing it analytically and was wondering if I can use the symbolic matlab toolbox to find the optimum solution of the problem (x as a function of a). I was hoping to use that to get some intuition into the nature of the problem.
Thank you!

3 comentarios

Walter Roberson
Walter Roberson el 21 de Mayo de 2015
You have told us that the functions are not convex, but you have not told us that they are continuous and whether their derivatives are continuous and whether there are singularities.
Poachumsm
Poachumsm el 21 de Mayo de 2015
Sorry about that!
x is a vector in R^3 and a is a vector as well (in R^7). f and g are twice differentiable functions but not concave/quasiconcave.
I've tried picking values for a and using the numerical solver, but it isn't particularly helpful (at least to me).
Walter Roberson
Walter Roberson el 21 de Mayo de 2015
Unless there are some very strong constraints on "a", or unless your g(a,x) is very simple, finding the analytic maximum is potentially going to be very tedious. We would need to know more about the functions to assess.

Iniciar sesión para comentar.

Respuestas (1)

John D'Errico
John D'Errico el 21 de Mayo de 2015

0 votos

Sorry, but I predict the symbolic toolbox will not be of much help here. This is difficult to know of course, because you have given us no hint as to the actual relations involved.
However, nothing stops you from doing it yourself in a simple enough way. You want to get the value of x, that maximizes f, subject to the constraint, all as a function of a, so just pick a sequence of values for a, then solve the problem for each value of a. If solve get stuck there, just use a numerical solver. It is a uni-variate problem at that point for god's sake.
Plot the result, which will give you all the guidance you should want.
If you want a better answer, then we need more information from you.

1 comentario

Poachumsm
Poachumsm el 21 de Mayo de 2015
Sorry about that!
x is a vector in R^3 and a is a vector as well (in R^7). f and g are twice differentiable functions but not concave/quasiconcave.
I've tried picking values for a and using the numerical solver, but it isn't particularly helpful (at least to me).

Iniciar sesión para comentar.

Preguntada:

el 21 de Mayo de 2015

Comentada:

el 21 de Mayo de 2015

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by