优化建模2020/4/261在对策论中,应有以下要素:(1)局中人。是指参与对抗的各方,可以是一个人,也可以是一个集团。在例1.1的甲、乙两名儿童就是局中人。(2)策略。是指局中人所拥有的对付其他局中人的手段、方案的集合。如例1.1中共有石头、剪子、布三种策略。(3)支付函数(或收益函数)。是指一局对策后各局中人的得与失,通常用正数字表示局中人的得,用负数字表示局中人的失。在例1.1的局中人甲的支付函数如表所示。优化建模乙石头剪子布甲石头01-1剪子-101布1-10例1.1“石头--剪子--布”中儿童甲的支付函数优化建模•当局中人得失总和为零时,称这类对策为零和对策;否则称为非零和对策。•当局中人只有两个,且对策得失总和为零,则称为二人零和对策,若总得失总和为常数,则称为二人常数和对策,若得失总和是非常数的,则称为二人非常数和对策。•若二人对策双方的得失是用矩阵形式表示,则称支付函数为支付矩阵,相应的对策称为矩阵对策。通常,支付矩阵表示局中人A的支付函数。优化建模鞍点对策是对策的最基本策略,为更好地理解鞍点对策,先看一个简单的例子。1.对策的基本策略---鞍点对策例9.2设A、B两人对策,各自拥有三个策略:a1,a2,a3和b1,b2,b3,局中人A的支付(收益)矩阵由表1.2所示。试求A、B各自的最优策略。b1b2b3mina11391a26575a38422max859优化建模•问题分析:从直观来看,局中人A应该出策略a1,因为这样选择,他有可能得到9.但局中人B看到了这一点,他出策略b1,这样局中人A不能得到9,而只能得到1.因此,局中人A也充分认识到这一点,他应当出策略a3,这样做,就有可能得到8,而这种情况下局中人B,就要出策略b3,局中人A也只能得到2.这样做下来,局中人A只能选择策略a2,而局中人B也只能选择策略b2,大家达到平衡,最后局中人A赢得的值为5,局中人B输掉的值为5.优化建模从上面的分析可以看出,无论局中人A选择什么策略,他赢得的值总是小于等于5,而无论局中人B选择什么策略,他输掉的值总是大于等于5,5就是支付矩阵的鞍点。现讨论一般情况。假设局中人A的支付矩阵由表1.3所示。12…n1C11C12…Cn12C21C22…Cn2┆┆┆┆mCm1Cm2…Cmn优化建模其中局中人A有m个策略α1,…,αm,局中人B有n个策略β1,…,βn,分别记为S1={α1,…,αm},S2={β1,…,βn}C为局中人A的支付矩阵,而-C为局中人B的支付矩阵。因此,矩阵对策记为G={A,B;S1,S2,C},或G={S1,S2,C}对于一般矩阵对策,有如下定义和定理。优化建模定义9.1设G={S1,S2,C}是一矩阵对策,若等式成立,则记vG=,ci*j*并称vG为对策G的值。称使式(1)成立纯局势(αi*,βj*)为G在纯策略下的解(或平衡局势),称αi*和βj*分别为局中人A、B的最优纯策略。**maxminminmaxjiijijijjiccc优化建模2020/4/269定理9.1矩阵对策G={S1,S2,C}在纯策略意义下有解的充分必要条件是:存在纯局势(αi*,βj*)使得.,,2,1,,,2,1,****njmicccjijiij定义9.2的一个鞍点、为函数则称使得若存在上的实值函数,及为一个定义在设),(),(,),,(),(),(,,),(********yxfyxByAxyxfyxfyxfByAxByAxyxf优化建模当矩阵对策的最优解不唯一时,有如下定理:定理9.2定理9.3.),(),(22112211jijijijicc则是矩阵对策的两个解,和若.),(),(,),(),(12212211也是解和则是矩阵对策的两个解和若jijijiji优化建模2.无鞍点的对策策略---混合对策如果支付矩阵有鞍点,选择鞍点对策是最优的对策策略,如果支付矩阵无鞍点,则需要选择混合对策。我们回过头再看例9.1(“石头--剪子--布”),对于支付矩阵,有1maxmin,1minmaxijijijjicc没有纯最优策略。因此无法用定理9.1来确定最优策略。在这种情况下,只能求相应的混合策略。类似于纯策略,混合策略有如下定义和定理。优化建模定义9.3设有矩阵对策G={S1,S2,C}称)5(,,,2,1,0,1|)4(,,,2,1,0,1|1*21*1njjinmiiimnjyyRySmixxRxS分别为局中人A和B的混合策略。称(x,y)(xS1*,yS2*)为一个混合局,称为局中人A的支付函数(赢得函数)。)6(),(11minjjiijTyxcCyxyxE优化建模定义9.4设G*={S1*,S2*,C}是G={S1,S2,C}的混合扩充,若)7(),(maxmin),(minmax*1*2*2*1GSxSySySxvyxEyxE则称vG为对策G*的值。称使式(7)成立混合局势(x*,y*)为G在混合策略下的解,称x*和y*分别为局中人A和B的最优混合策略。优化建模定理9.4矩阵对策G={S1,S2,C}在混合策略意义下有解的充分必要条件是:存在(xS1*,yS2*)使(x*,y*)为函数E(x,y)的一个鞍点,即)8(.,,*,**,*,*2*1SySxyxEyxEyxE优化建模3.混合对策求解方法通常用线性规划方法求混合策略的解。设局中人A分别以x1,x2,…,xm的概率混合使用他的m种策略,局中人B分别以y1,y2,…,ym的概率混合使用他的n种策略。miiixx10,1njjiyy10,1优化建模当A采用混合策略,B分别采用纯策略bj(j=1,2,…,n),A的赢得分别为依据最大最小原则,应有miiijnjxc1),,2,1(,,,2,1,0)9(,1,minmax11mixxxcvimiimiiijjxA其中vA是局中人A的赢得值。优化建模将问题(9)写成线性规划问题)13(.,,2,10)12(1)11(,,,2,1,.)10(;max1mixxnjvxctsvimiimjiAiijA也就是说,线性规划问题(10)~(13)的解就是局中人A采用混合策略的解。类似可求局中人B的最优策略的解。优化建模例9.3用线性规划方法求解例1的最优混合策略。按照线性规划(10)~(13)写出相应的LINGO程序,程序名:exam0903a.lg4MODEL:1]sets:2]playerA/1..3/:x;3]playerB/1..3/;4]game(playerA,playerB):C;5]endsets优化建模6]data:7]C=01-18]-1019]1-10;10]enddata11]max=v_A;12]@free(v_A);13]@for(playerB(j):14]@sum(playerA(i):C(i,j)*x(i))=v_A);15]@sum(playerA:x)=1;END优化建模得到最优解(只保留相关部分)Globaloptimalsolutionfoundatiteration:3Objectivevalue:0.000000VariableValueReducedCostV_A0.0000000.000000X(1)0.33333330.000000X(2)0.33333330.000000X(3)0.33333330.000000优化建模即儿童甲以1/3的概率出石头、剪子、布中每种策略的一种,其赢得值为0.用线性规划求出儿童乙有同样的结论。计算到此,读者可能会产生一个问题:一个具有鞍点的对策问题,如果采用线性规划方法求解,将会出现什么情况?优化建模例9.4用线性规划方法求解例2解:写出LINGO程序,程序名:exam0904.lg4MODEL:1]sets:2]playerA/1..3/:x;3]playerB/1..3/;4]game(playerA,playerB):C;5]endsets6]data:7]C=139优化建模8]6579]842;10]enddata11]max=v_A;12]@free(v_A);13]@for(playerB(j):14]@sum(playerA(i):C(i,j)*x(i))=v_A);15]@sum(playerA:x)=1;END优化建模计算结果为(保留有效部分)Globaloptimalsolutionfoundatiteration:0Objectivevalue:5.000000VariableValueReducedCostV_A5.0000000.000000X(1)0.0000002.000000X(2)1.0000000.000000X(3)0.0000001.000000优化建模由结果可以看到,局中人A仍然选择纯策略。对局中人B的计算也会出现同样的情况。从例9.3和例9.4可以看出,无论矩阵对策有无鞍点,我们均可以采用线性规划的方法求其对策,只不过具有鞍点的对策可以有更简单的算法罢了。优化建模1.2二人常数和对策所谓常数和对策是指局中人A和局中人B所赢得的值之和为一常数.显然,二人零和对策是二人常数和的特例,即常数为零。对于二人常数和对策,有纯策略对策和混合策略对策。其求解方法基本上是相同的。1.鞍点对策对于二人常数和对策,仍然有鞍点对策,其求解方法与二人零和对策相同。优化建模例9.4在晚8点至9点这个时段,两家电视台在竞争100万电视观众收看自己的电视节目,并且电视台必须实时公布自己在下一时段的展播内容。电视台1可能选择的展播方式及可能得到的观众如表所示。电视台min西部片连续剧喜剧片电视台1西部片35156015连续剧45585045喜剧片38147014max455870优化建模解:事实上,对方得到的,就是自己失去的,完全利用二人零和的方法确定最优纯策略,即因此,电视台1选择播放连续剧,赢得45万观众,电视台2播放西部片,赢得100-45=55万观众。45maxminminmaxAijijAijjicc2.混合对策对于常数和对策,也存在混合对策,同样可以采用线性规划方法求解,这里就不举例子了。优化建模§2二人非常数和对策二人非常数和对策也称为双矩阵对策。在前面介绍的常数和(零和)对策中,均包含两种情况,纯策略和混合策略。对于非常数对策,也包含这两种策略。1.纯对策问题例9.6:囚徒的困境(表9.2.1)乙坦白不坦白甲坦白(-3,-3)(0,-10)不坦白(-10,0)(-1,-1)优化建模例9.6设有甲、乙两名嫌疑犯因同一桩罪行被捕,由于希望他们坦白并提供对方的犯罪证据,规定如两人均坦白各判刑3年;如上方坦白另一方不坦白,坦白一方从轻释放,不坦白一方判刑10年;如两人均不坦白,由于犯罪事实很多不能成立,只能各判1年,见表9.2.1所示。试分析甲、乙两犯罪嫌疑人各自采用什么策略使自己的刑期最短。优化建模例9.6给出了典型的二人非常数和对策,每人的收益矩阵是不相同的,因此称为双矩阵对策。通常规定,双矩阵中,第一个元素是局中人A的赢得值,第二个元素是局中人B的赢得值。问题分析:这是一个二人非常数和对策问题。从表面看,两犯罪嫌疑人拒不坦白,只能被判1年徒刑,结果是最好的。但仔细分析,确无法做到这一点。因为犯罪嫌疑人甲如果采用不坦白策略,他可能被判的刑期为1到10年,而犯罪嫌疑人乙可能判的刑期为0到1年。优化建模而甲选择坦白,他被判的刑期为0到3年,此时,犯罪嫌疑人乙可能判的刑期为3到10年。因此,犯罪嫌疑人甲一定选择坦白。基于同样的道理,犯罪嫌疑人乙也只能选择坦白。选择坦白是他们最好的选择,各自被判3年。优化建模事实上,设(cijA,cijB)是甲、乙赢得值,则甲、乙采用的策略是BBijjiAAijijcccc1111maxmin3max