多台设备同时故障的最优维修次序.doc_第1页
多台设备同时故障的最优维修次序.doc_第2页
多台设备同时故障的最优维修次序.doc_第3页
多台设备同时故障的最优维修次序.doc_第4页
多台设备同时故障的最优维修次序.doc_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

题目: 多台设备同时故障的最优维修次序 参赛组号:参赛人1: 姓名 学院 班级 参赛人2: 姓名 学院 班级 参赛人3: 姓名 学院 班级 学校统一编号,个人不得填写论文编号: 多台设备同时出现故障时最优维修次序的优化设计一、摘要本文是关于降低企业在多台设备同时出现故障时的经济损失的设计问题,即生产中多台设备同时发生故障时的最优维修次序的优化,从而使得企业的经济损失降到最低。此题涉及到计算最小损失的问题,因此本文将实际问题转化为有条理的的数学数组函数模型,利用简单的数学运算求的最小损失下的设备维修次序。首先建立各函数间的关系式,建立最优数学模型。接着运用运筹学的排序方法一经济损失达到最小为目标函数进行最有排序。数学模型中的代数表达式比较复杂很难直接计算出所需的结果,因此将其进一步化简,得到比较简单的形式。经化简得知设备的维修次序对企业的经济损失的多少与设备的维修时间与停工造成的单位时间损失的比值有关。其比值越小,所对应的设备越靠前,企业的经济损失就越小。在只有一名工人维修时的的最优维修次序为2563147,此时最小损失额为199.9万元;当有两名工人同时维修时的最有次序为,第一名工人维修设备编号依次为237,第二名工人的维修次序为5614,此时的最小损失额为117.3万元。二、问题的提出在企业生产中避免不了因生产设备的故障而造成的经济损失,为了将经济损失降到最低,要求及时的对故障的设备进行维修,使其尽快投入生产,但如果发生多台设备同时出现故障时,由于维修工人的数量有限,就只能按照一定的次序维修,由于不同的设备停工给企业造成的经济损失不同,维修所需的时间不同,所以设备的维修次序很重要。不同的维修次序对企业造成的经济损失是不同的。因此,如果出现多台设备同时出现故障时,维修工人的数量少于受损失设备数量时,就要寻求一种最优的维修次序,把企业的经济损失降到最低。现有七台设备需要维修,分别求在一人维修和两人维修的最优排序,并且将设备增加到n台时,求在一人维修情况下的最有排序。三、问题的分析在一人维修的情况下应尽可能地先维修单位时间内造成损失大的设备,但由于维修时间的不同,维修单位时间内损失较大的设备所需的维修时间有的比较大。在维修该设备的时候,其他设备的损失也存在着,其维修的时间越长,企业总的经济损失也在逐渐的增加。因此应综合考虑设备的维修时间与单位时间内的停工损失。可以试图的将各种排序情况下所得的损失额进行排序,先两两进行比较,然后再加入新的排序情况下的损失金额进行比较,最后得出最优解 。四、模型假设与符号假设(1)每台设备能够在预定的时间内恰好完成维修;(2)每台设备在维修完后能即时的工作;(3)当一台设备维修完后能立即的进行下一台设备的维修;(4)在把所有的设备修好之前,已修好的设备不会再坏。i(i=1,2,3,4,5,6,7):设备的编号;m、n:均为随机的一设备的编号;A:第i台机器维修时间;B:第i台机器停工维修造成的损失为B;W:修第i台机器时当前损失额;:为0/1变量,;:机器的维修序号;W:总的损失额;五、模型的建立设各台设备的编号为i。由于每台设备所需的维修时间,以及每小时停工造成的损失已知,因此利用他们的数值进行运算。首先,将各数值转化为数学表达式,即各设备的维修时间用正数集合A表示,各设备的停工单位时间造成的损失金额用正数集合B表示。损失金额便为各台设备损失的总和。4.1多台设备同时出现故障且只有一人维修的模型。为此可以建立以下的数学关系式。W=AB*a, min W=W, 公式一可以转换成A矩阵(其中A、A、A、A、A、A、A处于变动之中,也就是循环7!=5040次循环)乘B矩阵(相应的B、B 、B、B、B、B、B也处于变动之中,也循环5040次)得到D矩阵,将D矩阵各行各列求和再求最小值,便得到最小损失,具体如下: A B*=D矩阵D矩阵各行各列求和如下:W=A*(B+B+B+B+B+B+B)+A*(B+B+B+B+B+B)+A*(B+B+B+B+B)+A*(B+B+B+B)+A*(B+B+B)+A*(B+B)+A*B例如:七台机器的维修次序为:1,2,3,4,5,6,7,七台机器修理过程的状态如下表:aaaaaaa11111110111111001111100011110000111000001100000010000000则:W=5*(0.6*1+1.8*1+1.2*1+0.8*1+0.8*1+1.7*1+1.0*1) =39.5,W=8*(0.6*0+1.8*1+1.2*1+0.8*1+0.8*1+1.7*1+1.0*1) =58.4, W=7*(0.6*0+1.8*0+1.2*1+0.8*1+0.8*1+1.7*1+1.0*1) =44.1,W=8*(0.6*0+1.8*0+1.2*0+0.8*1+0.8*1+1.7*1+1.0*1) =34.4,W=4*(0.6*0+1.8*0+1.2*0+0.8*0+0.8*1+1.7*1+1.0*1) =14,W=9*(0.6*0+1.8*0+1.2*0+0.8*0+0.8*0+1.7*1+1.0*1) =24.3, W=13*(0.6*0+1.8*0+1.2*0+0.8*0+0.8*0+1.7*0+1.0*1)=13,W=W+W+W+W+W+W +W=227.7,公式一可以转换成矩阵,如下:*=D矩阵D矩阵各行各列求和如下:W=5*(0.6+1.8+1.2+0.8+0.8+1.7+1.0)+8*(1.8+1.2+0.8+0.8+1.7+1.0)+7*(1.2+0.8+0.8+1.7+1.0)+8*0.8+0.8+1.7+1.0)+4*(0.8+1.7+1.0)+9*(1.7+1.0)+13*1.0=227.7利用Microsoft Visual Studio 2008编程对7台机器进行最优排列以验证上述算法正确性,程序见附录1,程序运行结果如下:六、模型的简化与求解将设备m与设备n的维修次序交换当时, 即由此可知W的大小与的大小有关,值越大,设备i越靠前,W便也越大。令不难发现所以可得下表i1234567587849130.61.81.20.80.81.71.08.34.45.81055.313先取设备1、2比较 设备的最佳维修次序为 2、5、6、3、1、4、74.2多台设备同时出现故障时,有两名工人进行维修的最优解的求解。由第一个问题的求解过程可知W的大小与的大小有关,值越大,设备i越靠前,W便也越大。即:.无论有多少人在维修因此可以直接运用该结论。与第一问不同的是此次修理由两个工人完成,且他们独立的进行修理。具体模型如下所示。起初 附录附录1#include stdafx.h#include#include#include#define N 10void swap(int *a, int *b) int m; m = *a; *a = *b; *b = m; double T8=0,5,8,7,8,4,9,13;double C8=0,0.6,1.8,1.2,0.8,0.8,1.7,1.0;double minval=655350;double resultN;int total=0;void perm(int list, int k, int m) int i; if(k m) /得到了维修一个排列double ANN;double BNN,DNN;/产生A/printf(nA=n);for(int i=0;i=m;i+)for(int j=0;ji;j+)Aij=0;/printf(%4.0f,0);for(int j=i;j=m;j+)Aij=Tlisti;/printf(%4.0f,Aij);/printf(n);/产生B/printf(nB=n);for(int i=0;i=m;i+)Bi0=Clisti;/printf(%6f,Bi0);for(int j=1;j=m;j+)Bij=0;/printf(%6.2f,Bij);/printf(n);/计算D=A*Bdouble v=0;/printf(nD=n);for(int i=0;i=m;i+)v=0;/getch();for(int j=0;j=m;j+)/printf(n i=%4d, j=%4d ,Aij=%6f Bj0=%10lf, v=%10lfn,i,j,Aij,Bj0,v);v+=Aij*Bj0;Di0=v;/printf(%6.2lf,Di0);/printf(n);v=0;for(int i=0;i=m;i+)v+=Di0;/printf(nv=%6lf,v);if(vminval)minval=v;for(int i=0;i=m;i+)resulti=listi;/* for(i = 0; i = m; i+) printf(%d , listi); */ /printf(n); else for(i = k; i = m; i+) swap(&listk, &listi); perm(list, k + 1, m); swap(&listk, &listi); void test()int n=7;/输入的数据总数,坏了的机器总

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论