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

3 Ansichten (letzte 30 Tage)
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

Antworten (1)

Walter Roberson
Walter Roberson am 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 Kommentare
Jung Hyun
Jung Hyun am 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 am 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 <= ?)

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Optimization finden Sie in Help Center und File Exchange

Produkte

Community Treasure Hunt

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

Start Hunting!

Translated by