选球博奕与动态规划(二)

来源:互联网 发布:c语言中return的作用 编辑:程序博客网 时间:2024/06/03 18:20

      为了得到更好的算法,需要先进行以下讨论:

      命题6:设有局面N->博奕序列P=((r1,n1),(r2, n2),...,(rt,nt)),则博奕序列P对N的当前决策方目标完全不可达的充要条件是,任意以n1为起点的博奕序列Q=((u1,m1),(u2,m2),...,(uk,mk)),其尾元素的角色ukr1

       证明:必要性:设有∀Q(n1->Q),因为Q=P(=),所以,根据目标完全可达的定义可知,ukr1。

                 充分性:设∀Q(n1->Q=((u1,m1),(u2,m2),...,(uk,mk))∧ukr1);如果∃P(i+=T) (N(P(i+=T)|Arr(CR)), 1≤ i ≤t, T=((v1,h1),(v2,h2),...,(vk,hk))),且H=P(i+=T),则必有H的尾元素角色vk=r1,且n1->H(-1);也就是说以n1为起点的路径中,存在一条路径其尾元素的角色等于r1,而这与题设矛盾,故假设不成立。即博奕序列P对N的当前选择方目标完全不可达。

  命题6中的局面n1有以下特点:任意以n1为起点的博奕路径尾元素的角色等于局面n1的当前选择方。称具有这一特点的局面为当前决策方的完全局面,简称完全局面,记为n1[CR];当前决策方为X时,也称完全局面为X的完全局面

  用类似的方法可以证明以下命题成立。

      命题7:设有局面N->博奕序列P=((r1,n1),(r2, n2),...,(rt,nt)),则博奕序列P对N的当前决策方目标完全可达的充要条件是,任意以n1为起点的博奕序列Q=((u1,m1),(u2,m2),...,(uk,mk)),其尾元素的角色uk=r1

    命题7中的局面n1有以下特点:任意以n1为起点的博奕路径尾元素的角色等于局面n1当前选择方的对方。称具有这一特点的局面为当前决策方的反完全局面,简称反完全局面,记为n1[~CR],或n1[OPP(CR)];当前决策方为X时,也称此反完全局面为X的反完全局面

       为方便讨论,这里将对当前方目标完全可达路径的定义推广为对某一方目标完全可达:设局面N->博奕序列P,且P的长度为t,如果对于所有的P(i+=Q) ,有N(P(i+=Q)|Arr(X))(其中1≤ i ≤t,X为某决策方),则称博奕序列P对决策方X目标完全可达

       命题8:设有初始局面N,首轮决策者为X,其相对方为Y=OPP(X),并有集合M={ P | N(P|Arr(X))}。那么对于∀p∈M,∀a(a∈||St(p)||∧CR=Y),将具有以下特性:a蕴含的博奕路径要么是M中元素的等价余子序,要么对Y目标完全可达

       证明:将符合题设的a中所蕴含的所有(M中元素的)等价余子序剔除,所有剩余路径与a构成的局面记为a'。设有∀q@a',且E=Te(q),如果R<E>=X,那么q就是M中元素的一个等价余子序,而这又与q的假设条件矛盾。因此,R<E>=X不成立,故R<E>必为Y。根据定义,q一定是Y的目标完全可达路径。命题成立。

  设有初始局面N,首轮决策者为X,其相对方为Y=OPP(X),并有集合M={ P | N(P|Arr(X))},根据之前的筛选算法,经首轮决策后,所有候选路径的集就是M。在奇数轮上决策者为X,由于遵循博奕规则2,X的决策选择必位于路径p上(p∈M),因此,在终局面出现之前,M中的元素不会减少。在偶数轮上决策者为Y,由命题8可知,对于任一待筛选的当前局面K来说,N所蕴含的路径只有两种可能,如果出现对Y目标完全可达的路径,那么根据所遵循的博奕规则2,Y必选,从而局面K所在的所有候选路径p∈M都不符合要求而被丢弃;如果K不蕴含对Y目标完全可达的路径,那么Y的决策选择必位于路径p上(p∈M)。

       根据以上分析可知,如果终局面出现后还有候选路径被保留下来(即MΦ),那么路径p∈M必有以下特性:

       p相应的局面序列St(p),在偶数位上的元素一定不蕴含对Y目标完全可达的路径。(否则此路径必在博奕结束前被丢弃。)

       由此得到以下定义:

      设有初始局面N,首轮决策者为X,其相对方为Y=OPP(X),并有集合M={ P | N(P|Arr(X))}。如果p∈M有以下特性:St(p)在偶数位上的元素一定不蕴含对Y目标完全可达的路径。那么称初始局面N对首轮决策方有解,简称初始局面N有解;否则称初始局面N对首轮决策方无解,简称初始局面N无解;而路径p称为初始局面N的;集合M中的元素(候选路径)称为初始局面N的预选解

      初始局面N的预选解p有以下两条性质:

      1)p的元素个数一定是奇数。

      2)根据1)可知,若p不是N的解,而Y是N当前决策方CR的相对方,则St(p)中蕴含对Y目标完全可达路径的局面一定出现在Te(St(p))之前。


      其实根据题目的要求,对局面是否有解还可以作以下的理解:

      假设初始局面为N,首轮决策者为X,其相对方为Y=OPP(X)。如果局面N有解就意味着,一定存在一条博奕路径P@N,经过首轮X的决策后,无论Y如何选择,X总能成为最后一轮的决策方,这一描述被称为初始局面N有解的规则等价描述;如果局面无解就意味着,无论X在首轮如何决策(必须符合题目要求),Y总能成为最后一轮的决策方,这一描述被称为初始局面N无解的规则等价描述

      初始局面的有解与无解是针对首轮决策者来说的,而任意一个可推进局面也可以讨论其是否有解的问题。可推进局面的有解或无解是针对局面当前决策方来说的。将以上初始局面N有(无)解的规则等价描述中的首轮决策方,变为任意可推进局面N的当前决策方,其余不变,则得到任意可推进局面N有(无)解的规则等价描述

      

      设有映射f : {可推进局面N} -〉{0, 1},其中0表示局面无解,1表示局面N有解。

      那么可推进局面N有解可写作:f(N) = 1;局面N无解可写作:f(N)=0。


      根据上面的讨论可以立即得到以下两个结论:

      推论1:完全局面对其当前决策方一定有解,或者说完全局面一定有解。

      推论2:反完全局面对当前轮决策方一定无解,或者说反完全局面一定无解。

    

      命题9:设有N(P|Arr(X)),其中X=CR,Y=OPP(X);∃a(a∈||St(P)||CR=X∧a[X]),a的位置序号为i,同时Z={ b | b∈||St(P)||CR=Y∧b[Y] },如果ZΦ,且c∈Z,且c的位置序号是Z中所有元素位置序号最小的,为j,如果i<j,那么局面N必有解

      证明:设∀q@a,则根据题设必有路径P(i+=q)对X目标可达。根据已知条件,St(P(i))中无元素是Y的完全局面。同样,根据完全局面的定义,St(q)中也无元素是Y的完全局面,因此,P(i+=q)就是N的解。命题成立。


      命题10:任一中间局面如果无解,则其父局面必有解

      证明:

               方法一: 设有中间局面N,N的当前决策者为Y,其父局面为F,F的当前决策者为X,X=OPP(Y)。如果局面N无解,设M={ P | N(P|Arr(Y))},如果MΦ:那么根据局面无解的定义可知,对于∀p∈M,a(a∈||St(p)||∧CR=X),且∃q(a(q||Arr(X)))。设∀g@F,且Fe(g)=(r1,N),则g(1+=p)就是以F为起点,过局面N的一条路径。为方便讨论设h=g(1+=p),那么从Fe(St(h))到元素a之间的所有偶数位上的元素,都不是Y的完全局面,否则根据命题9可知,局面N必有解,从而与题设矛盾;而a蕴含->路径q,q对当前决策方X目标完全可达,根据目标完全可达的定义可知,从a开始到Te(St(q))之间的所有偶数位上的元素,也都不可能蕴含对Y目标完全可达的路径。因此,设元素a出现在路径h的位置序号为i,则路径h(i+=q)对X目标可达,且St(h)的偶数位上的元素都不蕴含对Y目标完全可达的路径,故它是局面F的解;如果M=Φ:说明∀p@N,有R<Te(p)> = X。此时,设h@N,且N<Fe(h)>=局面N,则St(h)偶数位上的元素都不蕴含对目标Y完全可达的路径,故局面F有解。综上所述,N的父局面必有解,命题成立。

               方法二:设有中间局面N,N的当前决策者为Y,其父局面为F,F的当前决策者为X,X=OPP(Y)。设局面N无解,根据局面无解的规则等价描述可知,在局面N下,无论当前Y如何选择,X都能成为最终的决策者。因此,作为局面F的当前决策者X,只要将局面N作为自己的决策选择,就一定可以成为最终的决策者,根据局面有解的规则等价描述可知,局面F有解。命题成立。

  

      命题11:如果初始局面N的所有子局面都有解,则局面N无解

      证明:设局面N为初始局面,N的当前决策者为X,局面C为N的任一子局面,C的当前决策者为Y,Y=OPP(X)。设C有解,根据可推进局面有解的规则等价描述,在局面C下,当前决策者Y总能找到一条决策路径,经Y的首次决策后,无论X如何选择,Y都能成为最终的决策方。因此,在局面N下无论X在首轮如何选择,X的相对方Y总能找到一条路径成为最终的决策方。根据初始局面无解的规则等价描述可知,局面N无解。命题成立。


      根据命题10和命题11立刻就可以得到初始局面N有解或无解的判断依据:

      初始局面N有解,当且仅当N的子局面中至少有一个无解

      初始局面N无解,当且仅当N的所有子局面都有解


      初始局面的特点是,它的当前决策不能取走所有的球。而对于一个中间局面N来说,当局面N的值大于其条件值时,局面N无法在当前决策中取走所有球;如果局面N能在当前决策中取走所有球(此时可推时局面N的条件值大于等于局面N的值),则局面必有解。因此,由初始局面有解或无解的判断依据,可以得到任意可推进局面有解或无解的判断依据如下:

    命题12:如果可推进局面N的条件值小于局面N的值,局面N有解,当且仅当N的子局面中至少有一个无解

    命题13:如果可推进局面N的条件值小于局面N的值,局面N无解,当且仅当N的子局面都有解


       命题14:可推进局面N的子局面个数不超过局面N的值

       证明:设有局面N,G为N的任一子局面,则根据定义可以得到关系:Vol(G) = Vol(N) - Cond(G),关系式中的三个量都不可能为负值,因此有Vol(N) - Cond(G) ≥ 0 => Vol(N)≥ Cond(G) ≥ 0。又因为,在同一局面N下,不同的Cond(G)对应着不同的子局面,所以局面G的个数≤Vol(N)。命题成立。

       命题15:出现在决策树不同位置上的同一可推进局面N,如果其局面条件相等,则其分别相对当前决策方的解也相同

       证明:设N1、N2为出现在不同位置上的同一可推进局面,即Vol(N1) = Vol(N2),如果Cond(N1) = Cond(N2),那么根据命题12、命题13可知若N1有解则N2必有解,若N1无解则N2也无解。

                 假设N1、N2都有解,因为Vol(N1) = Vol(N2),Cond(N1) = Cond(N2),那么N的子局面必分别相等,以此类推可知,以N1和N2为根结点的子树相同;又因为局面有解,故根据命题9它们可以用相同的方法,在N1和N2的子树中各自找到一条博奕路径,分别对各自的当前决策者有解;因而,用上述方法找到的两条博奕路径一定相同。若N1的所有解组成的集合为A1,N2的所有解组成的集合为A2,则必有A1=A2,因此,N1的解与N2的解相同。

                综上所述,命题成立。



       以上述讨论为基础,可以构建问题求解的新算法。(待续)

原创粉丝点击