Borrar filtros
Borrar filtros

fmincon has converged to an infeasible point

2 visualizaciones (últimos 30 días)
Aviram Zilberman
Aviram Zilberman el 19 de Mzo. de 2017
Editada: John D'Errico el 20 de Mzo. de 2017
My objective function is as follows :
[x,fval,exitflag,output]=fmincon(@(x)CalcLatency(x,SwitchArray),x0,[],[],[],[],lb,ub,@(x)integercon(x,ContNum,Capacity),options);
The parameter x is a matrix of integer values. The objective function tries to find minimum average distance between locations represented by the first row of x and locations represented by the rest of the matrix (i.e a cellular network with an assignment between transmitters and receivers). The nonlinear constraint assures that the number of links does not exceed a certain capacity.
I'm having difficulties finding the right initial guess and search tolerances. Therefore I get a message says "fmincon has converged to an infeasible point".
Please advise.

Respuestas (1)

John D'Errico
John D'Errico el 20 de Mzo. de 2017
Fmincon CANNOT be used to solve integer problems. Fmincon requires a continuous, differentiable objective function. Therefore, integer constraints make use of fmincon invalid.
  2 comentarios
Aviram Zilberman
Aviram Zilberman el 20 de Mzo. de 2017
thanks for the quick answer. Since I need only integer numbers I'm using the rounded values that the objective function produces, but the objective function is continuous and differentiable.
John D'Errico
John D'Errico el 20 de Mzo. de 2017
Editada: John D'Errico el 20 de Mzo. de 2017
But you are apparently trying to use integer constraints in some form. Is that not what this function does?
@(x)integercon(x,ContNum,Capacity)
After all, you have provided no information at all except what you typed here.

Iniciar sesión para comentar.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by