目标规划(Goalprogramming)目标规划的数学模型目标规划的图解法目标规划的单纯形法目标规划是在线性规划的基础上,为适应经济管理中多目标决策的需要而逐步发展起来的一个分支。例一、某厂计划在下一个生产周期内生产甲、乙两种产品,已知资料如表所示。试制定生产计划,使获得的利润最大?同时,根据市场预测,甲的销路不是太好,应尽可能少生产;乙的销路较好,可以扩大生产。试建立此问题的数学模型。12070单件利润3000103设备台时200054煤炭360049钢材资源限制乙甲单位产品资源消耗一、目标规划模型设:甲产品x1,乙产品x2一般有:maxZ=70x1+120x29x1+4x2≤36004x1+5x2≤20003x1+10x2≤3000x1,x2≥0同时:maxZ1=70x1+120x2minZ2=x1maxZ3=x29x1+4x2≤36004x1+5x2≤20003x1+10x2≤3000x1,x2≥0显然,这是一个多目标规划问题。•如何将多目标转化为单目标•如何表示不同目标的主次•如何求解若在上例中提出下列要求:1、完成或超额完成利润指标50000元;2、产品甲不超过200件,产品乙不低于250件;3、现有钢材3600吨必须用完。50000120701121ddxx:,因此,将上两式合成而建模时却都要考虑到,,当然优化前并不知道实际情况只有一种可能)(或:)(:,实现结果有两种可能对于’50000120705000012070500001207050000120701112121112121sdxxxxsdxxxx0001111dddd,且有,规定200221ddx250332ddx2、产品甲不超过200件,产品乙不低于250件;200200200200211211dxxdxx,也可能是;,甲产量可能是3、3600吨钢材必须用完3600494421ddxx3600493600493600493600494212142121dxxxxdxxxx可能没用完:可能用完:250250250250322322dxxdxx,也可能是;,乙产量可能是目标值:预先给定的某个目标的一个期望值e。实现值或决策值:当决策变量xj被求出以后,目标函数的对应值。偏差变量(事先无法确定的未知数):实现值和目标值之间的差异,记为d。正偏差变量:实现值超过目标值的部分,记为d+。负偏差变量:实现值未达到目标值的部分,记为d-。1、目标值和偏差变量通过引入目标值和偏差变量,使上述三个要求变成相应的约束条件,即目标约束。目标约束是目标规划中特有的,是软约束。当完成或超额完成规定的指标则表示:d+≥0,d-=0当未完成规定的指标则表示:d+=0,d-≥0当恰好完成指标时则表示:d+=0,d-=0∴d+×d-=0成立。引入了目标值和正、负偏差变量后,就对某一问题有了新的限制,即目标约束。在一次决策中,实现值不可能既超过目标值又未达到目标值,故有d+×d-=0,并规定d+≥0,d-≥02、目标约束和绝对约束绝对约束:必须严格满足的等式或不等式约束。如线性规划中的所有约束条件都是绝对约束,有一个不满足就无可行解。所以,绝对约束是硬约束。)4.3.2.1(0.,03000103200054360049250200500001207021212144213322211121jddxxxxxddxxddxddxddxxjj)()127(min44332211ddPddPdPZ目标约束(软约束)绝对约束(硬约束)目标函数是一个使总偏差量为最小的目标函数,记为minZ=f(d+、d-)。一般说来,有以下三种情况,但只能出现其中之一:3、目标函数⑴要求恰好达到规定的目标值,即正、负偏差变量要尽可能小,则minZ=f(d++d-)。⑵要求不超过目标值,即允许达不到目标值,也就是正偏差变量尽可能小,则minZ=f(d+)。⑶要求不低于目标值,即超过量不限,也就是负偏差变量尽可能小,则minZ=f(d-)。对于由绝对约束转化而来的目标函数,也照上述处理即可。优先因子Pk是将决策目标按其重要程度排序并表示出来。P1P2…PkPk+1…PK,k=1.2…K。权系数ωk区别具有相同优先因子的两个目标的差别,决策者可视具体情况而定。对于这种解来说,前面的目标可以保证实现或部分实现,而后面的目标就不一定能保证实现或部分实现,有些可能就不能实现。4、优先因子(优先等级)与优先权系数5、满意解(具有层次意义的解)360049250200500001207044213322211121ddxxddxddxddxx对于上例中的目标:1、完成或超额完成利润指标50000元;2、产品甲不超过200件,产品乙不低于250件;3、现有钢材3600吨必须用完。若实现值没有达到目标,则存在偏差,希望按目标先后尽可能使偏差最小。1d2d3d)(44dd1P偏差2P3P目标2有两个要求,且具有相同的优先因子,因此需要确定权系数。本题可用单件利润比作为权系数即70:120,化简为7:12。223712Pdd())4.3.2.1(0,030001032000543600492502005000012070)()127(min212121442133222112144332211jddxxxxxxddxxddxddxddxxddPddPdPZjj1,,目标规划模型为:例:某厂生产Ⅰ、Ⅱ两种产品,有关数据如表所示。试求获利最大的生产方案。ⅠⅡ限量原材料2111设备(台时)1210单件利润810要求考虑:1、产品Ⅱ的产量不低于产品Ⅰ的产量;2、充分利用设备有效台时,不加班;3、利润不小于56元。设:I、II产品产量分别为x1,x20112112ddxxxx)(121222210210xxxxdd()1212338105681056xxxxdd()11221xx11dP)(222ddP33dP目标规划模型:)3.2.1(0,0112561081020)(min21213321222111213322211jddxxxxddxxddxxddxxdPddPdPZjj,,)2.1(0.0)2.1).()2.1()(min1111Llddn)1.2(jxmi(bxaLlqddxcddPZlljnjijijnjllljkjKkLllkllklk目标规划模型的一般形式目标规划建模步骤2、根据要研究的问题所提出的各目标与条件,确定目标值,列出目标约束与绝对约束;klkl和5、对同一优先等级中的各偏差变量,若需要可按其重要程度的不同,赋予相应的权系数。4、给各目标赋予相应的优先因子Pk(k=1.2…K)。3、可根据决策者的需要,将某些或全部绝对约束转化为目标约束。这时只需要给绝对约束加上负偏差变量和减去正偏差变量即可。个子目标优先权个目标中第分别为第、其中,lkklkl1、假设决策变量;6、根据决策者的要求,按下列情况之一构造一个由优先因子和权系数相对应的偏差变量组成的、要求实现极小化的目标函数,即达成函数。llddldld⑴.恰好达到目标值,取。⑵.不希望低于目标值,取。⑶.不希望超过目标值,取。图解法同样适用两个变量的目标规划问题,但其操作简单,原理一目了然。同时,也有助于理解一般目标规划的求解原理和过程。图解法解题步骤如下:1、确定各约束条件的可行域,即将所有约束条件(包括目标约束和绝对约束,暂不考虑正负偏差变量)在坐标平面上表示出来;2、在目标约束所代表的边界线上,用箭头标出正、负偏差变量值增大的方向;目标规划的图解法3、求满足最高优先等级目标的解;4、转到下一个优先等级的目标,再不破坏所有较高优先等级目标的前提下,求出该优先等级目标的解;5、重复4,直到所有优先等级的目标都已审查完毕为止;6、确定最优解或满意解。例:用图解法求解目标规划问题)2.1(0,0821025.621210)(min21212221112122111lddxxxddxxddxxdPddPZll012345678123456⑶⑴x2x1⑵1d1d2d2dBCB(0.6250,4.6875)C(0,5.2083),B、C线段上的所有点均是该问题的解(无穷多最优解)。)2.1(0,0821025.621210)(min21212221112122111lddxxxddxxddxxdPddPZll)3.2.1(0.,0112561081020)(min21213321222111213322211jddxxxddxxddxxddxxdPddPdPZjj练习:用图解法求解下列目标规划问题⑷⑴1d1d3d3d⑶⑵2d2d结论:有无穷多最优解。C(2,4)D(10/3,10/3))3.2.1(0.,0112561081020)(min21213321222111213322211jddxxxddxxddxxddxxdPddPdPZjjCD例:已知一个生产计划的线性规划模型为01006014021230max21212121xxxxxxxZ)()()(丙资源乙资源甲资源其中目标函数为总利润,x1,x2为产品A、B产量。现有下列目标:1、要求总利润必须超过2500元;2、考虑产品受市场影响,为避免积压,A、B的生产量不超过60件和100件;3、由于甲资源供应比较紧张,不要超过现有量140。试建立目标规划模型,并用单纯形法求解。)4.3.2.1(0,,0100601402250012305.2min214423312221112123423211lddxddxddxddxxddxxdPdPdPdPZll)5.2(432ddPP1P3P2目标规划的单纯形法Cj00P100P302.5P20P2CBXBbx1x2P1250030121-1000000014021001-100000601000001-1000100010000001-1σkjP1-2500-30-1201000000P2000000002.501P3000000100001d1d2d2d3d3d4d4d1d2d3d4dθ=min{2500/30,140/2,60/1}=60,故为换出变量。3d目标函数系数和检验数竖着排列σ=2.5P2-(0*P1+0*0-1*0+0*0)=2.5P2,将2.5填P2行。3dCj00P100P302.5P20P2CBXBbx1x2P17000121-100-30300002001001-1-22000x1601000001-1000100010000001-1σkjP1-7000-12010030-3000P2000000002.501P300000010000