约束最优化问题的求解要比无约束问题的求解复杂得多, 也困难得多, 因而求解方法也更多种多样, 内容更为丰富. 这里只讨论可行方向方法中的简约梯度法和增广目标函数方法中的惩罚函数法.
一: 约束优化问题的最优性条件
KKT最优化条件是Karush[1939]以及Kuhn和Tucker[1951]先后独立发表出來的. 这组最优化条件在Kuhn和Tucker 发表之后才逐渐受到重视, 因此许多书只记载成「Kuhn-Tucker 最优化条件(Kuhn-Tucker conditions)」. KKT条件处理不等式约束时, 可以把它变换成一组等式约束.
KTT条件是指在满足一些有规则的条件下, 一个非线性规划(Nonlinear Programming)问题能有最优化解法的一个必要和充分条件. 这是一个广义化拉格朗日乘数的成果. 一般地, 一个最优化数学模型的列标准形式如式(1), 所谓 Karush-Kuhn-Tucker 最优化条件,就是指上式的最优点\({ {\bf{x}}^ * }\)必须满足下面的条件:
1). 约束条件满足\({g_i}({ {\bf{x}}^ * }) \le 0,i = 1,2,…,p\), 以及\(,{h_j}({ {\bf{x}}^ * }) = 0,j = 1,2,…,q\)
2). \(\nabla f({ {\bf{x}}^ * }) + \sum\limits_{i = 1}^p { {\mu _i}\nabla {g_i}({ {\bf{x}}^ * })} + \sum\limits_{j = 1}^q { {\lambda _j}\nabla {h_j}({ {\bf{x}}^ * })} = {\bf{0}}\), 其中\(\nabla \)为梯度算子;
3). \({\lambda _j} \ne 0\)且不等式约束条件满足\({\mu _i} \ge 0,\b