1、一一 基本原理基本原理第五节第五节 惩罚函数法惩罚函数法 惩罚函数法是应用广泛惩罚函数法是应用广泛,非常有效的非常有效的间接解间接解法法.又称为又称为序列无约束极小化方法序列无约束极小化方法(SUMT法法).该方法通过将原约束优化问题中的等式和该方法通过将原约束优化问题中的等式和不等式约束函数加权处理后与原目标函数结合不等式约束函数加权处理后与原目标函数结合,得得到新的目标函数到新的目标函数(惩罚函数惩罚函数).原问题转化为新的无原问题转化为新的无约束优化问题约束优化问题,求解该新的无约束优化问题求解该新的无约束优化问题,间接间接得到原约束优化问题的最优解得到原约束优化问题的最优解.障碍项障碍
2、项惩罚项惩罚项加权因子加权因子(惩罚因子惩罚因子)原约束优化问题转化为无约束优化问题原约束优化问题转化为无约束优化问题:改变惩罚因子改变惩罚因子r1,r2的值的值,就会得到就会得到一系列的无约束优一系列的无约束优化问题化问题,求解得到一系列的无约束最优解求解得到一系列的无约束最优解(系列迭代点系列迭代点),这些这些最优解逐渐的逼近原约束优化问题的最优解最优解逐渐的逼近原约束优化问题的最优解.二二 惩罚函数法分类惩罚函数法分类l内点惩罚函数法内点惩罚函数法(内点法内点法)l外点惩罚函数法外点惩罚函数法(外点法外点法)l混合惩罚函数法混合惩罚函数法(混合法混合法)u数学模型及其转换数学模型及其转换
3、第一种形式第一种形式三三 内点惩罚函数法内点惩罚函数法第二种形式第二种形式内点法的加权因子内点法的加权因子(惩罚因子惩罚因子)是正数是正数,在优化过程中在优化过程中,由小到大变化由小到大变化,即取为递减数列即取为递减数列:缩减系数缩减系数(递减系数递减系数)c确定确定r01.取取r0=1,根据计算结果根据计算结果,决定增加或减少的决定增加或减少的r0值值.2.根据经验公式确定根据经验公式确定:内点法的收敛条件内点法的收敛条件初始点初始点x0-随机数生成随机数生成,满足可行满足可行:u内点法的计算步骤和程序框图内点法的计算步骤和程序框图1)选择选择可行的初始点可行的初始点;惩罚因子的初始值惩罚因
4、子的初始值;缩减系数缩减系数;收敛精度收敛精度;取迭代次数取迭代次数k-0.2)构造惩罚函数构造惩罚函数,选择选择无约束优化方法无约束优化方法求解方法求解方法,求出无约束极值求出无约束极值.3)判断所得极值点是否满足收敛条件判断所得极值点是否满足收敛条件 满足满足:取极值点为最优点取极值点为最优点,迭代终止迭代终止 不满足不满足:缩小惩罚因子缩小惩罚因子,将极值点作为初始点将极值点作为初始点,增加迭代增加迭代 次数次数,转步骤转步骤2),直到满足收敛条件为止直到满足收敛条件为止.内内点点法法程程序序框框图图举例举例用内点法求最优点用内点法求最优点:例:例:用内点用内点惩罚惩罚函数法求下列函数法求下列约约束束优优化化问题问题的最的最优优解解,取迭代初取迭代初始始X0=0,0T,惩罚惩罚因子的初始因子的初始值值r0=1,收收敛终敛终止条件止条件:|Xk-Xk-1|,=0.01。1.构造内构造内惩罚惩罚函数函数:2.用解析法求内用解析法求内惩罚惩罚函数的极小点函数的极小点3.求最求最优优解解内点惩罚函数法特点及其应用内点惩罚函数法特点及其应用l惩罚函数定义于可行域内惩罚函数定义于可行域内,序列迭代点在可行域序列迭代点在可行域 内不断趋于约束边界上的最优点内不断趋于约束边界上的最优点.l只适合求解具有不等式约束的优化问题只适合求解具有不等式约束的优化问题.