How do I set a custom algebraic upper/lower bound on lsqcurvefit, instead of a constant one?

1 view (last 30 days)
How do I set a custom algebraic upper/lower limit on lsqcurvefit, instead of a constant one? On lsqcurvefit, I can only specify a constant value as upper/lower bound, but I want to set an algebraic expression, such as (y ~ b0*x1+b1*x2) where b0+b1<1

Answers (1)

Alan Weiss
Alan Weiss on 28 Mar 2017
For that, you will have to use lsqlin (if it is applicable) or fmincon if it is not applicable. I cannot be sure, based on your description, whether lsqlin applies.
Alan Weiss
MATLAB mathematical toolbox documentation
  2 Comments
Samuel Castro
Samuel Castro on 28 Mar 2017
Thanks Alan, I gave a linear example, but the function I want to fit will most likely be non linear. So I would need to define a a fmincon function reducing the quadratic error of it?
Alan Weiss
Alan Weiss on 29 Mar 2017
Yes, you would. See this example, which uses fminunc, but you can easily adapt it to fmincon.
Alan Weiss
MATLAB mathematical toolbox documentation

Sign in to comment.

Categories

Find more on Mathematics and Optimization in Help Center and File Exchange

Products

Community Treasure Hunt

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

Start Hunting!