嘻嘻嘻嘻,疯狂更新,本篇分享的是对策论。在日常生活中,经常看到一些具有互相之间斗争或竞争性质的行为。具有竞争或对抗性质的行为称为对策行为。在这类行为中,参加斗争或竞争的各方各自具有不同的目标和利益。为了达到各自的目标和利益,各方必须考虑看对手的各种可能得行动方案,并力图选取对自己最为有利或最为合理的方案。对策论就是研究对策行为中斗争各方是否存在着合理的行动方案,以及如何找到这个合理的行动方案的数学理论和方法。
对策问题的特征是参与者为利益互相冲突的双方,其结局不取决于其中任意一方的努力而是各方所采取的策略的综合结果。
1.对策的基本要素
2.混合对策问题的基本概念
举个栗子:
clc,clear
a = [59.7 63.2 57.1 58.6 61.4 64.8
67.2 68.4 63.2 61.5 64.7 66.5
74.1 75.5 70.3 72.6 73.4 76.9];
m = 3; n = 3;kk = 3; T = 1000;
sc1 = [5:-2:1,zeros(1,3)];%1-3名的成绩
sc2 = repmat(sc1, kk ,1);
for i=1:m
for j=1:n
b=a;
b(i,3)=T;b(j,4)=T;%不参加比赛,时间成绩取充分大
[b,ind]=sort(b,2);%对b的每一行进行排序
for k=1:m
sc2(k,ind(k,:))=sc1;%计算得分
end
A_sc(i,j)=sum(sum(sc2(:,1:m)))
B_sc(i,j)=sum(sum(sc2(:,m+1:end)));
end
end
A_sc,B_sc
fid=fopen('txt2.txt', 'w');
fprintf(fid, '%f\n', A_sc');
fwrite(fid, '~', 'char');
fprintf(fid, '%f\n', B_sc');
fclose(fid);
按照定理8,求最优混合策略,就是求不等式约束(5)的可行解,写出相应的LINGO
程序如下:
model:
sets:
pa/1..3/:x;
pb/1..3/:y;
link(pa,pb):c1,c2;
endsets
data:
c1=@file(txt2.txt);
c2=@file(txt2.txt);
enddata
v1=@sum(link(i,j):c1(i,j)*x(i)*y(j));
v2=@sum(link(i,j):c2(i,j)*x(i)*y(j));
@for(pa(i):@sum(pb(j):c1(i,j)*y(j))<v1);
@for(pb(j):@sum(pa(i):c2(i,j)*x(i))<v2);
@sum(pa:x)=1;@sum(pb:y)=1;
@free(v1);@free(v2);
end