
Re: Maximize a single variable and solve for the rest
Posted:
May 21, 2011 5:54 AM


Am 20.05.2011 12:38, schrieb Ramiro: > Hello, > > I have a problem where I would like to solve an equation (namely (h+s+b > +d==1) with some constraints, while maximizing for a related variable > "c" (c<=9). Please see below, any suggestions? > > r1 = 3/4; > r2 = 1; > Block[{h, s, b, d, c}, > NMaximize[{h + s + b + d, > b == c*r1 && h + s + b + d == 1 && d == c*r2 && h == s && > b + d <= 0.9}, {h, s, b, d, c}]] > > {1., {h > 0.5, s > 0.5, (3 c)/4 > 0., c > 0., c > 0.}} > > Should I be using NSolve? > > Thanks in advance, > Ramiro > Maybe  or surely!  I misunderstand your question. You've got the solution in your posting
The only thing to keep in mind is that s >= 1/20:
In[15]:= Block[{h,s,b,d,c},Reduce[{b==c*r1&&h+s+b+d==1&&d==c*r2&&h==s&&b+d<=9/10},{h},Backsubstitution>True]] Out[15]= Re[s]>=1/20&&Im[s]==0&&d==(4/7) (1+2 s)&&c==(4/7) (1+2 s)&&b==(3/7) (1+2 s)&&h==s In[16]:= ToRules[Drop[%,2]] Out[16]= {d>(4/7) (1+2 s),c>(4/7) (1+2 s),b>(3/7) (1+2 s),h>s} In[17]:= h+s+b+d/.% Out[17]= 1
Peter

