Stackelberg 博弈模型求解

Stackelberg 博弈模型求解的方法,现在大都包括三种方法:对角化法,驻点法和人工智能法。其中,对角化和人工智能的方法,不需要对模型进行转换,而驻点法则需要把模型转化成MPEC或者EPEC的结构形式再进行求解。

对角化法

对角化法又称为不动点迭代法,不同利益主体交替做出决策,每次决策后会公布结果,其他参与者以此为依据做出决策,问题最终收敛于均衡点。该方法的具体流程:
Stackelberg 博弈模型求解_第1张图片
由于该方法属于迭代求解,目前收敛性难以保证,且求解速度慢,当参与者较多时,如存在多个领导者或者跟随者时,求解效率十分低下,但其可以作为后校验方法或其他方法的参照,判断结果是否为最优均衡点。

驻点法

驻点法是通过构造原问题的 KKT 条件进行求解。对于仅含单个领导者的问题,可以将下层问题用 KKT 代替,作为上层问题的约束条件,从而得到MPEC 问题进行求解。对于含多个领导者的问题,由于 EPEC 可以看成同时考虑多个 MPEC 的问题。驻点法的流程:
Stackelberg 博弈模型求解_第2张图片
双层博弈模型通过KKT条件转化为MPEC问题
Stackelberg 博弈模型求解_第3张图片
形成EPEC问题,首先要找到对应的拉格朗日函数。
Stackelberg 博弈模型求解_第4张图片
Stackelberg 博弈模型求解_第5张图片
根据最后得到的CP公式,用PATH求解器进行求解。实际上是对做后的NLP(非线性规划)直接用求解器进行求解的。
驻点法虽然不需要迭代,但是,他 也存在一定的问题,驻点法不需要迭代,通过对模型转换,能够一次求得博弈问题的所有均衡解,但需要求取问题的KKT 最优性条件或进行对偶转换。即便对于凸优化结构的问题,仍然可能存在均衡解不唯一的情况;若转换后为非凸问题,则无法保证得到最优均衡解,且同样可能存在多解的问题。因此,驻点法存在求得的最终解是否为 Stackelberg 最优均衡点、局部最优均衡点或者鞍点的问题。在求得最终结果后,通常需要利用对角化方法进行后校验。

人工智能法

人工智能法是近几年随着智能算法和强化学习的发展而兴起的。启发式智能算法和强化学习算法具有很强的通用性,并且不需要对原问题进行转换。算法大概包括:遗传、粒子群等智能算法的效果。这类算法存在迭代次数多,收敛性及解的质量无法保证等缺点,尤其当问题规模增大时,求解效率大幅下降。但是这类算法可以快速得到可行解,为数学优化方法提供高质量初始解。

你可能感兴趣的:(机器学习,人工智能,算法)