How to find range for each variable for constrained nonlinear multivariable function in Matlab?

2 views (last 30 days)
I have 4 inequality equations(constraints) with 3 variables(b, c, p). I want to compute these equations and get the range of each variable that satisfies all equations with Matlab.
Here are my equations. (lt: less equal than, gt: greater equal than) ============================================================
1. 2*p*c lt b < 3*p*c
2. 1 lt c gt b
3. 0 lt p gt 1
4. (1-(1-(c/b))^2000000)^c lt 0.05
============================================================
I tried to find the answer and found some functions like fmincon, fminbnd, fminmax, and so on, but I think that there are not fit for my case.
I tried to solve using solve and fzero, but it returns what I do not expect.
Could you please help me? Could you tell or suggest me a function that I need to use and how I can use?
Thanks,
Jung

Answers (1)

Walter Roberson
Walter Roberson on 29 Aug 2011
Are you sure that you want "0 lt p gt 1" ? Isn't that the same as "p gt 1" meaning (according to your key) (p >= 1) ?
Does "1 lt c gt b" mean that (1 <= c and 1 >= b), or does it mean that (1 <= c and c => b) ?
  2 Comments
Jung Hyun
Jung Hyun on 29 Aug 2011
What I want is
1. 2*p*c <= b < 3*p*c
2. 1 <= c and c <= b
3. 0 <= p and p <= 1(p is a probability value, so it should be less than 1)
4. (1-(1-(c/b))^2000000)^c <= 0.05
Walter Roberson
Walter Roberson on 29 Aug 2011
For "2*p*c <= b < 3*p*c" do you mean "2*p*c <= b and b < 3*p*c" ? (And if so, to cross-check, do you mean the strict inequality at the upper end, or do you mean <= ?)

Sign in to comment.

Categories

Find more on 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!