数学建模(工件加工排序)

合集下载

【经典】建模-组合优化模型-排序

【经典】建模-组合优化模型-排序
设有n个工件需要在机床A、B上加工,每个 工件都必须先经过A而后B•两道加工工序。 以ai、bi分别表示工件i(1≤i≤n)在A、B上的 加工时间。问应如何在两机床上安排各工 件的加工顺序,使在机床A上加工第一个工 件开始到在机床B上加工完最后一个工件为 止,所用的加工总时间最少?
分析:
加工工件在机床A上有加工顺序问题,在机
排序问题
排序问题
排序问题指n 种零件经过不同设备加工时 的顺序问题。其目的是使加工周期为最短。
分类:
单台机器的排序问题
单件作业(Job-shop)排序问题: 工件的加工路线不同
多台机器的排序问题
流水作业(Flow-shop)排序问题: 所有工件的加工路线完全相同
n × 2 排序问题
即n 种零件经过2 种设备进行加工,如何 安排?
床B上也有加工顺序问题。可以证明:最优 排序方案可以只在机床A、B上加工顺 序相同的排序中寻找。即使如此,所有
可能的方案仍有n!个,这是一个不小的数, 用穷举法是不现实的。
问题:
如何用动态规划方法来研究同 顺序两台机床加工N个工件的 排序问题?
动态规划求解
最优排序方案:尽量减少在B上等待加工的 时间,使总加工时间最短。
最优化原理:作为整个过程的最优策略具有这样的 性质:无论过去的状态和决策如何,相对于前面的决 策所形成的状态而言,余下的决策序列必然构成最优 子策略。”也就是说,一个最优策略的子策略也是最 优的。
n × 1 排序问题
即n 种零件经过1 种设备进行加工,如何安排?
例一、
零件代号
j1
加工时间(t) 3
动态规划中能 处理的状态转移 方程的形式。
动态规划方法的关键在于正确地写出基本的递推 关系式和恰当的边界条件(简称基本方程)。要 做到这一点,就必须将问题的过程分成几个相互 联系的阶段,恰当的选取状态变量和决策变量及 定义最优值函数,从而把一个大问题转化成一组 同类型子问题的求解中, 均利用了它前面的子问题的最优化结果,依次进 行,最后一个子问题所得的最优解,就是整个问 题的最优解。

工件加工排序问题

工件加工排序问题

工件加工排序问题2009-01-09 17:36工件加工排序问题问题摘要:本文是经典计划排序问题中的车间作业问题,研究n个工件在m台机器上有序的加工问题。

根据所提的问题及文中所给的有关数据表,我们分别采用了不同的解法。

(1)第一问为n(在此为12)个工件在一台设备(车床)上加工问题,(1.1)这里我们使用lingo8.0求解(源代码见附录1)得最优工件加工的顺序为:6每个工件在车床上加工的结束时间分别为:车床 2.5 5.8 9.0 12.6 13.5 16.3 20.3 22.0 23.2 25.9 28.4 33.1等待和加工的总时间为:171.9000(1.2)这问工件要在它们要求的时间内完工,选择加工工件的种类及加工的次序,使得整个选择加工的工件价值最大。

我们采用贪心算法(源代码见附录)求得结果:选择的加工工件和加工次序为:整个选择的加工价值为:117总的加工时间为P=27.2(2)第二问为12个工件在两台设备上加工问题,我们使用johnson算法,(源代码见附录2)求得最优工件加工的次序为:每个工件在车床,钻床机上加工的结束时间分别为:0.9 2.1 3.8 6.3 9.0 11.8 15.4 18.7 22.7 27.4 29.9 33.15.4 7.2 11.7 14.2 17.2 21.2 25.0 27.5 29.7 31.6 33.3 34.6最小时间为:34.6(3)第三问为n(在此为12)个工件在三台设备(分别为车床,钻床和铣床)上加工,我们使用CDS算法(源代码见附录2),求得最优工件加工的次序为:每个工件在车床,钻床,机上加工的结束时间分别为:车床 1.2 3.7 4.6 7.4 9.1 11.8 14.3 18.3 21.6 26.3 29.5 33.1钻床 3.0 5.4 9.9 13.9 18.4 21.4 23.9 26.1 28.6 30.5 31.8 34.0铣床 5.5 9.1 11.9 16.9 19.4 23.2 25.0 27.4 29.4 31.2 32.8 35.3加工过程状态图,其中黑色表示等待:最小时间为:35.3关键字:Johnson算法 CDS算法(启发式算法)贪心算法工件加工排序问题重述:(一)12种工件都在车床上加工,车床一次只能加工一种工件,根据文中所给表(1)求:1)在不考虑工件的完工时间和工件的价值的条件下,使得完成这批工件加工任务所需的总时间最省的工件加工的次序。

关于零件加工排序问题的数学模型、

关于零件加工排序问题的数学模型、

零件的加工排序的最优模型摘要:根据问题“建立模型求出使总加工时间最短的加工顺序”可知,本题为建立最优化模型,求出零件加工时间最短的加工顺序。

本题根据已知数据,结合问题中的具体要求,我们引入0/1变量建立工件排序的数学规划模型。

借助Lingo软件进行求解运算,得出其中的最优排序方案。

使得完成这批工件加工任务所需要的总时间最省。

在这里,我们通过对各个工件(排序后)完成某项特定工序所需总时间进行求和得到整个加工任务所需要的总时间。

而各工件的总时间包括其机床加工时间和加工其他零件时的等待时间。

最后,根据我们建立的模型求解得出某塑料厂加工十个零件模型所需最短总加工时间为943分钟,总加工时间最短的加工顺序为:4-5-10-7-8-2-9-1-6-3,具体结果如表6-1,6-2。

一、问题重述某塑料厂要加工十个零件模型(编号为1,2,…,10),这些零件模型必须依次通过3个设备C1,C2,C3,每个设备一次只能加工一个零件,其加工时间如下表(单位:分钟)。

二、问题分析零件在C1工序上的总加工时间是固定的。

关键是在C2及C3工序上会出现等待。

如果采用不同序加工,那么在C1上已加工好的零件,在C2上加工的时间会落到在C1上比其后加工的零件的后面,则其在C2上等待的时间更长,同样在C2与C3工序上也是这样,要求加工时间最短的加工顺序,就必须尽量减少工件在C2及C3工序上的等待时间,由于工件必须在它们要求的时间内完工,即某工件在任务开始起到该工件加工完毕之间所用的总时间应少于该工件的规定完工时间。

所以要使整个加工任务的工件总价值最大,必须合理选择加工工件的种类及其加工的次序。

三、模型假设假设一:在后面的模型中,我们都假定了忽略工件在转换工序时的运输时间。

即将整个工件加工过程简化为一个连续的过程,只考虑机床在加工工件时其他工件的等待时间。

假设二:零件之间是相互独立的,从生产的角度看,先加工一个零件并不影响对后面零件的加工。

数模工件排序问题

数模工件排序问题

工件排序问题摘要本文对于实际生产中工件的优化排序问题进行了探讨。

问题一要求给n种零件在两台设备上加工进行最佳的排序,并且使得加工顺序相同。

我们采用了较为成熟的约翰逊算法,得到对20个工件排序的结果:总的加工延续时间为206s,工件加工顺序为:17→19→18→8→15→6→7→3→5→1→16→12→11→20→13→2→10→9→14→4问题二针对三台机器的情况,我们使用了Palmer法以及C D-法两种启发式算法,计算复杂度较小的情况下得到了近优解。

然后,我们又采用优化模型,找到各工件在加工过程中加工时间和总时间之间的联系,求得各工件的加工总时间。

最后建立目标函数,得到最优解:当15n=时,总的加工时间为184s,工件加工顺序为:2→3→1→4→5→6→12→7→8→9→10→11→15→13→14 当20n=时,总的加工时间为197s,工件加工顺序为:5→8→11→1→2→6→12→3→14→16→15→17→4→18→19→10→20→13→9→7关键词:工件排序约翰逊法Palmer法C-D法优化模型一、 问题重述(略)二、 问题分析针对问题一,给n 种加工顺序相同的零件在两台设备上加工进行排序。

我们找到了一种解决相应问题的约翰逊算法,可以得到最优的排序方案以及总加工时间的最小值。

问题二中,我们针对实际生产中的工件排序问题,并且考虑到经济效益,即使不能给出最优解,得出算法小、效果较好的近优解也是不错的选择。

于是我们采用了多种启发式算法,分析比较其优缺点。

同时,考虑到此题完全可以转化为优化问题来解决,因此我们希望根据各工件在加工过程中加工时间和总时间之间的联系,寻求各工件加工总时间的具体算法。

再利用Lingo 软件进行求解模型,得出工件的最优排序。

三、符号说明()i M 第i 台机器n工件数ij t 第i 个工件在第j 台机器上的加工时间:()j iX i 工件在()j M上加工所需时间j iMi 工件从任务开始时刻起到完成()j M道工序为止所需要的总时间四、模型建立及求解问题一4.1 约翰逊(Johnson )算法如何安排工件的加工顺序,使总的加工延续时间最短,解决这类优化排序问题的方法,是首先在全部额定工时中找出额定工时最小者。

数学建模工件的加工次序问题

数学建模工件的加工次序问题

? 最终求解模型,结果如下: ? (1) 加工顺序为
4→10→9→7→11→5→3→8→6→1→2→14→12→13 时, 各工件的完工时间和最小,为 2588。
? (2) 加工顺序为 4→7→11→10→9→5→3→8→6→2→1→14→12→13 时, 机床花费的总时间最小,为 114。
? (3) 加工顺序为 4→7→11→10→5→9→3→8→6→1→2→14→12→13 时, 总补偿费最小,为 142.42。
问题重述与分析
? 现有14件工件等待在一台机床上加工,某些工件的加工必 须安排在另一些工件加工完工以后才能开始,第j号工件的 加工时间tj及先期必须完工的工件号i由下表给出。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
件号 j
tj
20
28
25
16
42
12
32
10
24
20
40
24
36
16

5,7,
10,1 3,8,
Z
—机床花费的总时间
2
?
Z
—加工时的总补偿费
3
? wij —表示从节点 i(表示加工工件i)到节点j(表示加工工件 j)的准备
时间。
? xij—是0-1变量,表示是否选取直接从加工第 i号工件接替到加 工第j号工件这一顺序
?
0 ,表示选取了从加工 i号工件到加工 j号工件的顺序
?
x ij ?
{ 1
,表示不选取从加工 i号工件到加工 j号工件的顺序
j 1 2 3 4 5 6 7 8 9 10 11 12 13 14

数学建模 - 第九章 排序问题

数学建模 - 第九章 排序问题

第九章 排序问题
Definition 1 对于一个可行排序,如果有准备好被加
工的任务或工序,不准有空闲的处理机,称这种可行排
序为无耽搁排序(nondelay schedule);否则称为耽搁排 序(delay schedule)。 无耽搁排序相当于有工作可做就不能闲着. 对于 大多数排序问题,包括所有的可中断排序,最优排序
而从事这一领域研究的人与日俱增,其内容也越来越
丰富,应用也越来越广泛.
第九章 排序问题
确定性排序 (Deterministic Scheduling) 所有数据在进行决策前都是已知的 随机性排序 (Stochastic Scheduling) 有的数据在进行决策前是未知的,是随机变量,
但它们的分布是已知的
如果每道工序的加工时间减少1,最优时间表会
小于 31 吗?是 26 吗?
工 序 紧前工序 加工时间 工 序 紧前工序 加工时间
A B C D E
P1 P2
—— A A,E —— D
A
D E FG 0 1 3 4 5 7
7 6 6 1 2
B
C 13
F G H I J
J H
20
D F
E,G E,G B,C
的机床上加工,但每个零件在每个机床上的加工时间
可能不同 . 如何按排加工顺序才能以最短的时间加工
完所有的零件 .
这是一个流水线排序问题 .
第九章 排序问题
Example 2 进程调度
在计算机多道程序操作系统中,并发执行多个进 程,任何时刻CPU只能执行一个进程,进程的到达时 间是不同的,怎样调度这些进程才能使CPU的利用率
B C J
0 2 456
1415

数学建模-圆盘内零件排序

数学建模-圆盘内零件排序

圆盘内零件排序问题摘要:1957年,人类第一颗人造地球卫星在拜科努尔发射场被发射上地球轨道,苏联于1961年4月12日实现了首次载人航天.从此人类便开始了漫长的太空探索。

在中国第一颗人造地球卫星“东方红”一号上天之后,当时的国防部五院院长钱学森就提出,中国要搞载人航天。

1999年11月20日,中国第一艘无人试验飞船“神舟”一号起飞,并成功着陆,接着“神舟”二号,三号,四号相继发射成功.在2003年10月15日9时,我国自行研制的“神舟”五号载人飞船也顺利完成任务。

航天技术被广泛应用于军事侦察和地球资源勘测,以及进行临时性的天文观测和发展航太医学。

航天飞船一般是由轨道舱、返回舱和推进舱三部分组成,推进舱位于飞船的尾部,形状像一个圆筒,主要用于飞船的姿态控制、变轨和制动,因此,在零件的生产和组装过程中对工艺的要求非常高.飞船尾部中一套设备由不同的由24个零件组成,设备的24个零件均匀分布在等分成六个扇形区域的一个金属圆盘的边缘上,零件的排序不仅要是每个区域内的质量之差尽可能小,以保持整个尾部的平衡,而且相邻零件之间体积差距越大越好.本文对此问题建立了三个优化模型,并给出了相应算法,首先由质量约束,以相邻区域质量差最小为目标得出最优方案,再加以各零件的体积约束进行修正,最后对零件质量体积进行灵敏性分析.模型Ⅰ:针对问题一,建立了模型,采用0-1规划模型,引入0-1变量:若第i号(i=1,2,…,24)零件装在第j号区域则C ij=1,否则C ij=0.由于每个零件只能放入一个区域,一个区域只能放4个零件,再结合相邻区域质量差小于4这三个约束条件,再以相邻区域间质量差的总和最小为目标函数,然后用lingo8.0无限制版解出这些变量。

.模型Ⅱ:针对问题二,考虑到不光对区域间质量有约束,而且相邻零件之间体积也有约束,所以问题转化为一个圆盘上24个零件的排序问题,所以将圆盘划分为24个区域,沿用模型Ⅰ的思想,再加上体积约束进行修正,得到模型Ⅱ.即在保证质量最优的前提下加入对各零件的体积约束,限定大于3,用Lingo软件实现.模型Ⅲ:建立方差分析模型,根据给出的数据,分析分布特征,分成两组,用方差分析对数据进行调整,并求出调整范围。

高教社杯数学建模竞赛车间生产机械零件的排版优化

高教社杯数学建模竞赛车间生产机械零件的排版优化

高教社杯数学建模竞赛车间生产机械零件的排版优化在当今工业制造领域,机械零件的排版优化是一个至关重要的问题,特别是在车间生产环境中。

高教社杯数学建模竞赛就是一个为学生提供锻炼机会的评台,而其中关于车间生产机械零件排版优化的题目更是贴近实际,有着广泛的应用场景。

本文将从深度和广度的角度出发,探讨车间生产机械零件排版优化的相关问题,并给出一些个人观点和理解。

1. 车间生产机械零件排版优化的意义车间生产机械零件排版优化是指在有限的空间内,合理布置机床和工件,以达到生产效率的最大化。

优化排版能够有效利用空间,节约生产成本,提高生产效率,减少生产浪费,对实际生产具有重要意义。

2. 理论基础和数学模型在车间生产机械零件排版优化中,数学建模是至关重要的。

可以利用数学方法对车间布局、工序安排和机械零件的排版进行建模和优化。

可以借助图论、线性规划、整数规划等数学工具,对车间布局进行优化;可以利用动态规划、贪心算法等技术,对工序安排进行最优化;还可以运用集合覆盖、遗传算法等方法,对机械零件排版进行优化。

3. 实际应用和挑战在实际应用中,车间生产机械零件排版优化面临着诸多挑战。

车间空间有限,机床种类繁多,零件尺寸各异,工艺要求复杂等因素都会增加优化的难度。

排版优化需要考虑到生产环境的实际情况,如交通流线、物流通道、安全防护等因素,这也增加了优化的复杂性。

4. 个人观点和理解对于车间生产机械零件排版优化,我认为应该综合考虑空间利用率、生产效率、成本控制和安全性等多个因素,采用多种数学建模和优化方法,寻找最优的排版方案。

还应结合实际生产情况,制定相应的管理策略和技术方案,确保排版优化能够落地生根,为企业的生产提供更大的价值。

总结回顾:在本文中,我们从深度和广度的角度对高教社杯数学建模竞赛中关于车间生产机械零件排版优化的问题进行了探讨。

我们首先阐述了排版优化的意义,指出了其在实际生产中的重要作用;其次介绍了理论基础和数学模型,指出了数学建模在排版优化中的重要性;然后探讨了实际应用和挑战,指出了排版优化面临的诸多挑战;最后共享了个人观点和理解,提出了采用综合考虑和多种优化方法的建议。

工件加工的排序优化问题

工件加工的排序优化问题
工件从任务开始时刻起到完成钻床工序止所需要的总时间包括该工件完成车工序的时间,等待上一 个工件加工完的时间(即从该工件在车床加工完毕时刻起到其上一个工件在钻床上加工完毕这一段 时间) ,该工件在钻床上加工的时间。建立数学模型求解。
问题三四也都是将问题一二进行推广,因此只需将相应的数据用变量代替即可。
摘要
众所周知,对于一个加工企业而言,如何在最短时间内完成加工任务,是一个企业 提高竞争力和利润的关键。 本文就是一篇关于工件加工的排序优化问题, 即在给定的数据和做出符合实际生产 的条件下,合理的安排工件的加工顺序,使加工的效率或所获得的利润等指标达到最大 值。 问题一是在零件只加工一次, 如何合理安排加工顺序, 使得完成这批工件加工任务 所需的总时间最省或总价值最大。为此,我们引入了一个 0-1 变量表示加工工件的顺序 和工件的种类,求出该变量,即可得到在不同情况下加工顺序,然后对结果进行分析, 计算结果唯一(实际可能不唯一) 。问题一的一二问安排如下: 1)工件的加工顺序为 6-3-9-10-7-5-1-2-8-11-4-12 此时总时间最少,为 171.9 工件的加工时间为 33.1 2)在时间充足的情况下,总价值最大为 117,工件的加工顺序如下 9 1 12 3 7
12
min W = ∑ sj
j =1
约束条件:
n s sj = {sjti− ++ jnj ti t≥≤ js−j 1 1 s1 = t1 + n1 1 i −
i j =1
1
ti = ∑ bj nj = ∑ yijmi
j =1
12 12
12
因为不要求每一种工件都加工,所以 ∑ yij ≤ 1, ∑ yij ≤ 1
i =1 j =1

机床任务分配问题数学建模

机床任务分配问题数学建模

机床任务分配问题数学建模任务分配到机床摘要本⽂解决的是机床⽣产调度的问题,⽬的是使产品加⼯路径的组合优化。

对于本⽂所研究的机床任务的合理调度问题,由于⽣产⽅式的不确定,我们根据A,B,C,D这4道⼯序是否有序进⾏了分类研究,并分情况得到了最优解或近似最优解,制定出了不同情况下的合理调度⽅案。

对于问题⼀:在⼯序⽆序的情况下,问题转化为⼀个指派问题,以完成任务耗时最长的那台机床的运⾏时间作为指标,以该指标最⼩作为⽬标函数,建⽴了⼀个0-1整数规划模型,⽤Lingo求解得最短加⼯时间为233h各机床加⼯时间的均衡度为3.8%。

在⼯序有序的情况下,问题⼀转化为⼀个柔性作业车间调度问题,此时⽣产调度的任务就是:确定产品的加⼯路径和每⼀⼯序的加⼯开始时间,并使产品通过系统的时间(Makespan)最⼩。

运⽤遗传算法建⽴模型,绘制出最佳调度的⽢特图,并得到加⼯时间的近似最优解为250h,各机床加⼯时间均衡度为1.6%,均衡度很⾼;与⽆序情况所得最优解相⽐,其近似度为92.7%,具有较好的有效性。

对于问题⼆:在⼯序⽆序的情况下,该问题仍为⼀个指派问题,在加⼊调度费⽤与运⾏费⽤的条件下,我们利⽤理想点法将这两个指标的双⽬标问题转化为单⽬标规划模型来进⾏求解,建⽴了⼀个0-1整数规划模型,⽤Lingo求解得加⼯时间为510h,总费⽤为1784600元。

在⼯序有序的情况下,我们运⽤蚁群算法建⽴模型,经过选⼯序,计算加⼯⼯序k的机床的空闲时间段和加⼯序列,计算可选⼯序的EAPT和信息素的积累等过程,得到加⼯时间为441h,总费⽤为1799000元。

为了进⼀步分析该算法的有效性,我们还进⾏了实例规模较⼤的计算机仿真试验。

我们在模型的改进和推⼴⾥对模型四提出了⼀种评价⽅法,⼒求使⼀群算法的精度进⼀步提⾼,以实现更⼤规模的应⽤。

关键词:指派问题柔性调度理想点法遗传算法蚁群算法1.问题重述1.1问题背景车间⽣产调度是制造系统的基础,⽣产调度的优化⽅法是先进制造技术的核⼼技术。

数学建模(工件加工排序)

数学建模(工件加工排序)

完成时间 T i 0.9 2.1 3.8 6.3 8.8 11.5 14.3 17.5 20.8 24.4 28.4 33.1 总计:171.9
-5-
2) 分析:由于工件必须在它们要求的时间内完工,即某工件在任务开始起到该工件加工完
毕之间所用的总时间应少于该工件பைடு நூலகம்规定完工时间。 所以要使整个加工任务的工件总价值最 大,必须合理选择加工工件的种类及其加工的次序。 引入 0-1 变量,若选择 i 工件加工,则记 Y i =1.否则记 Y i =0; 工件的排序算法同问题 1) ,但约束条件有所不同。在本题中,12 种工件不一定都可以入选 到最优加工序列中(即目标排序中可能出现工件空缺) ,所以
Lingo 程序: (wenti(2).lg4 文件) model: !考虑完工时间和工件价值的排序问题; sets: gongjian/g1..g12/:shijian,endtime,gj_value; ! 属性为原始排序下各个工件的机床加工时间, 完工时间,工件价值; shunxu/s1..s12/:time,overtime,fin_value; ! 属性为重新排序后各个工件的机床加工时间,完 工时间,工件价值; links(shunxu,gongjian): note; endsets !目标函数; max=@sum(shunxu(I):fin_value(I)); !从新排序后各工件的机床加工时间(可能为零,即表示未选中工件); @for(shunxu(I): time(I)=@sum(gongjian(J):shijian(J)*note(I,J))); !从新排序后各工件的完工时间(可能为零,即表示未选中工件); @for(shunxu(I): overtime(I)=@sum(gongjian(J):endtime(J)*note(I,J)); ); !从新排序后各工件的工件价值(可能为零,即表示未选中工件); @for(shunxu(I):

数学建模-零件加工

数学建模-零件加工

零件加工【摘要】本文解决的是计划作业问题中的车间作业问题,分析了工序安排的最小平均时间和最大工件价值在不同约束条件下的建模环境,运用了冒泡法,并在化整为零的思想上引入了0/1变量,分别建立了有限源“单队——单服务台”以及有限源“单队——多服务台”串联的线性规划模型。

在目标函数的选择上我们充分考虑了目标的全面性、独立性和易获取性。

借助lingo软件进行求解运算,得出其中的最优排序方案,实现工件加工任务的平均时间与总工件价值最优。

针对问题一:在不考虑完工时间和工件价值限制的基础上,分析了平均时间与其主要影响因素(零件加工时间和等待时间)之间的关系,通过冒泡法运用C++进行编程,得到10个零件在车间加工的最优排序为T=10.82h。

3—5—1—10—7—6—4—2—8—9,最小平均时间为针对问题二、三:由于这两题模型相似,其差异在于目标函数与约束范围的选取,因此我们运用lingo软件实现了在完工时间的限制下,对于不同的目标函数建立的线性规划模型的求解,得到第二题的最优排序为:T=12.32h;第三题的最优排3—5—2—9—10—1—7—6—4—8,其平均时间为T=6.61h。

序为:5—7—3—8—1—10—4,其平均时间为针对问题四、五:由于第四题是第五题的特殊情况,因此我们只需要在第四题模型的基础上进行推广即可得到第五题的模型。

经过分析我们发现这两题的模型基本一致,可以归结为:n个零件在车间待的总时间为各个零件从一开始到其在第m台机床上完成加工的时间和。

利用lingo软件编程可得第四题的最优排序T=13.41h。

为:5—3—1—6—10—9—7—2—8—4,其平均时间为关键字:冒泡法线性规划化整为零 0/1变量最优排序一、问题重述计划作业问题中的车间作业问题是一个具有一定实际研究价值与应用价值的数学建模问题,它主要研究的是n个零件在m台机器上的有序加工问题。

在该问题中每一个零件都具有自己的“加工时间”、“完工时间”以及“工件价值”,需要我们构建模型,将各个零件的加工顺序进行排列,以求得平均加工时间亦或是工件总价值的极值问题。

工件加工的排序问题

工件加工的排序问题

工件加工的排序问题摘要作为经典排序问题的推广, 处理机的排序问题具有广泛的实际背景.对于目标函数是极小化排序时间表长度的情况,可以采用启发性的搜索方法。

此文中根据所提的问题采用了局部搜索方法,对问题进行描述与解答,力求通过局部搜索问题的最优解或近似最优解。

第一问的第(1)小问,为单机排序问题,利用SPT 规则,按工件加工时间长短,从短到长顺序排列,可使平均流程时间最小。

这种方法又称“最短加工时间规则”。

应用SPT 规则,可减少加工其它零件时它们的等待时间的和。

得到的最优总时间为171.9h ,加工次序为:639710512811412J J J J J J J J J J J J -----------或者 6391075128114J J J J J J J J J J J J -----------第一问的第(2)小问,要求规定的完工时间内,选择完成工件,使获得的价值量最大。

很容易可以得到,最优解的加工次序必然可以通过调换得到工件的完工时间先后的顺序一致。

从而建立一个0-1规划模型,求得最优解MAX U =117,选择的工件和加工次序为:8114610731219J J J J J J J J J J ---------第二,三问中要求工件的加工顺序使得加工工件的总时间最短。

加工工件的总时间等于每个工件的加工时间与加工其他工件时它的等待时间的和。

而问题中的工件的加工时间是一定的,因此问题可以转化为求等待时间的最小。

建立等待时间的目标函数,把工件按在第一台机器的加工时间的升序进行一个重新排列,得到的新序列,通过局部的交换工件的次序,再比较等待时间,若时间段则继续进行迭代,否则继续交换工件的加工次序,直到所有的工件的顺序交换完为止。

这样可以得到第二问的总加工时间的最优值为:225.6 h 。

工件加工的总周期为:35h 。

加工次序为:121189415103726J J J J J J J J J J J J ----------- 第三问的总加工时间的最优值为:242.5 h 。

排序模型一台机器上加工n种零件定义1零件的滞留时间=等待

排序模型一台机器上加工n种零件定义1零件的滞留时间=等待

排序模型
一、一台机器上加工n种零件
定义1零件的滞留时间=等待加工时间+加工时间
定义2 平均滞留时间M t=各零件滞留时间的总和/零件个数
例1车间有一台机床,计划加工6个零件,每个零件加工完毕后立刻到下一道工序上加工,但尚未加工的零件必须等待正在加工的零件加工完毕后,才能到机床上加工。

相关数
现在要确定各零件的加工顺序,使各零件在该机床上的平均滞留时间最短。

推广开来,若有n个零件,各零件的加工时间分别为J1,J2,…,J n,则=[J1+(J1+J2)+…+( J1+J2+…+J n)]/n
=[nJ1+(n-1)J2+…+2 J n-1+ J n]/n
要使M t尽可能小,应J1≤J2≤…≤J n,即排序原则为:加工时间小的零件先加工。

于是原问题的最优加工顺序为:3,6,2,5,1,4。

零件i的总耗时=零件i件数×零件i每件加工时间+零件i准备时间
二、在两台机器上加工n个零件
一批零件依次在两台机器上加工,这批零件在第一台机器上加工的顺序必须与在第二台机器上加工的顺序相同,且均应先在第一台机器上加工,然后才能在第二台机器上加工。

例2 设有5个零件,按工艺要求必须先在机床上切削,再在钻床上打孔,加工时间如。

数学建模案例工件的安装与排序

数学建模案例工件的安装与排序

工件的安装与排序问题王晓楠,崔超,陈涛(中国矿业大学,徐州221008)摘要:本文首先深入分析了组合优化的特点,然后针对本题中设备对工件排血安装时的重量约束和体积约束的特点,就题目中提出几个问题分别设计了不同的算法,通过不同的算法的优劣的比较,不仅较好的解决了工件的排序安装问题,还得出了问题中算法设计的一些根据。

在问题1中,我们引入了贪心策略和自适应方法对搜索算法进行改进,大大减小了搜索的规模得到了一种效率和性能都不错的搜索算法,另外还针对数据的特点给出了一种操作简便的简化算法,通过两种算法的比较得出了一些有用的算法设计结论。

在问题1的算法设计过程中我们还适当的引入了一些理论证明,使算法更加有说服力,最终通过MATLAB软件得出了令人满意的结果,有力的证明了算法的可行性。

在问题2中将问题1的算法进行综合,然后分别从不同的出发点提出了两种算法,一种是适用性较强但不易实现的解析算法,另一种针对数据特点的较简便的针对性算法,并比较了两种算法各自的适应性,简便的求出了第二组数据的排序结果,并得出第一组数据无解的结论。

问题3根据前面的结论,如果只考虑重量,分析了两种相临扇区总重量差最大的情况,通过数学分析得出工件调整幅度,如果还要考虑体积因素,通过对工件的贪心选择,不断修正工件重量和体积,筛选出满足条件的工件组合。

我们在论文的最后还给出了模型的评价和推广。

一问题重述某设备由24个工件组成,安装时需要按工艺要求重新排序。

Ⅰ.设备的24个工件均匀分布在等分成六个扇形区域的一圆盘的边缘上,放在每个扇形区域的4个工件总重量与相邻区域的4个工件总重量之差不允许超过一定值(如4g)。

Ⅱ.工件的排序不仅要对重量差有一定的要求,还要满足体积的要求,即两相邻工件的体积差应尽量大,使得相邻工件体积差不小于一定值(如33cm);Ⅲ.当工件确实不满足上述要求时,允许更换少量工件。

问题1.按重量排序算法;问题2.按重量和体积排序算法;问题3.当工件不满足要求时,指出所更换工件及新工件的重量和体积值范围,并输出排序结果。

最优加工排序问题

最优加工排序问题

数学建模暑期培训第四次论文论文题目:加工任务的最优调度方案研究姓名:卢丰海学号:******** 专业:信息与计算科学姓名:曾洁学号:******** 专业:环境工程2011 年7 月19日加工任务的最优调度方案研究摘要本文采用排序理论中的思想及方法来编制印刷厂的作业计划,依据题目要求,建立了任务完工时间的递推模型,求解出较优的印刷厂调度方案。

针对问题一,本文首先分别用Palmer启发式算法、CDS启发式算法确定任务在车间的加工顺序;再以最长流程时间F max最短为目标函数,建立任务完工时间的递推模型;在求得两种排列顺序的基础上,用Matlab编程分别求解出各个任务在不同车间的完工时间:其中用Palmer算法完成前6项任务所需58天,完成20项任务需170天;用CDS算法完成前6项任务所需57天,完成20项任务需157天。

故本文取CDS算法所得的排序结果来编制调度方案。

前6项任务的调度方案见表3,20项任务的具调度方案见表4。

问题二是求解目标函数为120天内能完工的最大任务数的排列排序问题。

对于此问的求解,本文首先将耗时较长的任务按耗时量的大小排序,再将这些任务按从大到小逐个剔除,在依次剔除了12、13、17并再重新排序后,观察所得的最大完工时间为117天,刚好小于120天,故求解出120天内能完工的最大任务数为17。

17项任务的加工工序为8-14-3-19-5-2-11-16-18-10-1-4-7-20-13-6-9,具体调度方案见表5。

针对问题三,本文根据题目所给限制条件,运用逐步筛选法求出放假后完成所有任务的最少天数。

当各个车间放2天假时,运用matlab编程(程序见附录)求解得完成所有任务的天数为159天且方案不唯一,其中一种方案的任务加工顺序为:8-14-3-5-10-19-2-17-15-12-11-16-18-1-4-7-20-13-9-6。

同理可得当在第50天到第60天之间连续放3天假时,求解完成所有任务的天数为160天,任务的加工工序与放2天假的加工顺序一致,只是完工时间在放两天假的基础上往后挪一天。

数学建模C题论文资料(工件加工排序)

数学建模C题论文资料(工件加工排序)
gj_value=8,4,16,3,7,20,17,11,7,12,5,18;
enddata
end
模型结果:
导出列表:
工件顺序
车床加工时间
规定的完工时间
各工件价值
0
0
0
0
0
0
1
2.8
9
8
5
1.7
7
7
12
4.7
11
18
10
2.5
18
12
3
1.2
15
16
6
0.9
22
20
7
2.5
17
17
2
4
23
3
11
3.6
问题(一)题目要求:12种工件都要求在车床上加工,车床一次只能加工一种工件。设i工件车床加工时间为A ,规定完工时间为B ,工件价值为C
1)不考虑工件的完工时间和工件的价值,安排工件加工的次序,使得完成这批工件加工任务所需的总时间最省。
分析:引入0/1变量,利用目标函数最优化工件排序。
设 为i工件实际完工时间,所以完成这批工件的总时间为T= ,而 =A +A =A +A +A =A +A +………+ =
@for(shunxu(I):
@sum(gongjian(J): note(I,J))=1;
);
!每个工件只能排在一个顺序位上;
@for(gongjian(J):
@sum(shunxu(I): note(I,J))=1;
);
!定义0/1变量;
@for(links:@bin(note));
data:
!输出数据到Excel文档;

零件加工排序的单目标非线性整数规划模型

零件加工排序的单目标非线性整数规划模型

零件加工排序的单目标非线性整数规划模型摘要本文讨论了总加工时间最短情况下零件加工排序的单目标非线性规划问题。

首先,分析题目给出的数据,可以发现各零件模型在各设备上的加工时间上有差异,那么我们就得出零件模型之间在加工时存在等待时间。

对于等待时间,我们分两种情况进行了讨论:当 i 零件模型完成上一工序的总时间大于或等于(1i -)工件完成下一工序的总时间,此时i 零件模型不需要等待(1i -)零件模型而立即就进入下一工序,此时不需要考虑等待时间;反之,则考虑等待时间。

其次,我们通过对各个零件模型(排序后)完成某项特定工序所需总时间进行求和可以得到整个加工任务所需要的总时间,其各工件的总时间包括零件在设备上的加工时间和加工其他零件时的等待时间。

基于以上分析,我们以最佳排序下总加工时间最短为目标,以零件排序前后所占的位置为约束条件,建立非线性整数规划模型,运用LINGO 编程求解得到最佳加工排序为:4--5--10--1--9--7--8--2--3--6;最短加工总时间为:168分钟本文的主要优点是:在模型的建立过程中,先针对C1、C2工序之间关于总生产时间进行讨论,在得到关于C2工序时间最短的加工顺序模型后进行递推,从而清晰、简洁的求出这10种零件模型总加工时间最短的加工顺序;考虑到实际应用,我们对模型进行了推广,使该模型能够更广的解决多种零件在多道设备生产中的加工排序问题。

主要缺点是:为了方便模型的建立,我们提出了一些有悖于实际的理想化假设,可能会造成小部分结果的细微偏差,但不影响整体结果。

关键词:加工排序;单目标非线性规划;优化算法;0-1变量一、 问题提出某塑料厂要加工十个零件模型(编号为1,2,…,10 ),这些零件模型必须依次通过3个设备C1,C2,C3,每个设备一次只能加工一个零件,其加工时间见表1.1(表详见附录一)(单位:分钟)。

试建立模型求出使总加工时间最短的加工顺序。

二、 模型假设1、假设每个工人都是熟练工人,每个零件在设备上加工的时间是固定不变的,不会应工人的技术水平而改变。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

A
i 1 j 1
j
定义 x 1 ,x 2 ……x 144 为 0/1 变量, a1 , a2 ,… a12 为原始工件序列下 i 工件的车床加工 时间;所以
-3-
A 1 =x 1 a 1 +x 2 a 2 +……..+x 12 a 12 A 2 =x 13 a 1 +x 14 a 2 +……..+x 24 a 12 . .
-6-
fin_value(I)=@sum(gongjian(J):gj_value(J)*note(I,J)); ); !每个顺序位只能有一个工件或者没有工件; @for(shunxu(I): @sum(gongjian(J): note(I,J))<=1); !每个工件只能排在一个顺序位上; @for(gongjian(J): @sum(shunxu(I): note(I,J))<=1); !各工件的完工时间约束; @for(shunxu(I): @sum(shunxu(J)|J#le#I:time(J))<=overtime(I); ); !定义 0/1 变量; @for(links:@bin(note)); data: !原始排序下各个工件的机床加工时间; shijian= 2.8,3.2,1.2,4,2.7,0.9,2.5,3.3,1.7,2.5,3.6,4.7; !原始排序下各个工件的完工时间; endtime=9,7.5,15,23,10,22,17,33,7,18,25,11; !原始排序下各个工件的工件价值; gj_value=8,4,16,3,7,20,17,11,7,12,5,18; enddata end
设 Ti 为 i 工 件 实 际 完 工 时 间 , 所 以 完 成 这 批 工 件 的 总 时 间 为 T=
i
T , 而
i1 i
12
Ti =A i 1 +A i =A i 2 +A i 1 +A i =A 1 +A 2 +………+ Ai = A j
j 1 12 i
因此: 建立问题(1)的目标函数即数学模型为 Min=
解题正文:
-2-
C 题:工件加工排序
(建模小组成员: AP0308306 陈运标 AP0308307 邓风仪 AP0206311 黄深泉)
摘要
本题根据已知数据,结合问题中的具体要求,我们引入 0/1 变量建立工件排 序的数学规划模型。借助 Lingo 软件进行求解运算,得出其中的最优排序方案。 使得完成这批工件加工任务所需要的总时间最省。在这里,我们通过对各个工件 (排序后) 完成某项特定工序所需总时间进行求和得到整个加工任务所需要的总 时间。而各工件的总时间包括其机床加工时间和加工其他零件时的等待时间。
Lingo 程序: (wenti(2).lg4 文件) model: !考虑完工时间和工件价值的排序问题; sets: gongjian/g1..g12/:shijian,endtime,gj_value; ! 属性为原始排序下各个工件的机床加工时间, 完工时间,工件价值; shunxu/s1..s12/:time,overtime,fin_value; ! 属性为重新排序后各个工件的机床加工时间,完 工时间,工件价值; links(shunxu,gongjian): note; endsets !目标函数; max=@sum(shunxu(I):fin_value(I)); !从新排序后各工件的机床加工时间(可能为零,即表示未选中工件); @for(shunxu(I): time(I)=@sum(gongjian(J):shijian(J)*note(I,J))); !从新排序后各工件的完工时间(可能为零,即表示未选中工件); @for(shunxu(I): overtime(I)=@sum(gongjian(J):endtime(J)*note(I,J)); ); !从新排序后各工件的工件价值(可能为零,即表示未选中工件); @for(shunxu(I):
A 12 =x 133 a 1 +x 134 a 2 +……..+x 144 a 12 x 1 +x 2 +…….+x 12 =1 x 13 +x 14 +…….+x 24 =1 . . . x 133 +x 134 +…….+x 144 =1 x 1 +x 13 +x 25 +……+x 121 +x 133 =1 x 2 +x 14 +x 26 +……+x 122 +x 134 =1 . . . x 12 +x 24 +x 36 +……+x 132 +x 144 =1 (附 wenti(1).lg4 文件) Lingo 程序: model: !不考虑完工时间和工件价值的排序问题; sets: gongjian/g1..g12/:shijian; !属性为原始排序下各个工件的机床加工时间; shunxu/s1..s12/:time,fin_time; !属性为重新排序后各工件的机床加工时间和完成车工序的 时间; links(shunxu,gongjian): note; endsets !目标函数:求各个工件的加工总时间和最小; min=@sum(shunxu(I):fin_time(I)); !重新排序后各工件的机床加工时间; @for(shunxu(J): time(J)=@sum(gongjian(I):shijian(I)*note(I,J)); ); !排序后各个工件的加工总时间; @for(shunxu(I):
-1-
完工时间(h) 9 7.5 15 23 10 22 17 33 7 18 25 11
工件价值 8 4 16 3 7 20 17 11 7 12 5 18
工件 1 2 3 4 5 6 7 8 9 10 11 12
车床加工时间(h) 2.8 3.2 1.2 4 2.7 0.9 2.5 3.3 1.7 2.5 3.6 4.7 表(2)
问题(一)题目要求:12 种工件都要求在车床上加工,车床一次只能加工一种工件。设
工件车床加工时间为 A i ,规定完工时间为 B i ,工件价值为 C i
i
1) 不考虑工件的完工时间和工件的价值,安排工件加工的次序,使得完成这批工件加工任 务所需的总时间最省。 分析:引入 0/1 变量,利用目标函数最优化工件排序。
钻床加工时间(h) 4 1.3 1.8 2.2 3 4.5 1.7 2.5 4.5 2.5 3.8 1.9
为该工厂安排工件加工的次序, 使得完成这批工件加工任务所需的总时间最省。 建立数 学模型并给出相应的算法。 (三) 如果这 12 种工件都要求先在车床上加工,然后再在钻床上加工,最后再在铣床上加 工,每种机器一次只能加工一种工件,这 12 种工件加工所需时间如表(三)所示: 工件 1 2 3 4 5 6 7 8 9 10 11 12 车床加工时间(h) 2.8 3.2 1.2 4 2.7 0.9 2.5 3.3 1.7 2.5 3.6 4.7 表(3) 为该工厂安排工件加工的次序, 使得完成这批工件加工任务所需的总时间最省。 建立数 学模型并给出相应的算法。 (四) 对于上述问题你做出的数学模型和相应的算法给出评价。并将模型推广到 n 个工件 在 m 台机器上加工的一般的工件排序问题,给出你的想法和解决问题的思路。 钻床加工时间(h) 4 1.3 1.8 2.2 3 4.5 1.7 2.5 4.5 2.5 0.9 1.9 铣床加工时间(h) 3 1 2.5 1.3 1.8 2 3.6 0.8 1 1.1 1.3 0.7
数学建模竞赛试题:
C 题:工件加工排序
计划排序问题中的车间作业问题,研究 n 个工件在 m 台机器上有序的加工问题,每个 工件都有完工的日期(DD,Due date), 加工的时间(PT,Processing time)和工件的价值 (VAL,Value if job is selected). 现研究一个工厂生产工序的计划和安排,需要计划与合理 安排各个工件在这些机器上加工的先后次序, 即拟订加工工序, 通过各个工件在各种机器上 加工次序的合理安排,使得完成这批工件加工任务所需的总时间最省(注:总时间即为各个 零件的加工时间和加工其他零件时它们等待时间之和)或要求整个选择加工的工件价值最 大。 有一个工厂现在有 12 种工件(编号为工件 1,工件 2,…,工件 12)需要在车床,钻 床,铣床几种不同的设备上加工。考虑下面的工件加工的排序问题: (一) 这 12 种工件都要求在车床上加工,车床一次只能加工一种工件,这 12 种工件加工 所需时间,每个工件的完工时间和每个工件的价值如表(1)所示: 工件 1 2 3 4 5 6 7 8 9 10 11 12 加工时间(h) 2.8 3.2 1.2 4 2.7 0.9 2.5 3.3 1.7 2.5 3.6 4.7 表(1) 1) 不考虑工件的完工时间和工件的价值,为该工厂安排工件加工的次序,使得完成这批 工件加工任务所需的总时间最省。建立数学模型并给出相应的算法。 2) 由于工件必须在它们要求的时间内完工,按照表(1)的数据,为该工厂安排选择加 工工件的种类及加工的次序,使得整个选择加工的工件价值最大。建立数学模型并给 出相应的算法。 (二) 如果这 12 种工件都要必须先在车床上加工过) , 每种机器一次只能加工一种工件, 这 12 种工件加工所需 时间如表(2)所示:
X
i 1
12
j ,i
0 ( j =1, 2, ….12),

X
j 1
12
i, j
0 ( i =1, 2, ….12), X i , j 为 0-1 变量。用 Lingo 进行编程,工件集加入原始排序
下车床加工时间,完工时间和工件价值属性;顺序集加入重新排序后车床加工时间,完工时 间和工件价值属性;因此该模型为: 目标函数: Max=
相关文档
最新文档