论文部分内容阅读
双层规划问题是一类具有递阶结构的非凸优化问题。目前,对于这类问题的讨论往往局限于线性情形、上下层函数均凸可微等,对于含不可微非凸函数的双层规划问题,存在的有效算法极少。本文针对几类非线性双层规划问题,利用问题的特点设计了相应的遗传算法,并证明了算法的收敛性。提出的大部分算法突破了基于梯度的传统优化方法对函数可微性和凸性的限制;另外,为了提高遗传算法的效率,利用单纯形法、指数分布等设计了一些新的遗传算子。主要工作包括如下几个方面:1.对于下层问题为线性规划的情形,本文讨论了上层问题为凸可微规划和上层函数非凸不可微两种情况。首先,对于上层凸可微的问题,利用下层基进行个体编码,并运用最优性条件,将问题转化为一个单层规划,以该单层规划的最优值作为相应个体的适应度值。该算法的优点是适合求解大规模问题。其次,针对上层函数非凸不可微的问题,基于下层规划的对偶问题及对偶定理,将上层变量的取值域进行剖分,使得每一个剖分区域内的所有点对应同一个下层最优解表达式。而对上层采用遗传算法求解,并基于单纯形法设计了新的杂交算子。算法的优势是对每一个上层变量值,无需求解下层问题即可得到下层最优解,因而提高了算法的效率。2.讨论了下层为凸二次规划和一般凸规划,而上层含非凸不可微函数的两个问题,分别提出了求解这两类问题的遗传算法。首先利用下层凸规划的K-K-T条件,将问题转化为一个等价的单层规划;其次为了提高种群个体的可行性,对下层为凸二次规划的情形,利用Lemke算法获得下层最优解;对于下层为一般凸规划的情形,给出了新的约束处理方法,它能将种群中的不可行点转化为约束域内的点,且给出了一个判断个体是否满足下层最优性的方法。3.研究了三类下层含非凸函数的双层规划问题,包括下层函数可分、下层目标为一类非凸复合函数和下层函数为广义凹函数三种情形。首先针对下层问题特点,分别给出了下层求解方法。对下层可分的情形,将问题分为单变量函数的极值问题求解;对于第二类问题,利用下层目标函数,将问题分解为多个凸规划,通过求解其中两个而获得最优解;对于第三类问题,利用凹规划的最优解能在极点上达到的性质求解。其次利用种群最好个体设计了新的杂交算子,并用遗传算法求解上层问题。4.针对下层问题可解的非线性双层规划问题,提出了一个基于插值的遗传算法。该算法的特点是利用插值函数估计下层最优解函数,以插值函数的值近似下层最优解。这省去了大量求解下层问题的过程,能有效节约计算量。5.研究了下层函数关于整数变量可分、下层松弛问题为凸规划和下层函数关于整数变量为多项式的混合整数双层规划问题。首先给出了各类下层问题的解法,对于下层可分的问题,利用目标函数的凸凹性分解求解;对于下层松弛问题为凸规划的问题,利用凸函数的性质,给出了一种简化的分支定界法;对于第三类问题,利用连续化技术给出了同解的线性规划问题。其次利用遗传算法求解上层问题,并设计了一个基于指数分布的杂交算子。6.对提出的算法,进行了收敛性分析。