目标规划
目标规划
重点掌握目标规划模型的建立
目标规划问题的提出
线性规划在处理实际问题时的局限性
- 线性规划只能处理单目标的优化问题,无法处理存在多个目标,特别时目标间无法用 同一量纲 来度量的情况
- 线性规划模型中的 约束是刚性、绝对的,稍有超差就可能导致问题无解
- 实际问题目标和约束可以 互相转化,但线性规划模型中将两者截然分开
- 线性规划追求最优解,而实际问题中往往得到满意解即可
目标规划通过以下途径来解决上述线性规划建模中的局限性:
- 设置 偏差常量,用来表明实际值同目标值之间的差异,偏差变量用下列符号表示:
- \(d^{+}\):超出目标的差值,称为 正偏差变量
- \(d^{-}\):未达到目标的差值,称为 负偏差变量
两种偏差常量中必至少定有一个为零
- 统一处理目标和约束:
- 只对资源使用上有 严格限制 的建立 系统(刚性)约束。数学形式上为严格的 等式或不等式,同线性规划中的约束条件。
- 对那些不严格限定的约束,连同原线性规划建模时的目标,均通过目标约束来表达。目标约束是一种将约束同目标结合在一起的表达式。
- 目标的优先级与权系数:
在一个目标规划的模型中,如果两个不同目标 重要程度 的相差悬殊,为了达到某一目标可以牺牲一些次要目标,称这些目标是属于 不同层次的优先级。优先级层次的高低可分别通过 优先因子 \(P_1,P_2,\cdots\) 表示,并规定 \(P_k \gg P_{k+1}\),即 不同优先级之间的差别无法用数字大小衡量,对属于 同一层次优先级的不同目标,按其 重要程度 可分别乘上不同的 权系数,权系数是一个具体数字,权系数越大,表明该目标越重要。
目标规划的一般数学模型:
\[\qquad \qquad \min_{} z=\sum_{k=1}^{K}P_k\sum_{l=1}^{L}(\ w^{-}_{kl}d_l^{-}\ +\ w^{+}_{kl}d_l^{+}\ ) \qquad \qquad (5.1a)\\
s.t. \begin{cases}
\displaystyle \sum_{j=1}^{n}a_{ij}x_j\ \le\ (=,\ge )\ b_i\quad (i=1,2,\cdots,m) \qquad \qquad(5.1b)\\
\displaystyle \sum_{j=1}^{n}c_{lj}x_j+d_j^{-}-d_l^{+}=g_l \quad (l=1,2,\cdots,L) \qquad \quad\ (5.1c)\\
x_j \ge 0\qquad (j=1,2,\cdots,n)\\
d_l^{-},d_l^{+} \ge 0\qquad (l=1,2,\cdots,L)
\end{cases}
\]
式中:
- \(P_m\)为第k级优先因子,\(k=1,2,\cdots,K\);
- \(w^{-}_{kl},w^{+}_{kl}\)为分别赋予第 l 个目标约束的正负偏差变量的权系数;
- \(g_l\)为第 l 个目标的预期目标值,\(l=1,2,\cdots,L\);
- \((5.1b)\) 为系统约束, \((5.1c)\) 为目标约束
目标规划与线性规划模型的差异:
线性规划模型 | 目标规划模型 | |
变量 | 只含决策变量 | 分决策变量与偏差变量 |
约束条件 | 系统(刚性)约束 | 分系统约束和目标约束 |
目标函数 | 为决策变量的函数 | 为偏差变量的函数,并按优先级、权系数区分重要程度 |
求解结果 | 寻找最优解(有可能无可行解) | 寻找满意解 |
目标规划的图解分析法
对模型中只含有两个变量(偏差变量不计入的目标规划问题),可以用图解分析的方法找到满意解。
- 建立平面直角坐标系,确定坐标上的单位长度
- 将代表各目标约束的直线方程分别标示在坐标平面内
- 再按目标函数中目标的优先级分别依次分析
单纯形法求解目标规划
目标规划与线性规划的数学模型基本相同,所以用单纯形法求解是的方法步骤也基本相同。但由于目标规划中目标函数分不同优先级,因此应首先寻求使最高优先级的目标优化,然后再转向下一级当下一级目标优化后再专职更低一级,以此类推。
说明:
- 对目标函数的优化是按优先级顺序逐级进行的,当\(P_1\)行的所有检验数均为非负时,说明第一行已经得到优化,可以转入下一级,在考察\(P_2\)行的检验数是否存在负值。以此类推。
- 当考察\(P_2\)行以下的检验数时,注意应 包括更高级别的优先因子在内。判断迭代计算能否停止的准则为:
- 检验数 \(P_1,P_2,\cdots,P_k\) 行的 所有值均为非负
- 若 \(P_1,P_2,\cdots,P_i\) 行所有检验数为非负,第 \(P_{i+1}\) 行存在负检验数,但在负检验数所在列的上面行中有正检验数。即从 \(P_2\) 行开始,虽然在某一行存在负检验数,而该负检验数同列较高优先级的行中存在正检验数时,计算就该停止。
求解目标规划的层次算法
根据目标规划求解思路是从搞优先级到低优先级逐层优化的原则,为保证较低层级优化在较高层级优化范围内进行,可将上一层次目标的优化值作为约束,加到下一层次的模型中。