% 9.1 an optimization problem % p(x,y) = 143*x + 60*y % 110*x + 30*y <= 4000 % 120*x + 210*y <= 15000 % x + y <= 75 x = 0:80; % range for x y1 = max((4000-110*x)/30,0); y2 = max((15000 - 120*x)/210,0); y3 = max(75-x,0); ytop = min([y1,y2,y3]); % upper values that are allowed for y area(x,ytop) ytop = min([y1;y2;y3]); % upper values that are allowed for y area(x,ytop) hold on [u v]=meshgrid(0:80,0:80); contour(u,v,143*u + 60*v); % linprog % min f*x subject to A*x <= b f = [-143 -60] % flip signs because we want to maximize f = -143 -60 A = [110 30 120 210 1 1 -1 0 0 -1] A = 110 30 120 210 1 1 -1 0 0 -1 b = [4000; 15000; 75; 0; 0] b = 4000 15000 75 0 0 sol = linprog(f,A,b) Optimization terminated successfully. sol = 21.8750 53.1250 profit = -f*sol profit = 6.3156e+003 format bank profit profit = 6315.62 diary off