版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、写作论文之三:生产与存贮问题 一个生产项目,在一定时期内,增大生产量可以降低成本费,但如果超过市场的需求量,就会因积压增加存贮费而造成损失。相反,如果减少生产量,虽然可以降低存贮费,但又会增加生产的成本费,同样会造成损失.因此,如何正确地制定生产计划,使得在一定时期内,生产的成本费与库存费之和最小,这是厂家最关心的优化指标,这就是生产与存贮问题。 假设某车间每月底都要供应总装车间一定数量的部件。但由于生产条件的变化,该车间每月生产单位部件所耗费的工时不同,每月的生产量除供本月需要外,剩余部分可存入仓库备用。今已知半年内,各月份的需求量及生产该部件每单位数所需工时数如下表所示: 月份 k 1 2
2、 3 4 5 6 月需求量bk 8 5 3 2 7 4 单位工时ak 11 18 13 17 20 10 设库存容量H = 9,开始时库存量为2, 期终库存量为0。 要求制定一个半年逐月生产计划,使得既满足需求和库存容量的限制,又使得总耗费工时数最少。组号3:生产与存贮问题摘要本文是有关生产销售贮存的线性规划问题,并根据最优指标进一步对生产量进行优化,使得生产总成本尽可能达到最小。根据对题意的理解,我们将生产分为两种模式:一,只要每月生产量在月末满足该月需求量即可;二,边生产边消耗,但要求每月底都要剩余一定数量的部件,以避免下月初因无部件而造成停产。但无论是模式一还是模式二,首先在需求和库存容
3、量为约束条件下,以最小总耗费工时为目标函数建立线性规划模型,利用lingo求出最优解。但此时库存量过大,造成库存费用过大,导致成本增加,每种模式我们分别建立两种优化模型对各自最优解进行优化。第一种优化模型为按比例分式优化模型,即在求得的最小总工时基础上,力求微量增加总工时数,同时相应使得库存量大幅度减小,从而确立最大库存总量减少量与总工时增量的比值的目标函数,利用lingo解得第一种模式的最优方案为X1=11,X2= 0,X3= 12,X4= 0,X5= 0,X6= 4,最小总耗费工时为317,总库存为21,;第二种模式的最优方案为X1=12,X2= 0,X3= 11,X4=1,X5= 0,X
4、6=3,最小总耗费工时为322,总库存为25.第二种优化模型为总成本费加和优化模型,讨论单位工时生产成本费与单位库存成本的比例关系,以寻求最小的总耗工时费与库存费之和为目标函数建立模型,利用lingo求解,得到两种模式下的优化结果都与第一种优化模型一致。最后,我们对原始线性规划模型进行灵敏度分析,经分析得出的优化结果与两种优化模型求得的优化方案一致,说明了合理性。关键词 线性规划 优化 lingo 灵敏度分析生产与存贮问题一问题重述 一个生产项目,在一定时期内,增大生产量可以降低成本费,但如果超过市场的需求量,就会因积压增加存贮费而造成损失。相反,如果减少生产量,虽然可以降低存贮费,但又会增加
5、生产的成本费,同样会造成损失.因此,如何正确地制定生产计划,使得在一定时期内,生产的成本费与库存费之和最小,这是厂家最关心的优化指标,这就是生产与存贮问题。 假设某车间每月底都要供应总装车间一定数量的部件。但由于生产条件的变化,该车间每月生产单位部件所耗费的工时不同,每月的生产量除供本月需要外,剩余部分可存入仓库备用。今已知半年内,各月份的需求量及生产该部件每单位数所需工时数如下表所示: 月份 k 1 2 3 4 5 6 月需求量bk 8 5 3 2 7 4 单位工时ak 11 18 13 17 20 10 设库存容量H = 9,开始时库存量为2, 期终库存量为0。 要求制定一个半年逐月生产计
6、划,使得既满足需求和库存容量的限制,又使得总耗费工时数最少。二、问题分析本文是一个生产销售贮存问题,目的是要求在满足题目要求的条件下制定生产计划使得总耗费工时数最少,并进一步对生产量进行优化,使得生产总成本尽可能达到最小。对于本文的生产模式,我们对此有三种理解:1、只要每月生产量在月末满足该月需求量即可;2、边生产边消耗,但要求每月底都要剩余一定数量的部件,以避免下月初因无部件而造成需求方停产。假设每月(第6个月除外)库存量不小于1,即不会造成停产;3、必须月初满足本月需求,如订购方月初提货,但因第一个月月初量并不满足一月需求,所以这种模式被排除。因此,我们将对前两种生产模式进行详细考虑。对于
7、优化指标,即在一定时期内,生产的成本费与库存费之和最小。生产成本费对应单位工时成本费,总耗费工时越多,生产成本越大;库存费对应单位库存成本费,生产量越大,超过市场需求量越多,库存量越多,库存费也越多。然而,单位工时成本与单位库存成本费未知,优化指标既与单位工时成本费用有关,又与单位库存量费用有关。我们力求找出单位工时成本费与单位库存量成本费之间的关系,以便统一量纲,方便优化生产量,使总成本最小。为此,在大方向上,尽量保持最小总耗费工时量浮动最小的前提下,进一步考虑是否能够通过折损一定的工作时间,即适当增加总工作时间使库存量尽可能减少,以达到优化指标与总耗费工时数同时最大程度上最小的目的。三、模
8、型假设根据实际条件及分析,作出如下假设:1、 每月需求量和单位工时数据固定,不受时间季节和市场行情等其他因素的影响而变动;2、 假设每月库存的一个部件为一个单位库存量,一个部件一个工时的成本费为单位工时成本费。由题目要求知总耗费工时是主导因素,即为成本的关键,因此设单位库存量成本费a个单位工时成本费(a<=5);3、 生产能力没有限制(相对需求量),即每天都有足够的产品供给需求,不允许缺货。4、 对于模式二,即边生产边消耗,要求每月底都要剩余一定数量的部件的情况。我们假设每月(第6个月除外)库存量不小于1,即不会造成停产四、符号系统aki: 第i月的单位工时bki: 第i月的需求量xi:
9、 第i月的生产量ri: 第i月的库存量rr: 总库存量ss: 总耗费工作时间p: 优化指标,即生产成本与库存费之和a: 单位工时成本费与单位库存费对应的比例值五、模型建立本文是有关生产存贮的一个线性规划优化问题。先根据已知数据在需求和库存容量的限制为约束条件下,确定目标函数建立线性规划模型,求出最优解。再根据优化指标,通过两种优化方案分别建立优化模型对目标函数值进行优化,最终求得优化后的最优解。模式一 每月生产量在月末满足该月需求量 (一) 模型的建立5.1 线性规划模型本文在月需求量和库存量的约束条件下,以最小总耗费工时数为目标函数,建立线性规划模型。令aki表示第i月的单位工时,xi表示第
10、i月的生产量,ri表示第i月的库存量,bki表示第i月的需求量,建立模型如下: 利用lingo软件,解得结果如下(一下lingo代码均见附录): Global optimal solution found. Objective value: 309.0000 Infeasibilities: 0.000000 Total solver iterations: 2 Variable Value Reduced Cost X( M1) 15.00000 0.000000 X( M2) 0.000000 5.000000 X( M3) 8.000000 0.000000 X( M4) 0.00000
11、0 0.000000 X( M5) 0.000000 3.000000 X( M6) 4.000000 0.000000 C( M1) 9.000000 0.000000 C( M2) 4.000000 0.000000 C( M3) 9.000000 0.000000 C( M4) 7.000000 0.000000 C( M5) 0.000000 7.000000 C( M6) 0.000000 0.000000 T( M1) 11.00000 0.000000 T( M2) 18.00000 0.000000 T( M3) 13.00000 0.000000 T( M4) 17.0000
12、0 0.000000 T( M5) 20.00000 0.000000 T( M6) 10.00000 0.000000 D( M1) 8.000000 0.000000 D( M2) 5.000000 0.000000 D( M3) 3.000000 0.000000 D( M4) 2.000000 0.000000 D( M5) 7.000000 0.000000 D( M6) 4.000000 0.000000由以上结果可以清晰看到,利用一般约束解得局部最优解,总库存量为rr=29,最小总耗费工时数为ss=309。但经分析,总库存量29过大,必然使得由于库存费而造成的成本大大增加。假设单
13、位库存成本为1,对应单位工时成本为a,则此时对于优化指标,即真实的总成本=总耗工时费+库存费:并没有达到最小,因此需要进一步优化。(二) 模型的优化针对根据一般约束解得的库存量过大的情况,需要寻求使得相对最小总耗费工时略微增大,但总库存量会明显减小的全局最优解。我们根据已经求得的待优化最优解作为已知量,提出两种优化方案,建立了以下两种优化模型:5.2.1 优化模型一 按比例分式优化模型根据最小总耗工时309和总库存量29,我们对总耗费工时数微调,使得总工时略微增大,库存量明显减少,保持约束条件不变,以库存量的减少量与总工时的增量的比值的最大值作为目标函数,可以降低库存费与生产成本费之和。假设s
14、s表示最小总耗费工时,rr表示总库存量,建立优化模型如下:利用lingo解得最优解:X( 1) 11.00000 X( 2) 0.000000 X( 3) 12.00000 X( 4) 0.000000 X( 5) 0.000000 X( 6) 4.000000 ss=317,rr=21 5.2.2 优化模型二 总成本费加和优化模型在满足总耗费工时最小的同时,我们通过优化尽量使得库存费最小,也就是建立目标函数令生产成本与库存费之和最小。假设1单位库存量成本费=a单位工时成本费。为此建立优化模型二:通过分析,a表示出单位工时成本与单位库存成本的关系,有利于将生产成本与库存费统一量纲,这对于在目标
15、函数中求解具有实际意义的。对于a的选取,由题目要求知总耗费工时是主导因素,也是成本的关键,若a的值过大,则库存费将占有优化指标即总成本费相当大的份额,为此,我们将a取在区间0,5,并分段对a进行讨论。利用lingo软件求解,最优解方案以下表一列出:表一 模式一下最优解分布表a0,0.91,3.53.6,44.1,5X115111111X20000X381253X40002X50077X64444总耗费工时309317366374总库存量292175(在每一种a的范围处所得最优解是同一种生产方案.)从结果中分析,我们的目的是适量增加最小总耗费工时,但力求使总耗费工时尽可能小的情况下,相对尽可能多
16、地减少总库存量。在a所取的所有范围中,我们清晰看到相比于其他区间,1,3.5内总库存量的减少量与总工时的增加量的相对比值最大,达到了我们所期望的要求,同时与优化模型一的优化方案结果相一致。而且a在1,3.5范围内时更为现实,符合题意以寻求最小总耗费工时为主要目标的环境条件。模式二 边生产边消耗,要求每月底都要剩余一定数量的部件(一) 模型的建立5.3 线性规划模型对于模式二,即边生产边消耗,要求每月底都要剩余一定数量的部件的情况。我们假设每月(第6个月除外)库存量不小于1,即不会造成停产。为此,在一般约束条件下,建立模型如下:利用lingo求得最优解如下:Global optimal solu
17、tion found. Objective value: 316.0000 Objective bound: 316.0000 Infeasibilities: 0.000000 Extended solver steps: 0 Total solver iterations: 0 Variable Value Reduced Cost BK( 1) 8.000000 0.000000 BK( 2) 5.000000 0.000000 BK( 3) 3.000000 0.000000 BK( 4) 2.000000 0.000000 BK( 5) 7.000000 0.000000 BK( 6
18、) 4.000000 0.000000 AK( 1) 11.00000 0.000000 AK( 2) 18.00000 0.000000 AK( 3) 13.00000 0.000000 AK( 4) 17.00000 0.000000 AK( 5) 20.00000 0.000000 AK( 6) 10.00000 0.000000 X( 1) 15.00000 11.00000 X( 2) 0.000000 18.00000 X( 3) 8.000000 13.00000 X( 4) 1.000000 17.00000 X( 5) 0.000000 20.00000 X( 6) 3.00
19、0000 10.00000 R( 1) 9.000000 0.000000 R( 2) 4.000000 0.000000 R( 3) 9.000000 0.000000 R( 4) 8.000000 0.000000 R( 5) 1.000000 0.000000 R( 6) 0.000000 0.000000 SS( 1) 316.0000 0.000000 RR( 2) 31.00000 0.000000最小总耗费工时ss=316,但总库存量rr=31.显然,库存量过大,需对一般约束下的最优解进行优化:以寻求相对ss略微增大,但rr(1)明显减小的全局最优解(二) 模型的优化5.4.1
20、优化模型一 按比例分式优化模型优化方法原理同模式一,以单纯考虑最小总工时的解得的库存量31的减少与总工时316的增量的比值的最大值作为目标函数,来寻求优化。建立优化模型如下: max=(31- ss)/( rr-316);得最优解 X1 12.00000 X2 0.000000 X3 11.00000 X4 1.000 X5 0.000000 X6 3.000000 ss=322,rr=25 。5.4.2 优化模型二 总成本费加和优化模型假设1单位库存量成本费=a单位工时成本费,以最小库存费和生产成本费之和为目标函数建立优化模型:同样地,我们将a取在区间0,5,并分段对a进行讨论。利用ling
21、o软件求解,最优解方案以下表二列出:表二 生产模式二下的最优解分布a0,0.91,2.93,3.53.6,4X112121212X20000X31111115X41100X50017X63333总耗费工时322322325367总库存量25252412每一种a的范围最优解时是同一种生产方案。且当aÎ3.6 , 4, 因一个库存量的费用相对一个工时的费用过大,不考虑。同模式一中优化模型二的分析,a在区间1,2.9内更现实。比较分析优化模型一和二,我们发现二者所得的最优解一致,即最优方案一致。六、模型分析由于模式一与模式二优化方法相同,因此我们仅对模式一的模型进行分析与进一步验证优化的合
22、理性。对于最初建立的线性规划模型所解得的局部最优解ss=309, 总库存量rr=29,我们采用lingo软件进行灵敏度分析,灵敏度分析表如下(lingo代码见附录):Global optimal solution found. Objective value: 309.0000 Infeasibilities: 0.000000 Total solver iterations: 2 Variable Value Reduced Cost 。 X( 1) 15.00000 0.000000 X( 2) 0.000000 5.000000 X( 3) 8.000000 0.000000 X( 4)
23、 0.000000 0.000000 X( 5) 0.000000 3.000000 X( 6) 4.000000 0.000000“Reduced Cost”列出最优单纯形表中判别数所在行的变量的系数,表示当变量有微小变动时, 目标函数的变化率。其中基变量的reduced cost值应为0, 对于非基变量 Xj, 相应的 reduced cost值表示当某个变量Xj 减少一个单位时目标函数增加的量(min型问题)。在本文中,由上表可以清晰看出,X2,X5作为非基变量,减少一个单位时,目标函数最小总工时分别增加5个单位和3个单位,显然,这对ss=309有较大影响,故不能变动。 进而我们以X2=
24、0,X5=0为附加约束条件,以最小库存量为目标函数:利用lingo程序求解得: Global optimal solution found. Objective value: 12.00000 Objective bound: 12.00000 Infeasibilities: 0.000000 Extended solver steps: 0 Total solver iterations: 0 Variable Value Reduced Cost X( 1) 11.00000 5.000000 X( 2) 0.000000 0.000000 X( 3) 3.000000 3.000000
25、 X( 4) 9.000000 2.000000 X( 5) 0.000000 0.000000 X( 6) 4.000000 0.000000由上灵敏度分析表可看出,若X1减少1,库存量rr增加5,X1对目标函数仍然有较大影响,故不能变动。最终再进而以X2=0,X5=0,X1=11为附加约束条件,以最小总耗费工时为目标函数,建立模型如下:调用lingo程序得最优解为: X1=11,X2=0,X3=12,X4=0,X5=0,X6=4总工时 ss=317.00000,总库存rr=21.000000以上我们通过对线性规划模型的灵敏度分析,进一步优化出最优方案,并且发现,运用灵敏度分析所得出的最优解
26、与优化模型一和优化模型二相一致,即最优方案一致。同时,也是从另一个角度验证了对所提出的两个不同优化模型的合理性。对于优化模型一,仅是通过总耗费工时与总库存的变化量的比例分式的最值来找出最优解,这种想法却不一定能够保证最小工时达到最小值。而对于优化模型二,我们根据实际情况对单位库存量成本费与单位工时成本费的比值a从0到5进行一定范围的取值,得出最优方案。在现实生活中,单位库存成本与单位工时成本一定存在这种比例关系,优化模型二中所建立的目标函数包含这种关系,因此该模型更具有说服力和可信度。七、模型推广本文所提出的优化模型适合用于各种生产贮存问题。通过查阅资料,我们发现在实际生产中,还会存在开机的固
27、有成本,这也与题中的“生产过少,成本增大”吻合;我们自然希望开机总费用越小越好,为此希望开机次数越小越好,若为0,则开机成本为0。经过分析,对于生产模式一,在6个月中每个月生产量必至多有3个为0,模式二至多有2个0,否则将不满足库存量小于等于9的条件;模式二至多有2个0,否则将不满足库存量小于等于9和月初至少为1的的条件。而这一结论恰好同我们优化后的最优解相吻合,所以,无论开机成本为多大,都不会影响我们最优的生产方案。尤其是在根据实际情况将a取2,即一单位工时成本对应2单位库存成本时,最优生产方案不会随开机固有成本而变化。该模型可见具有实际生产意义。八、结论本文是一个生产销售贮存的线性规划问题
28、,并根据最优指标进一步对生产量进行优化,使得生产总成本尽可能达到最小。对于生产模式一,即每月生产量在月末满足该月需求量。在需求和库存容量的限制约束条件下,以最小耗费工时为目标函数建立线性规划模型,利用lingo求得最优解,但该模型未考虑库存量对成本的影响,库存量越大,优化指标中的库存费也会随之增大。因此分别建立了按比例分式和总成本费加和两种优化模型。在优化模型一中,库存量的增量与总工时的减小量的比值的最大值作为目标函数,其他约束条件不变,以寻出相对最小总工时ss略微增大,但总库存量rr明显减小的全局最优解,求得最优方案为X1=11,X2= 0,X3= 12,X4= 0,X5= 0,X6= 4,
29、最小总耗费工时为317。优化模型二中,在满足总耗费工时最小的同时,我们通过优化尽量使得库存费最小,也就是建立目标函数令生产成本与库存费之和最小。并假设1单位库存量成本费=a单位工时成本费,根据实际条件对a取不同范围讨论,得出最优方案为X1=11,X2= 0,X3= 12,X4= 0,X5= 0,X6= 4,最小总耗费工时为317。可见结果与优化模型一结果相同。对于生产模式二,边生产边消耗,但要求每月底都要剩余一定数量的部件,以避免下月初因无部件而造成停产。同生产模式一的方法,假设每月(第6个月除外)库存量不小于1,首先建立线性规划模型,补充每个月(第6个月除外)的库存量大于等于1的附加约束条件
30、,利用lingo求出最优解,然后用优化模型一和优化模型二对其进行优化,最终两种优化方法求得结果一致,优化方案均为X1=12,X2= 0,X3= 11,X4=1,X5= 0,X6=3,最小总耗费工时为322。对于优化模型一和优化模型二的比较,后者的优点是根据实际情况对单位库存量成本费与单位工时成本费的比值a从0到5进行一定范围的取值,得出最优方案。在现实生活中,单位库存成本与单位工时成本一定存在这种比例关系,优化模型二中所建立的目标函数包含这种关系,因此该模型更具有说服力和可信度,且在现实生活中更具推广性。九、参考文献1 赵静,但琦 ,数学建模与数学实验 ,北京:高等教育出版社,2008;附录(
31、一) 生产模式一 1.1线性规划模型 lingo1.1代码:model:sets: month /1.6/:bk,ak,x,r ; s/1/:ss; l/2/:rr;endsets min=sum(month:ak*x);ss(1)=sum(month:ak*x);rr(1)=sum(month:r); r(1)=2+x(1)-bk(1); FOR( month(i) |i#ge#2 : r(i)=r(i-1)+x(i)-bk(i); r(6)=0; FOR( month(i) : r(i)<=9);data: bk=8 5 3 2 7 4; ak=11 18 13 17 20 10;e
32、nddata FOR( month : gin(x);1.2优化模型一 lingo代码:model:sets:month /1.6/:bk,ak,x,r ; s/1/:ss; l/2/:rr;endsetsmax=(29-sum(month:r)/(sum(month:ak*x)-309); ss(1)=sum(month:ak*x);rr(1)=sum(month:r); r(1)=2+x(1)-bk(1); FOR( month(i) |i#ge#2 : r(i)=r(i-1)+x(i)-bk(i); r(6)=0; FOR( month(i) : r(i)<=9);data: bk
33、=8 5 3 2 7 4; ak=11 18 13 17 20 10;TEXT( 'file.beishu.19.1')=s'总工时'ss,l'总库存'rr;enddata data:TEXT( 'file.beishu.19.2')=bk,ak,x,r;enddata FOR( month : gin(x);end 1.3 优化模型二lingo代码:model:sets: month /1.6/:bk,ak,x,r ; s/1/:ss; l/2/:rr;endsetsdata: beishu=?;enddatamin=sum(m
34、onth:ak*x+beishu*r); ss(1)=sum(month:ak*x);rr(1)=sum(month:r); r(1)=2+x(1)-bk(1); FOR( month(i) |i#ge#2 : r(i)=r(i-1)+x(i)-bk(i); r(6)=0; FOR( month(i) : r(i)<=9);data: bk=8 5 3 2 7 4; ak=11 18 13 17 20 10;TEXT( 'file.beishu.18.1')=s'总工时'ss,l'总库存'rr;enddata data:TEXT( '
35、;file.beishu.18.2')=bk,ak,x,r;enddata FOR( month : gin(x);end 1.4 对模型一的灵敏度分析lingo代码model:sets: month /1.6/:bk,ak,x,r ; s/1/:ss; l/2/:rr;endsetsmin=sum(month:ak*x); ss(1)=sum(month:ak*x);rr(1)=sum(month:r); r(1)=2+x(1)-bk(1); FOR( month(i) |i#ge#2 : r(i)=r(i-1)+x(i)-bk(i); r(6)=0;x(2)=0;x(5)=0;x(1)=11; FOR( month(i) : r(i)<=9);data: bk=8 5 3 2 7 4; ak=11 18 13 17 20 10;TEXT( 'file.14.1')=s'总工时'ss,l'总库存'rr;enddata data:TEXT( 'file.14.2')=bk,ak,x,r;enddata FOR( month : gin(x);end(二) 生产模式二2.1 线性模型规划lingo代码:model:sets: month /1.6/:bk,ak,x,r ; s/1/:ss; l/2
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 二零二五年度医疗影像复印机采购及维护服务协议3篇
- 2024版中央空调安装工程安全协议
- 二零二五年度土地承包经营权抵押贷款合同3篇
- 2025年度农村集体土地安置房买卖合同书范本3篇
- 2024版租车合同电子
- 2024年水电安装工程节能减排合作协议3篇
- 二零二五年度智慧社区管理系统建设合同协议2篇
- 二零二五年度海外汽车租赁代理销售合同3篇
- 2025年度航空航天发动机性能优化合同3篇
- 2024版纯净桶装水长期供应协议一
- 华为经营管理-华为市场营销体系(6版)
- 2023年中国育龄女性生殖健康研究报告
- 钢结构加工厂考察报告
- 发电机检修作业指导书
- 薪酬与福利管理实务-习题答案 第五版
- 废旧物资处置申请表
- GB/T 37234-2018文件鉴定通用规范
- GB/T 31888-2015中小学生校服
- 质量检查考核办法
- 云南省普通初中学生成长记录-基本素质发展初一-初三
- 外科医师手术技能评分标准
评论
0/150
提交评论