debut du code matlab de point intérieur

% Calculez le mélange le moins cher à donner à nos cobayes
%
%Afin d'assurer une bonne santé de cobayes, il faut les nourrir en leur donnant un minimum de 24
%grammes de lipides, 36 grammes de glucides et 4 grammes de protéines par jour. Il ne faut pas
%leur donner plus de 5 onces de nourriture.
%Nous disposions de deux sources d'alimentation. Les croquettes royal cobaye qui contiennent 8
%grammes de lipides, 12 grammes de glucides et 2 grammes de protéines par once et qui coutent
%3 euros les 10 onces, et les boulettes « vite se casse » qui contiennent 12 grammes de lipides,
%12 grammes de glucides et 1 grammes de protéines par once et qui coutent 2 euros les 10 onces.

B = [8 12 ;12 12; 2 1 ;-1 -1 ];
b = [24;36;4;-5];
f = [30;20];

[p,n] = size(B);

A = [B -eye(p)];
c = [f ; zeros(p,1)];

figure(1)
clf
set(gcf,'Color',[1,1,1])

hold on
xx = [-1 6 6 -1];
ff = [0 0 -1 -1];
fill(xx,ff,[.9 .9 .9]);
xx = [-1 6 6 -1];
ff = [0 0 -1 -1];
fill(ff,xx,[.9 .9 .9]);
xx = [-1 6 6];
yy = [6 -1 6];
fill(xx,yy,[.9 .9 .9]);
xx = [-1 5/2 -1];
yy = [6 -1 -1];
fill(xx,yy,[.9 .9 .9]);
xx = [-1 4 -1];
yy = [4 -1 -1];
fill(xx,yy,[.9 .9 .9]);
plot([0 0],[-1 6],'b');
plot([-1 6],[0 0],'b');
plot([-1 6],[6 -1],'b');
plot([-1 5/2],[6 -1],'b');
plot([-1 4],[4 -1],'b');
plot([-1 9/2],[8/3 -1],'b');

%% point interieur  :  algo 14.3 page 411 nocedal

x = ginput(1)';
hc = plot(x(1),x(2),'*','Color','r');
set(hc,'LineWidth',2);


Modifié le: mardi 17 décembre 2013, 10:01