双层优化问题(Bilevel Programming Problems),也被称为双层规划,最早由Stackelberg与1934年在经济学相关研究中提出,因此也被称为Stackelberg问题。双层规划问题一般具有层次性、独立性、冲突性、优先性和自主性等特点。
对于小规模线性双层优化问题,通过迭代也无法求出问题的解,实际我们要解决的问题一般都不会这么简单,通常规模比较大,或者模型中存在非线性,一般来说很难通过简单的迭代法进行求解,需要考虑其他方法。实际上,双层优化问题是一个 NP 难问题,通常采用的方式是利用 KKT(Karush-Kuhn-Tucker)条件将双层优化转换为单层优化问题。
本文介绍了双层优化的原理与求解方法,详细介绍了KKT条件在双层优化中的使用方法,并提供了相应的matlab代码供参考学习。
2023-05-26 10:23:49
4.34MB
matlab
1