Skip to main content
19 events
when toggle format what by license comment
Mar 1, 2018 at 19:28 history tweeted twitter.com/StackSciComp/status/969293386007097344
Feb 27, 2018 at 22:30 vote accept Dr Krishnakumar Gopalakrishnan
Feb 27, 2018 at 22:30 answer added Beni Bogosel timeline score: 2
Feb 27, 2018 at 21:38 comment added Mark L. Stone You can save yourself the "pain" and error propensity of figuring out how to use quadprog by using CVX. cvx_begin;variable x(9);minimize(norm(x));A*x == b;abs(sum(x(1:3) - k) <= c1;abs(sum(x(7:9) - k) <= c2;cvx_end At the conclusion of which x will contain its optimal value and be available in MATLAB.
Feb 27, 2018 at 18:57 history edited Dr Krishnakumar Gopalakrishnan CC BY-SA 3.0
edited body
Feb 27, 2018 at 18:23 history edited Dr Krishnakumar Gopalakrishnan CC BY-SA 3.0
deleted 4 characters in body
Feb 27, 2018 at 18:17 history edited Dr Krishnakumar Gopalakrishnan CC BY-SA 3.0
added 26 characters in body
Feb 27, 2018 at 18:06 comment added Dr Krishnakumar Gopalakrishnan Let us continue this discussion in chat.
Feb 27, 2018 at 18:05 history edited Dr Krishnakumar Gopalakrishnan CC BY-SA 3.0
Changed the question so as to truly reflect the detail that we are possibly working with a linear programming problem here
Feb 27, 2018 at 17:57 comment added Dr Krishnakumar Gopalakrishnan @RodrigodeAzevedo Thank you. That does indeed work! Just tried it. The solution is unique because it is a linear programming problem. If you write your final comments as an answer, I can accept it for the benefit of whoever lands here in the future through a google search. Yes, 0 $\in \mathbb{R}^{9\times1}$ here
Feb 27, 2018 at 17:30 comment added Rodrigo de Azevedo Correct if 0 denotes a zero vector.
Feb 27, 2018 at 17:26 comment added Dr Krishnakumar Gopalakrishnan @RodrigodeAzevedo thank you. That indeed makes sense. So first I convert the inequalities to be $\le$ and then apply linprog uk.mathworks.com/help/optim/ug/linprog.html from the optimization toolbox? x = linprog(f,A,b,Aeq,beq) wherein f = 0 ,right?
Feb 27, 2018 at 16:14 comment added Rodrigo de Azevedo Why not write $-c_1 \leq x_1 + x_2 + x_3 - k \leq c_1$? It is the conjunction of two linear inequalities. Also, you don't have an objective function. There is nothing to minimize. You have linear equality and inequality constraints. Deciding whether there exists a feasible solution can be done via linear programming.
Feb 27, 2018 at 16:06 comment added Dr Krishnakumar Gopalakrishnan @RodrigodeAzevedo yes. My inequality constraints are mostly linear, i.e. they are of the form $|x_1 + x_2 + x_3 - k| \le c_1$, where $k$ and $c_1$ are just scalar numerical values. The non-linearity comes solely due to absolute value function. Is there a way of converting this to a 'quadratic' or other well-posed linear problem? I too feel that using a general NLP solver like fmincon is like using a sledgehammer rather than a scalpel.
Feb 27, 2018 at 6:47 comment added Rodrigo de Azevedo "Nonlinear" is too broad. Quadratic? Polynomial? And if the system is underdetermined, why use least-squares? Why not least-norm?
Feb 26, 2018 at 17:49 comment added Tyler Olsen Well, I think you have answered your own question. $g(x) = \|Ax-b\|_2$ is a scalar function, and fmincon can certainly handle problems of the form $\min_x g(x) \;\; s.t \;\; f_1(x)\le c_1, \;\; f_2(x) \le c_2$.
Feb 26, 2018 at 16:56 comment added Dr Krishnakumar Gopalakrishnan @Rahul, I doubt that is even possible. fmincon minimizes only a scalar function, see here uk.mathworks.com/help/optim/ug/fmincon.html .
Feb 26, 2018 at 16:00 comment added user3883 Apply fmincon to the normal equations?
Feb 26, 2018 at 14:35 history asked Dr Krishnakumar Gopalakrishnan CC BY-SA 3.0