Matlab'da çözmek için bir doğrusal eşitsizlik/eşitlik sistemim var ve ben linprog
kullanıyorum. eşitsizliklerin bazı sıkı olduğundan hereMatlab'da bir doğrusal eşitsizlik/eşitlik sistemi tarafından ima edilen eşitsizlikler: sayısal argümanlar veya counterexample?
fonksiyon solve
aşağıda eps
için bir değer sağlanan ettikten sonra sistemi çözer açıklandığı gibi ben sıkı içerme almak almak için çok küçük bir önermiştir eps
kullanın. Ben (ama analitik nasıl göstereceğimi bilinen vermeyin) iman nedir
function pj=solve(eps)
%Inequalities
%x(1)-x(5)-x(9)-x(10)-x(11)-x(15)-x(16)-x(17)-x(19)<=0;
%x(2)-x(6)-x(9)-x(12)-x(13)-x(15)-x(17)-x(18)-x(19)<=0;
%x(3)-x(7)-x(10)-x(12)-x(14)-x(16)-x(17)-x(18)-x(19)<=0;
%x(4)-x(8)-x(11)-x(13)-x(14)-x(15)-x(16)-x(18)-x(19)<=0;
%x(1)+x(2)-x(5)-x(9)-x(10)-x(11)-x(15)-x(16)-x(17)-x(19)-...
% x(6)-x(12)-x(13)-x(18)<=0;
%x(1)+x(3)-x(5)-x(9)-x(10)-x(11)-x(15)-x(16)-x(17)-x(19)-...
% x(7)-x(12)-x(14)-x(18)<=0;
%x(1)+x(4)-x(5)-x(9)-x(10)-x(11)-x(15)-x(16)-x(17)-x(19)-...
% x(8)-x(13)-x(14)-x(18)<=0;
%x(2)+x(3)-x(6)-x(9)-x(12)-x(13)-x(15)-x(17)-x(18)-x(19)-...
% x(7)-x(10)-x(14)-x(16)<=0;
%x(2)+x(4)-x(6)-x(9)-x(12)-x(13)-x(15)-x(17)-x(18)-x(19)-...
% x(8)-x(11)-x(14)-x(16)<=0;
%x(3)+x(4)-x(7)-x(10)-x(12)-x(14)-x(16)-x(17)-x(18)-x(19)-...
% x(8)-x(11)-x(13)-x(15)<=0;
%x(1)+x(2)+x(3)-x(5)-x(9)-x(10)-x(11)-x(15)-x(16)-x(17)-x(19)-...
% x(6)-x(12)-x(13)-x(18)-...
% x(7)-x(14)<=0;
%x(1)+x(2)+x(4)-x(5)-x(9)-x(10)-x(11)-x(15)-x(16)-x(17)-x(19)-...
% x(6)-x(12)-x(13)-x(18)-...
% x(8)-x(14)<=0;
%x(1)+x(3)+x(4)-x(5)-x(9)-x(10)-x(11)-x(15)-x(16)-x(17)-x(19)-...
% x(7)-x(12)-x(14)-x(18)-...
% x(8)-x(13)<=0;
%x(2)+x(3)+x(4)-x(6)-x(9)-x(12)-x(13)-x(15)-x(17)-x(18)-x(19)-...
% x(7)-x(10)-x(14)-x(16)-...
% x(8)-x(11)<=0;
%Equalities
%x(1)+x(2)+x(3)+x(4)=1;
%x(5)+x(6)+x(7)+x(8)+x(9)+x(10)+x(11)+x(12)+x(13)+x(14)+x(15)+x(16)+x(17)+x(18)+x(19)=1;
%I also want each component of x to be different from 1 and 0 (strictly included between 1 and 0 given the equalities constraints)
%x(1)>0 ---> x(1)>=eps ---> -x(1)<=-eps
%...
%x(19)>0
%x(1)<1 ---> x(1)<=1-eps
%...
%x(19)<1
%52 inequalities (14+19+19)
%2 equalities
%19 unknowns
A=[1 0 0 0 -1 0 0 0 -1 -1 -1 0 0 0 -1 -1 -1 0 -1;...
0 1 0 0 0 -1 0 0 -1 0 0 -1 -1 0 -1 0 -1 -1 -1;...
0 0 1 0 0 0 -1 0 0 -1 0 -1 0 -1 0 -1 -1 -1 -1;...
0 0 0 1 0 0 0 -1 0 0 -1 0 -1 -1 -1 -1 0 -1 -1;...
1 1 0 0 -1 -1 0 0 -1 -1 -1 -1 -1 0 -1 -1 -1 -1 -1;...
1 0 1 0 -1 0 -1 0 -1 -1 -1 -1 0 -1 -1 -1 -1 -1 -1;...
1 0 0 1 -1 0 0 -1 -1 -1 -1 0 -1 -1 -1 -1 -1 -1 -1;...
0 1 1 0 0 -1 -1 0 -1 -1 0 -1 -1 -1 -1 -1 -1 -1 -1;...
0 1 0 1 0 -1 0 -1 -1 0 -1 -1 -1 -1 -1 -1 -1 -1 -1;...
0 0 1 1 0 0 -1 -1 0 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1;...
1 1 1 0 -1 -1 -1 0 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1;...
1 1 0 1 -1 -1 0 -1 -1 -1 -1 -1 -1 0 -1 -1 -1 -1 -1;...
1 0 1 1 -1 0 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1;...
0 1 1 1 0 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1;...
-1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;...
0 -1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;...
0 0 -1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;...
0 0 0 -1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;...
0 0 0 0 -1 0 0 0 0 0 0 0 0 0 0 0 0 0 0;...
0 0 0 0 0 -1 0 0 0 0 0 0 0 0 0 0 0 0 0;...
0 0 0 0 0 0 -1 0 0 0 0 0 0 0 0 0 0 0 0;...
0 0 0 0 0 0 0 -1 0 0 0 0 0 0 0 0 0 0 0;...
0 0 0 0 0 0 0 0 -1 0 0 0 0 0 0 0 0 0 0;...
0 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 0 0 0 0;...
0 0 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 0 0 0;...
0 0 0 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 0 0;...
0 0 0 0 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 0;...
0 0 0 0 0 0 0 0 0 0 0 0 0 -1 0 0 0 0 0;...
0 0 0 0 0 0 0 0 0 0 0 0 0 0 -1 0 0 0 0;...
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -1 0 0 0;...
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -1 0 0;...
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -1 0;...
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -1;...
1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;...
0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;...
0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;...
0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;...
0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0;...
0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0;...
0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0;...
0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0;...
0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0;...
0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0;...
0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0;...
0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0;...
0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0;...
0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0;...
0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0;...
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0;...
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0;...
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0;...
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1]; %52x19
b=[zeros(1,14) -eps*ones(1,19) (1-eps)*ones(1,19)]; %1x52
Aeq=[1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;...
0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1]; %2x19
beq=[1 1]; %1x2
f=zeros(1,19); %1x19
x=linprog(f,A,b,Aeq,beq);
if ~isempty(x)
pj=x;
else
pj=NaN;
end
ben işlevi solve
içeride linprogr
algoritması koyduk eşitsizlikler/eşitlikler böyle olmasıdır çözüm o aşağıda belirtildiği gibi Matlab bir eşitsizliktatmin edecek üretir:
clear
rng default
%solve system
p1=solve(unifrnd(0,0.05));
%solve system
p2=solve(unifrnd(0,0.05));
%solve system
p3=solve(unifrnd(0,0.05));
if ~isnan(p1) & ~isnan(p2) & ~isnan(p3) %#ok<AND2>
%LHS
lhs=(p1(2)+p1(3)+p1(4))*1*1+...
p1(1)*(p2(1)+p2(4))*1+...
p1(1)*p2(2)*(p3(2)+p3(3)+p3(4))+...
p1(1)*p2(3)*(p3(1)+p3(2)+p3(3));
%RHS
rhs=(1-(p1(5)+p1(9)+p1(10)+p1(11)+p1(15)+p1(16)+p1(17)+p1(19)))*...
1*...
1+...
... +
(p1(5)+p1(9)+p1(10)+p1(11)+p1(15)+p1(16)+p1(17)+p1(19))*...
(p2(5)+p2(8)+p2(11))*...
1+...
... +
(p1(5)+p1(9)+p1(10)+p1(11)+p1(15)+p1(16)+p1(17)+p1(19))*...
(p2(7)+p2(10)+p2(14)+p2(16))*...
((p3(5)+p3(9)+p3(10)+p3(17))+(p3(6)+p3(7)+p3(12)))+...
... +
(p1(5)+p1(9)+p1(10)+p1(11)+p1(15)+p1(16)+p1(17)+p1(19))*...
(p2(6)+p2(9)+p2(13)+p2(15))*...
((p3(8)+p3(13)+p3(14)+p3(18))+(p3(6)+p3(7)+p3(12)))+...
... +
(p1(5)+p1(9)+p1(10)+p1(11)+p1(15)+p1(16)+p1(17)+p1(19))*...
(p2(12)+p2(17)+p2(19))*...
(p3(6)+p3(7)+p3(12));
check=(lhs>=rhs); %I expect check to be 1
else
end
I inanıyoruz çözeltiler p1,p2,p3
, check=1
'u teslim edecek.
Soru: Yukarıda belirtildiği gibi, bu analitik olarak nasıl gösterileceğini bilmiyorum; tatmin edici bir sayısal argüman üretmenin bir yolu var mı? Ya da, inancımı öldürür veteslim eden p1,p2,p3
çözümleri sağlayabilir misiniz?
Hiçbiri yardımcı olmaz. Ödül neredeyse sona eriyor – user3285148