论文部分内容阅读
双层规划问题(Bi-level Programming Problem,BLPP)是一类具有主从递阶结构的系统优化问题。由于这种模型更能描述实际系统的阶层关系和更全面地体现决策者的意愿,在经济、军事、交通、电力和工程等众多领域具有十分重要的理论意义和应用背景。论文首先对双层规划的概念和发展进行概述,对其上下层优化问题之间的关系、原理和模型进行了介绍,讨论其复杂度和到达最优的条件,简述了当前求解双层规划问题的一些可行方法和算法,并对这些方法和算法的优势与不足进行了分析。鉴于于层次启发式算法对求解非线性双层规划问题的一般性和优势,提出采用差分进化算法解决双层规划问题,并对其可行性进行了分析。简要介绍了差分进化算法的发展概况,给出了差分进化算法的基本原理和计算步骤。针对原创差分进化算法静态种群更新的不足,引出动态差分进化算法的概念并分析了动态差分进化算法的性能。针对非线性双层规划问题分层嵌套结构,本文首先给出了一种嵌套式非线性规划动态差分进化算法,上下层优化问题均采用动态差分进化算法进行求解,上下层约束条件利用增广罚函数进行处理,对24个经典测试函数进行数值仿真实验,测试算法的鲁棒性和收敛速率,并与现有算法比对,实验结果表明该算法是一种求解非线性双层规划的有效方法。由于嵌套原理对于每一个上层个体都必须调用一次下层启发式算法求得相应的下层最优解,其计算代价很大。另一方面,若下层启发式算法陷入局部最优解,则得不到相应的上层全局最优解。因此,针对一类上层函数和约束函数不具有凸性和可微性要求而下层函数可微且凸的非线性双层规划问题,首先通过KKT条件将双层规划问题转换为单层约束非线性规划问题,并结合非固定多段映射罚函数法和精确罚函数法对约束条件进行无约束化处理,然后提出一种改进的动态差分进化算法优化对系列无约束优化问题进行求解。对8个测试实例进行了数值计算并与现有文献算法进行了比较。测试结果表明,所提方法是一种求解该类双层规划问题的有效方法。为了提高算法的适应性,同时避免嵌套算法计算量过大的问题,提出一种基于k-NN最近邻算法的代理模型建立上下层优化问题之间的近似关系,以提高算法的计算效率。为了提升代理模型的精确度,通过结合SQP局部搜索策略对代理模型的预测值进行局部寻优,并与文献中的算法进行对比,实验结果表明,该算法能够提升代理模型的预测精度,且对比于一般嵌套式算法,计算代价大幅度缩减。实验结果证明该算法是一种求解一般形式非线性双层规划的有效方法。