I am receiving the display message: “Functin not implemented” when I declare my cost function in CVX. No typo there, it really says “functin” and not “function”. It is not an error, just simply a line of text that appears once I tell CVX what to minimize.
Particularly, if we suppose that cost is a convex function of two CVX variables x and u, then I receive the message when I write minimize( cost(x,u) ).
I have been using the same CVX model for a few months now with no issue, but all of a sudden I am seeing these lines printed with each run. It has the effect of not applying the cost function, and so I am always solving a feasibility problem when I don’t want to be.
It might help if you show the output of cvx_version . Has any of this information changed compared to when your program worked? (Note: CVX 3.0beta is known to have a lot of bugs.) If not, have there been any changes to your MATLAB path, so that perhaps the wrong version of some function is now called as a result of the path change?
Of course, you’re leaving us completely in the dark as to what your convex function cost(x,u) is.
cvx_version is 2.1, Build 1116 (d4cc5c5), Matlab version is 9.1 (R2016b). The function cost is in my path, and it is a simple function, of the form -x(1) + norm(u) … i.e. an affine function of x plus a convex function of u.
Even if I use the function directly as in minimize( -x(1) + norm(u) ), I can still get the message.
FWIW. I’ve diagnosed the problem. It had to do with having YALMIP higher on my Matlab path than CVX…so the first time I called the minimize function, it executed the YALMIP version and this “error” message was returned. Moving CVX higher on my path solved the problem.