文档库 最新最全的文档下载
当前位置:文档库 › 工件加工排序

工件加工排序

工件加工排序
工件加工排序

数学建模竞赛试题:

C题:工件加工排序

计划排序问题中的车间作业问题,研究n个工件在m台机器上有序的加工问题,每个工件都有完工的日期(DD,Due date), 加工的时间(PT,Processing time)和工件的价值(VAL,Value if job is selected). 现研究一个工厂生产工序的计划和安排,需要计划与合理安排各个工件在这些机器上加工的先后次序,即拟订加工工序,通过各个工件在各种机器上加工次序的合理安排,使得完成这批工件加工任务所需的总时间最省(注:总时间即为各个零件的加工时间和加工其他零件时它们等待时间之和)或要求整个选择加工的工件价值最大。

有一个工厂现在有12种工件(编号为工件1,工件2,…,工件12)需要在车床,钻床,铣床几种不同的设备上加工。考虑下面的工件加工的排序问题:

(一)这12种工件都要求在车床上加工,车床一次只能加工一种工件,这12种工件加工

所需时间,每个工件的完工时间和每个工件的价值如表(1)所示:

表(1)

1)不考虑工件的完工时间和工件的价值,为该工厂安排工件加工的次序,使得完成这批

工件加工任务所需的总时间最省。建立数学模型并给出相应的算法。

2)由于工件必须在它们要求的时间内完工,按照表(1)的数据,为该工厂安排选择加

工工件的种类及加工的次序,使得整个选择加工的工件价值最大。建立数学模型并给出相应的算法。

(二)如果这12种工件都要求先在车床上加工,然后再在钻床上加工(即工件在钻床加工

之前必须先在车床上加工过),每种机器一次只能加工一种工件,这12种工件加工所需时间如表(2)所示:

表(2)

为该工厂安排工件加工的次序,使得完成这批工件加工任务所需的总时间最省。建立数学模型并给出相应的算法。

(三)如果这12种工件都要求先在车床上加工,然后再在钻床上加工,最后再在铣床上加

工,每种机器一次只能加工一种工件,这12种工件加工所需时间如表(三)所示:

表(3)

为该工厂安排工件加工的次序,使得完成这批工件加工任务所需的总时间最省。建立数学模型并给出相应的算法。

(四)对于上述问题你做出的数学模型和相应的算法给出评价。并将模型推广到n个工件

在m台机器上加工的一般的工件排序问题,给出你的想法和解决问题的思路。

解题正文:

C 题:工件加工排序

(建模小组成员: AP0308306 陈运标 AP0308307邓风仪 AP0206311 黄深泉)

摘要

本题根据已知数据,结合问题中的具体要求,我们引入0/1变量建立工件排序的数学规划模型。借助Lingo 软件进行求解运算,得出其中的最优排序方案。使得完成这批工件加工任务所需要的总时间最省。在这里,我们通过对各个工件(排序后)完成某项特定工序所需总时间进行求和得到整个加工任务所需要的总时间。而各工件的总时间包括其机床加工时间和加工其他零件时的等待时间。

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

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

模型的建立:我们的思路是引入0/1变量对工件进行动态排序,根据问题要求得出排

序后的目标函数(即数学模型)。根据题目的约束条件,利用Lingo 软件算出模型的最优解,从而获得工件的最优排序。

问题(一)题目要求:12种工件都要求在车床上加工,车床一次只能加工一种工件。设 i

工件车床加工时间为A i ,规定完工时间为B i ,工件价值为C i

1) 不考虑工件的完工时间和工件的价值,安排工件加工的次序,使得完成这批工件加工任

务所需的总时间最省。

分析:引入0/1变量,利用目标函数最优化工件排序。

设i T 为i 工件实际完工时间,所以完成这批工件的总时间为T=

12

1

i

i T

=∑,而

i T =A 1-i +A i =A 2-i +A 1-i +A i =A 1+A 2+………+i A =1

i

j j A =∑

因此: 建立问题(1)的目标函数即数学模型为Min =121

1

i

j i j A ==∑

定义x 1,x 2……x 144为0/1变量,1a ,2a ,…12a 为原始工件序列下i 工件的车床加工时间;所以

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

. .

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

Lingo程序:(附wenti(1).lg4文件)

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):

fin_time(I)=@sum(shunxu(J)|J#le#I:time(J));

);

!每个顺序位只能有一个工件;

@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文档;

@OLE('D:\liebiao.XLS')=time,fin_time;

!原始排序下各个工件的机床加工时间;

shijian= 2.8,3.2,1.2,4,2.7,0.9,2.5,3.3,1.7,2.5,3.6,4.7;

enddata

end

结果数据:

工件加工时间

A完成时间T i

i

6 0.9 0.9

3 1.2 2.1

9 1.7 3.8

10 2.5 6.3

7 2.5 8.8

5 2.7 11.5

1 2.8 14.3

2 3.2 17.5

8 3.3 20.8

11 3.6 24.4

4 4 28.4

12 4.7 33.1

总计:171.9

表1-1

所以最优排序是6-3-9-10-7-5-1-2-8-11-4-12 完成这批工件加工任务所需的最省总时间为171.9

2) 分析:由于工件必须在它们要求的时间内完工,即某工件在任务开始起到该工件加工完

毕之间所用的总时间应少于该工件的规定完工时间。所以要使整个加工任务的工件总价值最大,必须合理选择加工工件的种类及其加工的次序。 引入0-1变量,若选择i 工件加工,则记Y i =1.否则记Y i =0;

工件的排序算法同问题1),但约束条件有所不同。在本题中,12种工件不一定都可以入选

到最优加工序列中(即目标排序中可能出现工件空缺),所以12

,1

0j i

i X

=≤∑ (j =1, 2, ….12),

且12

,1

0i j j X =≤∑ (i =1, 2, ….12),,i j X 为0-1变量。用Lingo 进行编程,工件集加入原始排序

下车床加工时间,完工时间和工件价值属性;顺序集加入重新排序后车床加工时间,完工时间和工件价值属性;因此该模型为:

目标函数: Max=i i i Y C ∑=12

1

(在排序算法及程序中已隐含有i Y )

工件选择:12

,1

0j i

i X

=≤∑ (j =1, 2, ….12),12

,1

0i j j X =≤∑ (i =1, 2, ….12)

完工时间约束:1

j

i i j i A Y B =≤∑ (j =1, 2, ….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):

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

模型结果:

导出列表:

工件顺序车床加工时间规定的完工时间各工件价值

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 2

3 3

11 3.6 25 5

8 3.3 33 11

总价值:117

表1-2

由上表可知,最优方案是选择工件1-5-12-10-3-6-7-2-11-8,并按此顺序进行加工。从而获得最大的工件总价值为117.

关于问题(二),(三),(四)

分析:问题(二)要求:如果这12种工件都要求先在车床上加工,然后再在钻床上加

工(即工件在钻床加工之前必须先在车床上加工过),每种机器一次只能加工一种工件,求工件加工的最优排序,使得完成这批工件加工任务所需的总时间最省。根据总时间的定义,某工件从任务开始时刻起到完成钻床工序止所需要的总时间包括该工件完成车工序的时间,等待上一个工件加工完的时间(即从该工件在车床加工完毕时刻起到其上一个工件在钻床上加工完毕这一段时间),该工件在钻床上加工的时间。我们假设i 工件在车床(1)

M 加工所需

时间为(1)

i X ,在钻床上(2)

M

加工所需时间为(2)

i

X ;i 工件完成在车床(1)

M

加工的总时间为

(1)

i

M

;(1i -)工件完成在钻床(2)

M

加工的总时间为(2)

1i M -,(1i >)。这里要分两种情况进

行分析: 1).当(1)

i

M ≥(2)

1i M -时,即i 工件完成车工序的总时间大于或等于(1i -)工件完成钻工序的

总时间,此时i 工件不需要等待(1i -)工件而立即就进入钻工序,因此i 工件完成钻床工序的总时间表达式为(2)

i M =(1)

i

M

+(2)

i

X ;

2).当(1)

i

M ≤(2)

1i M -时,即i 工件完成车工序的总时间小于或等于(1i -)工件完成钻工序的

总时间,此时i 工件需要等待(1i -)工件完成钻床工序才能进入钻床加工。因此i 工件完成钻床工序的总时间表达式为(2)

i

M =(2)1i M -+(2)

i

X 。

综合以上两种情况,得到i 工件完成钻床工序的总时间计算公式为 (2)

i

M =Max ((1)i

M

,(2)1

i M -)+(2)i X (1i >)

同理,对于问题(三),我们也可以得到类似的计算公式.,下面是以列表的形式将这一推导公式推广到i 工件j 个工序的情况:

假设i 工件在车床(1)

M

加工所需时间为(1)i X ;在钻床上(2)

M

加工所需时间为(2)

i

X ;在

铣床(3)

M

上加工所需要的时间为(3)

i X ;在后续的各工序(()

j M

)中加工所需要的时间设为

()

j i

X ;下表中内容表示i 工件从任务开始时刻起到完成()

j M 道工序止所需要的总时间j

i M

表2-1

模型的建立:

根据表2-1,问题(二)中要求的完成加工任务的最省总时间即为在最优排序下各工件完成钻床加工工序的总时间之和。 即建立问题(二)的数学模型为Max=(2)1

M

+12

2

i =∑

{ Max ((1)i M ,(2)1i M -)+(2)

i

X };

这里 (2)

1M =(1)1M +(2)

1X ;

Lingo 编程:附录1(wenti(3).lg4)文件

同理,问题(三)中要求的完成加工任务的最省总时间即为在最优排序下各工件完成铣床加工工序的总时间之和。

建立问题(三)的数学模型为Max=(3)1

M

+12

2

i =∑

{ Max ((2)i M ,(3)1i M -)+(3)

i

X };

这里 (3)

1M =(2)1M +(3)

1X ;

Lingo 编程:附录2(wenti(4).lg4)文件

归纳以上算式,推广到i 个工件j 部机床的工件排序问题, 建立问题(四)的数学模型为Max=()1

j M

+2

i

i =∑

{ Max ((1)j i M -,()1j i M -)+()

j i

X };

这里 ()

1

j M =(1)

1

j M -+(1)

1

j X -; Lingo 编程:(略)

模型结果:

问题(二)

运算后导出列表:

顺序号工件号车床加工时

间(1)

i

X

钻床加工时

间(1)

i

X

完成车床工序

总时间(1)

i

M

完成钻床工序

总时间

(2)

i

M

1 3 1.

2 1.8 1.2 3

2 6 0.9 4.5 2.1 7.5

3 7 2.5 1.7 4.6 9.2

4 2 3.2 1.3 7.8 10.5

5 10 2.5 2.5 10.3 13

6 5 2.

7 3 13 16

7 9 1.7 4.5 14.7 20.5

8 4 4 2.2 18.7 22.7

9 8 3.3 2.5 22 25.2

10 1 2.8 4 24.8 29.2

11 11 3.6 3.8 28.4 33

12 12 4.7 1.9 33.1 35

总时间:224.8

表2-2

由上表可知,最优的工件排序为3-6-7-2-10-5-9-4-8-1-11-12,完成这批工件加工任务所需的最省总时间为224.8。

问题(三)

运算后导出列表:

顺序号工件号车床加工时间

(1)

i

X

钻床加工时间

(1)

i

X

铣床加工时间

(1)

i

X

1 3 1.

2 1.8 2.5

2 9 0.9 4.5 2

3 11 3.6 0.9 1.3

4 10 2.

5 2.5 1.1

5 7 2.5 1.7 3.6

6 9 1.

7 4.5 1

7 2 3.2 1.3 1

8 5 2.7 3 1.8

9 8 3.3 2.5 0.8

10 1 2.8 4 3

11 4 4 2.2 1.3

12 12 4.7 1.9 0.7

表2-3

顺序号工件号完成车床工序

总时间(1)

i

M

完成钻床工序总

时间(2)

i

M

完成铣床工序总

时间(3)

i

M

1 3 1.

2

3 5.5

2 9 2.1 7.5 9.5

3 11 5.7 8.

4 10.8

4 10 8.2 10.9 12

5 7 10.7 12.

6 16.2

6 9 12.4 17.1 18.1

7 2 15.6 18.4 19.4

8 5 18.3 21.4 23.2

9 8 21.6 24.1 24.9

10 1 24.4 28.4 31.4

11 4 28.4 30.6 32.7

12 12 33.1 35 35.7

总时间:239.4

表2-4

从软件的运行情况可知,最优的工件排序为3-9-11-10-7-9-2-5-8-1-4-12;完成这批工件加工任务所需的最省总时间为239.4

模型评价,改进方法,推广

1.在本题的解答过程中所建立的数学规划模型中,我们始终围绕一种化整为零的数学思想,将整批工件的加工任务拆分为在最优的排序下每个工件的实际加工情况来分析,根据各工件在加工过程中加工时间和总时间之间的联系,寻求各工件加工总时间的具体算法。再利用Lingo软件进行求解模型,得出工件的最优排序。其中逻辑严谨,论证充分,算法简洁准确。有效地提高了软件求解效率。

2.由于在模型求解中利用了Lingo软件,大大简化了编程工作,且模型本身结合软件的使用就具有很强的可移植性,便于模型的推广。列如在推广到m工件n部机床的情况,只需在程序中的工件,顺序集里加入相应的属性;在程序段中加入对应的算法和约束条件就可以完全替换从而解决问题了。

参考资料:

[1]姜启源等,数学模型(第三版),高等教育出版社,2003。

[2]洪文吴本忠,Lingo4.0 for windows 最优化软件及应用,北京大学出版社,2001。

[3]https://www.wendangku.net/doc/e31832622.html,

[4]https://www.wendangku.net/doc/e31832622.html,/Forums/1/268/ShowPost.aspx#268

model:

!工件先车后钻的排序问题;

sets:

gongjian/g1..g12/:che_shijian,zuan_shijian;

shunxu/s1..s12/:che_time,zuan_time,che_fintime,zuan_fintime;

links(shunxu,gongjian): note;

endsets

!目标函数;

min=@sum(shunxu(I):zuan_fintime(I));

!从新排序后各工件的车床加工时间;

@for(shunxu(I):

che_time(I)=@sum(gongjian(J):che_shijian(J)*note(I,J));

);

!从新排序后各工件的钻床加工时间;

@for(shunxu(I):

zuan_time(I)=@sum(gongjian(J):zuan_shijian(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):

che_fintime(I)=@sum(shunxu(J)|J#le#I:che_time(J));

);

!从新排序后各工件在完成钻工序的总时间;

@for(shunxu(I)| I#gt#1:

zuan_fintime(I)=@if(che_fintime(I)#ge#zuan_fintime(I-1),che_fintime(I),zuan_ fintime(I-1))+zuan_time(I);

);

!顺序1中的工件在完成钻工序的总时间;

zuan_fintime(1)=che_fintime(1)+zuan_time(1);

!定义0/1变量;

@for(links:@bin(note));

data:

!原始排序下各个工件的车床加工时间;

che_shijian= 2.8,3.2,1.2,4,2.7,0.9,2.5,3.3,1.7,2.5,3.6,4.7;

!原始排序下各个工件的钻床加工时间;

zuan_shijian=4,1.3,1.8,2.2,3,4.5,1.7,2.5,4.5,2.5,3.8,1.9;

end

附录二:

model:

!工件先车后钻再铣的的排序问题;

sets:

gongjian/g1..g12/:che_shijian,zuan_shijian,xi_shijian;

shunxu/s1..s12/:che_time,zuan_time,xi_time,che_fintime,zuan_fintime,xi_finti me;

links(shunxu,gongjian): note;

endsets

!目标函数;

min=@sum(shunxu(I):xi_fintime(I));

!从新排序后各工件的车床加工时间;

@for(shunxu(I):

che_time(I)=@sum(gongjian(J):che_shijian(J)*note(I,J));

);

!从新排序后各工件的钻床加工时间;

@for(shunxu(I):

zuan_time(I)=@sum(gongjian(J):zuan_shijian(J)*note(I,J));

);

!从新排序后各工件的铣床加工时间;

@for(shunxu(I):

xi_time(I)=@sum(gongjian(J):xi_shijian(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):

che_fintime(I)=@sum(shunxu(J)|J#le#I:che_time(J));

);

!从新排序后各工件在钻工序的完工时间;

@for(shunxu(I)| I#gt#1:

zuan_fintime(I)=@if(che_fintime(I)#ge#zuan_fintime(I-1),che_fintime(I),zuan_ fintime(I-1))+zuan_time(I);

);

!顺序1中的钻床工序的完工时间;

zuan_fintime(1)=che_fintime(1)+zuan_time(1);

!从新排序后各工件在完成铣工序的时间;

@for(shunxu(I)| I#gt#1:

xi_fintime(I)=@if(zuan_fintime(I)#ge#xi_fintime(I-1),zuan_fintime(I),xi_fint ime(I-1))+xi_time(I);

);

!顺序1中的铣床工序的完工时间;

xi_fintime(1)=zuan_fintime(1)+xi_time(1);

!定义0/1变量;

@for(links:@bin(note));

data:

!输出数据到Excel文档;

@OLE('D:\liebiao.XLS')=che_time,zuan_time,xi_time,che_fintime,zuan_fintime,x i_fintime;

!原始排序下各个工件的车床加工时间;

che_shijian= 2.8,3.2,1.2,4,2.7,0.9,2.5,3.3,1.7,2.5,3.6,4.7;

!原始排序下各个工件的钻床加工时间;

zuan_shijian=4,1.3,1.8,2.2,3,4.5,1.7,2.5,4.5,2.5,0.9,1.9;

!原始排序下各个工件的铣床加工时间;

xi_shijian=3,1,2.5,1.3,1.8,2,3.6,0.8,1,1.1,1.3,0.7;

enddata

end

工件定位装夹

2.1 熟悉工件定位知识 2.1.1工件装夹概述 1.工件的装夹 在机械加工过程中,为了保证加工精度,在加工前,应确定工件在机床上的位置,并固定好,以接受加工或检测。将工件在机床上或夹具中定位、夹紧的过程”,称为装夹。 工件的安装包含了两个方面的内容: 定位确定工件在机床上或夹具中正确位置的过程,称为定位。 夹紧工件定位后将其固定,使其在加工中保持定位位置不变的操作,称为夹紧。 2.机床夹具 能方便地让工件在机床上定位、夹紧和引导刀具工艺装备,称为夹具。利用夹具定位、夹紧工件,具有操作迅速方便,定位精度较高、稳定,生产率较高的特点。 夹具预先在机床上已调整好位置,工件通过夹具提供的定位装置定位,可在机床确立正确的位置。还可通过夹具上的对刀装置,保证了工件加工表面相对于刀具的正确位置。在使用夹具的情况下,工件与机床、刀具之间的相互位置精度由夹具保证。机床、夹具、刀具和工件所构成的工艺系统在加工中保持正确的位置,从而保证工序的加工精度。 夹具一般由夹具体、定位元件、夹紧装置、对刀或导向装置、连接元件等组成。夹具体是机床夹具的基础;定位元件保证工件在夹具中处于正确的位置;夹紧装置的作用是将工件压紧夹牢;工件对刀或导向装置用于确定刀具相对于定位元件的正确位置;连接元件是确定夹具在机床上正确位置的元件。 2.1.2工件的定位基本原理 1.工件六点定位原理 一个尚未定位的工件,其空间位置是不确定的,均有六个自由度,如图2-1-1a所示,即沿空间坐标轴X、Y、Z三个方向的移动和绕这三个坐标轴的转动分别以、、;和、、表示。 定位,就是限制自由度。 如图2-1-1b所示的长方体工件,欲使其完全定位,可以设置六个固定点,工件的三个面分别与这些点保持接触,在其底面设置三个不共线的点1、2、3(构成一个面),限制工件的三个自由度:、、;侧面设置两个点4、5(成一条线),限制了、两个自由度;端面设置一个点6,限制自由度。于是工件的六个自由度便都被限制了。这些用来限制工件自由度的固定点,称为定位支承点,简称支承点。 用合理分布的六个支承点限制工件六个自由度的法则,称为六点定位原理。 在应用“六点定位原理”分析工件的定位时,应注意:定位支承点与工件定位基准面接触,才能起到限制工件自由度的作用。一个定位支承点仅限制一个自由度。 2.工件定位中的几种情况 ⑴完全定位 工件的六个自由度全部被限制的定位,称为完全定位。当工件在x、y、z三个坐标方向上均有尺寸要求或位置精度要求时,一般采用这种定位方式。 如图2-1-2所示的工件,要求铣削工件上表面和铣削槽宽为40mm的槽。为了保证上表面与底面的平行度,必须限制、、三个自由度;为了保证槽侧面相对前后对称面的对称度要求,必须限制、两个自由度;由于所铣的槽不是通槽,在X方向上,槽有位置要求,所以必须限制移动的自由度。为此,应对工件采用完全定位的方式,可参考图2-1-1进行六点定位。 ⑵不完全定位

《数据结构》知识题汇编09第九章排序试题

数据结构课程(本科)第九章试题 一、单项选择题 1.若待排序对象序列在排序前已按其排序码递增顺序排列,则采用()方法比较次数最少。 A. 直接插入排序 B. 快速排序 C. 归并排序 D. 直接选择排序 2.如果只想得到1024个元素组成的序列中的前5个最小元素,那么用()方法最快。 A. 起泡排序 B. 快速排序 C. 直接选择排序 D. 堆排序 3.对待排序的元素序列进行划分,将其分为左、右两个子序列,再对两个子序列施加同样的排序操作, 直到子序列为空或只剩一个元素为止。这样的排序方法是()。 A. 直接选择排序 B. 直接插入排序 C. 快速排序 D. 起泡排序 4.对5个不同的数据元素进行直接插入排序,最多需要进行()次比较? A. 8 B. 10 C. 15 D. 25 5.如果输入序列是已经排好顺序的,则下列算法中()算法最快结束? A. 起泡排序 B. 直接插入排序

C. 直接选择排序 D. 快速排序 6.如果输入序列是已经排好顺序的,则下列算法中()算法最慢结束? A. 起泡排序 B. 直接插入排序 C. 直接选择排序 D. 快速排序 7.下列排序算法中()算法是不稳定的。 A. 起泡排序 B. 直接插入排序 C. 基数排序 D. 快速排序 8.假设某文件经过内部排序得到100个初始归并段,那么如果要求利用多路平衡归并在3 趟内完成排 序,则应取的归并路数至少是()。 A. 3 B. 4 C. 5 D. 6 9.采用任何基于排序码比较的算法,对5个互异的整数进行排序,至少需要()次比较。 A. 5 B. 6 C. 7 D. 8 10.下列算法中()算法不具有这样的特性:对某些输入序列,可能不需要移动数据对象即可完成 排序。 A. 起泡排序 B. 希尔排序 C. 快速排序 D. 直接选择排序 11.使用递归的归并排序算法时,为了保证排序过程的时间复杂度不超过O(nlog2n),必须做到()。

工件安装的概念

教案首页 教学目的要求:1、了解工件定位的原理和定位方法2.定位基准的概念及定位要求3、了解常用夹紧机构的结构和使用特点 教学重点、难点:重点掌握工件定位的原理和定位方法 授课方法: 讲授法 教学参考及教具(含多媒体教学设备)绘图工具、配套挂图授课执行情况及分析: 板书设计或授课提纲 课题一工件安装的概念 一.复习提问 二.导入新课 三.讲授新课 四.课堂小结 五.布置作业 教案用纸附页

复习提问: 1什么叫工件的定位?什么叫定位基准? 2、什么叫工件的六点定位原理? 讲授新课 一、工件定位 1、定位和基准的基本概念 (1)工件定位的概念 确定工件在机床上或夹具中占据一个正确位置定位的过程,称为工件的定位。 (2)基准的概念 基准是用来确定工件上点、线、面位置时所依据的那些点、线、面。 基准分为设计基准和工艺基准 设计基准:零件图上用的基准。 工艺基准:机械加工工艺人员用的基准 工艺基准又分: 1.定位基准2 .测量基准3 ?装配基准4 .工序基准 定位基准的概念: 工件的定位基准一经确定,工件上其他表面的位置关系也随之确定。 2、工件的六点定位原理 一个不受约束的物体在空间有六个自由度,即沿X 、Y 、Z 方向的平移和绕 X 、Y 、Z 方向的转动, 称为六点定位原理。 任何一个自由刚体,在空间均有六个自由度,即沿空间坐标轴 向的移动和绕此三坐标轴的转动。 工件定位的实质就是限制工件的自由度。 由此可见,工件安装时主要紧靠机床工作台或夹具上的这六个支承点,它的六 个自由度即全部被限制,工件便获得一个完全确定的位置。 六点定则: 工件定位时,用合理分布的六个支承点与工件的定位基准相接触来限制工件的 六个自由度,使工件的位置完全确定, 称为“六点定则”。 教案用纸附页 在加工过程中用于确定工件在机床或夹具上的正确位置的基准, 称为定位基准。 重占 .~I~A 八、、 重点只讲定 位基准 重占 .~I~A X 、Y 、Z 三个方

第10章排序自测题答案

第9章排序自测卷姓名班级 一、填空题(每空1分,共24分) 1. 大多数排序算法都有两个基本的操作:比较和移动。 2. 在对一组记录(54,38,96,23,15,72,60,45,83)进行直接插入排序时,当把第7个记录60插 入到有序表时,为寻找插入位置至少需比较6 次。 3. 在插入和选择排序中,若初始数据基本正序,则选用插入;若初始数据基本反序,则选用 选择。 4. 在堆排序和快速排序中,若初始记录接近正序或反序,则选用堆排序;若初始记录基本 无序,则最好选用快速排序。 5. 对于n个记录的集合进行冒泡排序,在最坏的情况下所需要的时间是O(n2) 。若对其进行快速 排序,在最坏的情况下所需要的时间是O(n2)。 6. 对于n个记录的集合进行归并排序,所需要的平均时间是O(nlog2n),所需要的附加空间 是O(n) 。 7.对于n个记录的表进行2路归并排序,整个归并排序需进行┌log2n┐趟(遍)。 8. 设要将序列(Q, H, C, Y, P, A, M, S, R, D, F, X)中的关键码按字母序的升序重新排列,则: 冒泡排序一趟扫描的结果是H C Q P A M S R D F X Y; 初始步长为4的希尔(shell)排序一趟的结果是P A C S Q H F X R D M Y ; 二路归并排序一趟扫描的结果是H Q C Y A P M S D R F X; 快速排序一趟扫描的结果是 F H C D P A M Q R S Y X; 堆排序初始建堆的结果是A D C R F Q M S Y P H X。 9. 在堆排序、快速排序和归并排序中, 若只从存储空间考虑,则应首先选取方法,其次选取快速排序方法,最后选取归并排序方法; 若只从排序结果的稳定性考虑,则应选取归并排序方法; 若只从平均情况下最快考虑,则应选取堆排序、快速排序和归并排序方法; 若只从最坏情况下最快并且要节省内存考虑,则应选取堆排序方法。 二、单项选择题(每小题1分,共18分) ( C )1.将5个不同的数据进行排序,至多需要比较次。 A. 8 B. 9 C. 10 D. 25 (C)2.排序方法中,从未排序序列中依次取出元素与已排序序列(初始时为空)中的元素进行比较,将其放入已排序序列的正确位置上的方法,称为 A. 希尔排序B. 冒泡排序C. 插入排序D. 选择排序(D)3.从未排序序列中挑选元素,并将其依次插入已排序序列(初始时为空)的一端的方法,称为

数模工件排序问题

工件排序问题 摘要 本文对于实际生产中工件的优化排序问题进行了探讨。 问题一要求给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 -法两种启发式算法,计算复杂度较小的情况下得到了近优解。然后,我们又采用优化模型,找到各工件在加工过程中加工时间和总时间之间的联系,求得各工件的加工总时间。最后建立目标函数,得到最优解: 当15 n=时,总的加工时间为184s,工件加工顺序为: 2→3→1→4→5→6→12→7→8→9→10→11→15→13→14 当20 n=时,总的加工时间为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 i X i 工件在() j M 上加工所需时间 j i M i 工件从任务开始时刻起到完成() j M 道工序 为止所需要的总时间 四、模型建立及求解 问题一

排序试题含答案

句子排序、衔接试题含答案 一、能力提升精练: 1、为画线处选择恰当的句子,使上下文衔接。 窗外有两株梧桐,三星期前,树上的叶子是还没有银元大的疏疏朗朗的几许红叶,如今已是密丛丛一树肥大的绿叶了。玻璃上也映出一层暗绿色来。假使在盛暑烈日如火的时候,我坐的一个位置真是清凉仙境呢!梧桐两旁各有一行冬青树,________________。 a. 好长时间园丁没有来修剪,已长得很高了。 b. 只怪园丁贪懒没有来修剪,已长得有些参差不齐了。 c. 感谢园丁贪懒没有来修剪,已长得很高了。 d. 因为园丁贪懒没有来修剪,已经长得很高了。 2、将下面打乱的语言材料,调整句序,将其理顺() (1)我抬头可以望见嵌在天幕上几颗明星。(2)这些眼睛每一霎动,就像赐予我一次祝福。 (3)在我的房间外面,有一段没有被屋瓦遮掩的蓝天。(4)它们像一个人的眼睛,带着深深的关心望着我,从不厌倦。(5)我常常出神地凝视那些美丽的星星。 3、与下面一段话空缺处衔接最恰当的一项是() ___________________中国古代就有许多短文章,如《论语》、《道德经》等,《论语》中有不少好的东西;就是《道德经》,在那个历史时代了也有它突出的地方,拿民间谚语来说,很多生动的谚语都是既短小而又有内容。"三个臭破匠,凑成一个诸葛亮"。这样的话就很好,它十几个字抵得过一篇大文章。 a. 说短文章没有分量是不切实际的。 b. 短文章有短文章的长处。 c. 短文章中也有精华之作。 d. 难道只有长文章才有分量吗? 4、将下列句子重新排序。 ①理由之一是死海在地质构造上恰好处于著名的叙利亚——非洲大断裂带上,而这个断裂带尚处于幼年期,它将逐步扩大,并与红海海底大断裂带相连。 ②此外,一种单细胞的藻类植物也在悄悄诞生。 ③科学家门曾预言,总又一天,海水将蒸发告罄,死海将成为一个干涸的盐盆。 ④其次,科学家们发现,上个世纪80年代初死海中正在繁殖一种红色的小生命——盐菌,数量多达每立方米海水中2000亿个。 ⑤菌类和藻类的出现,给死海带来一丝生机,看来死海正在复苏,可以预料,它的前途可能是乐观的。 ⑥然而,最近人们却惊奇地发现,“死海”不仅不会死,而且大有复苏的可能。 ⑦这样,死海不仅不会枯竭,而且有着丰富的补给水源。 5、把下列句子填在后面的横线上,组成前后衔接的一段话。(只填句子的序号) ①它们好像在外面等候了多时。 ②在这里看星星,星星在你眼前亮起,一直亮到脑后。 ③满天的星星肃然排列,迎面注视着你。 午夜走出帐篷,我被眼前的景象惊呆了。、、你仿佛把头伸进一座古钟里面,内里嵌满活生生的星星。我顿时明白了《敕勒歌》中为什么有"天似穹庐"的句子。 6、把下列句子组成语意连贯的一段话。 ①它们的歌喉轻快纯洁,尽管音域不太宽广,但十分美妙动听,婉转而富有层次。 ②在鸟类中,黑头莺叫得最好听,声音最流畅,有些像夜莺。③这歌声仿佛涵养了树林的清新,描绘了恬静的生活,表达了幸福的感受,听到这些大自然的幸福鸟歌唱,谁能不为之动情呢? ④我们可以长时间地享受它美妙的歌声,甚至在春天的唱诗班销声匿迹之后,仍可以听到树林里黑头莺的歌声。 7、把下列句子组成语意连贯的一段话。 ①我对一只空中的蝴蝶说,嗬,好大的浪呀。 ②透明的空气在蝴蝶看来,像海浪一样,是浩浩荡荡的。 ③蝴蝶像遇到知音一样,频频扇翼。④于是你看到蝴蝶小姐在飞翔中起伏、躲闪。 ⑤没有什么生物比蝴蝶更了解空气。 8、给下面语段的空白处依次填入一组句子,正确的一项是()。 映日荷花,接天莲叶,亭亭莲蓬,柔嫩玉藕,无不牵惹诗情,引人遐思。让我们学做莲叶的事业吧,____________;让我们学做荷花的事业吧,____________;让我们学做莲子的事业吧,____________;让我们学做藕的事业吧, ____________。 ①把寂寞留给自己②把芬芳献给他人③以苦心孕育未来④以宽阔拥抱生活 a.②①④③b.④②③①c.③②④①d.①④③② 9、依次填入横线处最恰当的一项是( )。 这儿的景色美极了!_________,_________,_________ 。 ①湖面波光粼粼,游船往来②小金山悠闲地俯瞰着湖水③二十四桥景区如仙境般在远处召唤 a.③②①b.①③②c.②③①d.②①③ 10、填入横线处恰当的一组是: 甲:阳光融化河冰,细雨润泽了山色,_____,造化的神功又一次使人们惊异了。 乙:河上的薄冰融化已尽,小草从暖湿的泥土中苏醒,_____,造化的神功又一次使人们惊异了。 a.春风吹绿了柳枝。 b.春风把柳枝吹绿了。 c.柳枝被春风吹绿了。 d.柳枝在春风中染绿。 11、在下列空白处填入最恰当的一项是 雄伟的山,苍郁的树,苔染的石壁,滴水的竹林,都在江中投入绿油油的倒影_____,就连我自己也在那闪闪的绿色之中了。 a.天空中的艳阳洒下金辉一片 b.大地像一块鲜艳的地毯 c.碧绿的江水推挤着船舷 d.天空和地面整个绿成一片 12、根据语境在横线上填上最恰当的一句是 今夜的林中,决不宜与将军射猎——那从骑杂沓,传叫风声,会踏毁了这平整匀纤的雪地;朵朵火燎和生寒铁甲,___________。 a.会划破这诗情画意的世界。 b.会扰乱了静冷的月光。 c.会惊起树上栖息的禽息。 d.会打搅这晶莹的雪月,空阔的山林。 13、下列语句排序最恰当的一项是( ) ①当然,在表现自己的时候,自身的缺点或不足难免会有所暴露。 ②表现自己,适当地张扬个性,更容易在这个竞争激烈的社会中立足。 ③况且缺点被发现或被指出也未必不是一件好事,至少这可以促使我们完善自己。 ④不过,这都是最真实的自己。

车床工件安装知识简介

车床工件安装知识简介 在车床上安装工件所用的附件有三爪卡盘、四爪卡盘、顶尖、花盘、心轴、中心架和跟刀架等。安装工件的主要要求是位置准确、装夹牢固。 一、三爪卡盘安装工件 三爪卡盘是车床上应用最广的通用夹具,适合于安装短圆棒料或盘类(直径较大的盘状工件中,可用反三爪夹持)工件,它的结构见示范教具。当转动小伞齿轮时,大锥齿轮便转动,它背面的平面螺纹就使三个卡爪同时向中心靠近或退出,以夹紧不同直径的工件。三爪卡盘装夹方便能自动定心,但其定心准确度不高,约为0.05~0.15mm。工件上同轴度要求较高的表面应在一次装夹中车出。 二、四爪卡盘安装工件 四爪卡盘的结构见直观教具。四爪卡盘有四个互不相关的卡爪,各卡爪的背面有一半瓣内螺纹与一螺杆相啮合。螺杆端部有一方孔,当用卡盘扳手转动某一螺杆时,相应的卡爪即可移动。如将卡爪调转180°安装,即成反爪。 四爪卡盘由于四个卡爪均可独立移动,因此可安装截面为方形、长方形、椭圆以及其它不规则形状的工件。同时,四爪卡盘比三爪卡盘的夹紧力大,所以常用来安装较大的圆形工件。 由于四爪卡盘的四个卡爪是独立移动的,在安装工件时须进行仔细的找正工件,一般用划针盘按工件内外圆表面或预先划出的加工线找正,其定位精度较低,为0.2~0.5mm。用百分表按工件精加工表面找正,其定位精度可达0.02~0.01mm。 三、顶尖安装工件 较长的(长径比L/D=4~10)或加工工序较多的轴类工件,常采用两顶尖安装。工件装夹在前、后顶尖之间,由卡箍(又称鸡心夹头)、

拨盘带动工件旋转,见直观教具。 1.中心孔的作用及结构 中心孔是轴类工件在顶尖上安装的定位基面。中心孔的60°锥孔与顶尖上的60°锥面相配合;里端的小圆孔,为保证锥孔与顶尖锥面配合贴切,并可存储少量润滑油(黄油)。 中心孔常见的有A型和B型。A型中心孔只有60°锥孔。B型中心孔外端的120°锥面又称保护锥面,用以保护60°锥孔的外缘不被碰坏。A型和B型中心孔,分别用相应的中心钻在车床或专用机床上加工。加工中心孔之前应先将轴的端面车平,防止中心钻折断。 2.顶尖的种类 常用顶尖有普通顶尖(死顶尖)和活顶尖两种。普通顶尖刚性好,定心准确。但与工件中心孔之间因产生滑动摩擦而发热过多,容易将中心孔或顶尖“烧坏”,因此,尾架上是死顶尖,则轴的右中心孔应涂上黄油,以减小摩擦。死顶尖适用于低速加工精度要求较高的工件。活顶尖将顶尖与工件中心孔之间的湍动摩擦改成顶尖内部轴承的滚动摩擦,能在很高的转速下正常地工作;但活顶尖存在一定的装配积累误差,以及当滚动轴承磨损后,会使顶尖产生径向摆动,从而降低了加工精度,故一般用于轴的粗车或半精车。 3.顶尖的安装与校正 顶尖尾端锥面的圆锥角较小,所以前、后顶尖是利用尾部锥面分别与主轴锥孔和尾架套筒锥孔的配合而装紧的。因此,安装顶尖时必须先擦净顶尖锥面和锥孔,然后用力推紧。否则,装不正也装不牢。 校正时,将尾架移向主轴箱,使前、后两顶尖接近,检查其轴线是否重合。如不重合,需将尾架体作横向调节,使之符号要求。否则,车削的外圆将成锥面。 在两顶尖上安装轴件,两端是锥面定位,安装工件方便,不需校正,定位精度较高,经过多次调头或装卸,工件的旋转轴线不变,仍

数据结构第九章排序习题及答案

习题九排序 一、单项选择题 1.下列内部排序算法中: A.快速排序 B.直接插入排序 C. 二路归并排序 D. 简单选择排序 E. 起泡排序 F. 堆排序 (1)其比较次数与序列初态无关的算法是() (2)不稳定的排序算法是() (3)在初始序列已基本有序(除去n个元素中的某k个元素后即呈有序,k<

生产计划与控制课后习题

第一章 1.生产系统的主要组成是什么? 2.“生产”“运作”以及“生产管理”和“生产运作管理”之间的异同是什么? 3.从转换过程讨论制造业和服务业的不同点。 4.简述生产管理和企业其他管理之间的关系。 5.简述敏捷竞争和虚拟组织;柔性制造系统;并行设计之间的关联。 6.试述企业战略目标;企业经营战略和生产策略之间的关系。 7.企业生产过程一般涉及哪些部门?她们之间的关联因素是什么? 8.企业的生产规划和计划控制系统分哪几个层次?每个层次的主要内容是什么? 第二章 1.产品设计工作的特点是什么? 2.价值工程的核心内容是什么? 3.什么事产品寿命周期?救你最近接触的某一新产品,分析是如何反映产品寿命周期规律 的。 4.什么事并行工程?其特点是什么? 5.现代制造技术的发展趋势是什么? 第三章 1生产过程规划和设计的主要内容有哪几项。主要输入输出是什么? 2生产过程可按那几种准则分类?每种准则可各自分出哪几种生产类型? 3简述大量客户化和大量生产、单件生产的异同? 4、何谓产品生命周期和生产过程生命周期,两者各阶段之间有什么关联? 5 生产系统定位的含义是什么?其主要内容是什么? 6、产品—过程矩阵在生产系统定位中的作用是什么? 7、运作杠杆和平衡点分析在生产过程类型选择中有哪些作用? 8、装配流程图和生产过程流程图有何区别?两者在过程规划中的作用是什么?

第四章 1、试比较三类预测方法的基本原理、优缺点与适用范围。 2、什么是生产能力?影响生产能力的因素有哪些?当市场需求与现有生产能力不一致时怎么办? 3、什么是学习曲线?研究学习曲线对编制生产计划有何意义? 4、编制综合计划有哪几种方法,情分析各自的特点和应用时如何选择? 5、试分析综合计划与主生产计划进度计划的关系。 6 某汽车生产商生产的野马型汽车进去销量见表4—18 试用简单预测法和3期及5期移动平均法预测8月份的需求量,用“销量”预测“需求”,这两个术语有什么差别? 7、在旅游区新开的一家礼品店每逢周末营业,营业员是6名临时工,店主希望根据销量调节用人计划,近6周的销售量见表4—19,请提出你的建议。 8、某港口装卸原煤量在过去8个月的数量见表4—20,请用平滑常数a=0.1,0.2,0.3,0.4,0.5进行预测,以绝对平均偏差MAD判断,找出预测误差最小的平滑常数。 9、某公司生产、销售和安装一种明勇太阳能热水器,从过去12个月的销售量看呈现增长趋势,试用二次指数平滑法对未来6个月的销售前景进行预测,病判断预测结果是否可信。你认为除了二次指数平滑法外,还有其他的预测方法吗?为什么?过去12个月的热水器销售表4—21.

工件装夹

工件装夹 .txt41滴水能穿石,只因为它永远打击同一点。42火柴如果躲避燃烧的痛苦,它的一生都将黯淡无光。 2.1熟悉工件定位知识 2.1.1工件装夹概述 1.工件的装夹 在机械加工过程中,为了保证加工精度,在加工前,应确定工件在机床上的位置,并固定好,以接受加工或检测。将工件在机床上或夹具中定位、夹紧的过程”,称为装夹。 工件的安装包含了两个方面的内容: 定位确定工件在机床上或夹具中正确位置的过程,称为定位。 夹紧工件定位后将其固定,使其在加工中保持定位位置不变的操作,称为夹紧。 2.机床夹具 能方便地让工件在机床上定位、夹紧和引导刀具工艺装备,称为夹具。利用夹具定位、夹紧工件,具有操作迅速方便,定位精度较高、稳定,生产率较高的特点。 夹具预先在机床上已调整好位置,工件通过夹具提供的定位装置定位,可在机床确立正确的位置。还可通过夹具上的对刀装置,保证了工件加工表面相对于刀具的正确位置。在使用夹具的情况下,工件与机床、刀具之间的相互位置精度由夹具保证。机床、夹具、刀具和工件所构成的工艺系统在加工中保持正确的位置,从而保证工序的加工精度。 夹具一般由夹具体、定位元件、夹紧装置、对刀或导向装置、连接元件等组成。夹具体是机床夹具的基础;定位元件保证工件在夹具中处于正确的位

置;夹紧装置的作用是将工件压紧夹牢;工件对刀或导向装置用于确定刀具相对于定位元件的正确位置;连接元件是确定夹具在机床上正确位置的元件。 2.1.2工件的定位基本原理 1.工件六点定位原理 一个尚未定位的工件,其空间位置是不确定的,均有六个自由度,如图2-1-1a所示,即沿空间坐标轴X、Y、Z三个方向的移动和绕这三个坐标轴的转动分别以、、;和、、表示。 定位,就是限制自由度。 如图2-1-1b所示的长方体工件,欲使其完全定位,可以设置六个固定点,工件的三个面分别与这些点保持接触,在其底面设置三个不共线的点 1、2、3(构成一个面),限制工件的三个自由度: 、、;侧面设置两个点 4、5(成一条线),限制了、两个自由度;端面设置一个点6,限制自由度。于是工件的六个自由度便都被限制了。这些用来限制工件自由度的固定点,称为定位支承点,简称支承点。 用合理分布的六个支承点限制工件六个自由度的法则,称为六点定位原理。 在应用“六点定位原理”分析工件的定位时,应注意: 定位支承点与工件定位基准面接触,才能起到限制工件自由度的作用。一个定位支承点仅限制一个自由度。 2.工件定位中的几种情况 ⑴完全定位 工件的六个自由度全部被限制的定位,称为完全定位。当工件在x、y、z三个坐标方向上均有尺寸要求或位置精度要求时,一般采用这种定位方式。

句子排序选择题及答案【中考专题训练】

八下期末专题训练:句子排序选择题及答案 班级:姓名: 1.将下列句子重新排序,顺序恰当的一项是() ①给予,是最大的回报。 ②这样你才不会成为一个吝啬而贫穷的人。 ③你所能给予别人的越多,你生命中所拥有的也就越多。 ④要使生命越来越丰富,就要懂得给予。 ⑤事实上,当你懂得分享时,你付出越多,得到的回报越多。 A.④⑤①③②B.①④⑤②③C.④①③②⑤D.①⑤③②④2.将下列句子重新排序,顺序恰当的一项是( ) ①舆论几乎一边倒地把今年冬天的极端天气归咎于全球变暖。 ②因为早在人类出现之前,地球就出现过导致冰川大规模融化的全球变暖,而近年的气温上升很可能只是地球正常的周期性气候变化的一个阶段。 ③也有不少科学家认为,全球变暖对飓风、暖流、风暴、洪水及干旱等极端天气现象的作用被远远夸大了。 ④气候变化在全球引起了激烈的争论。 ⑤这些人认为,气候是复杂的地球整体变化过程中的一个方面,人类活动对其影响究竟能起到多大程度的作用尚无明确证据。 A.④②①③⑤B.①③②④⑤C.①③④②⑤D.④①③⑤② 3.下列句子组成语段,顺序排列正确的一项是( ) ①稍远处是一重重长着青冈树的山冈,近处则是一重重种满玉米的丘陵坡地,波浪一般涌向远方。 ②我看清周围都是玉米地,密密的青纱郁郁葱葱,一望无际。 ③天渐渐亮了,西天起了一层厚厚的云,可是东边的山坡,涌出明亮的朝霞,又是一个炎热的夏日。 ④西望,最远处是一派连绵青山,那是县城附近的西山,看起来很近,实际上很远。 ⑤丘陵之间,蜿蜒着一条修好了很多年但迟迟未能硬化的乡村土公路,在夏天长满杂草,展现勃勃的生机。

A.①④⑤③②B.②③④①⑤C.③①④⑤②D.②③④①⑤4.下列句子排序,最恰当的一项是( ) ①有的书昨天看不懂,过些日子再看才懂得; ②或者一本书读了前面有许多不懂的地方,读到后面才豁然贯通; ③经验证明,有许多书看一遍两遍还不懂得,读三遍四遍就懂得了; ④因此,重要的书必须常常反复阅读,每读一次都会觉得开卷有益。 ⑤也有的似乎已经看懂了,其实不大懂,后来有了一些实际知识,才真正懂得它的意思。 A.①⑤②③④B.③①⑤②④C.④③②①⑤D.③②①⑤④ 5.选出下列句子顺序排列正确的一项( ) ①这是为什么呢? ②所以,长时间盯着屏幕会使眼睛疲劳。 ③因为注视屏幕的时候,屏幕的强光、闪烁、颜色和亮度会迫使眼部肌肉更加努力伸缩,以保持视线清晰。 ④我们的工作、学习和娱乐越来越依赖电子设备,但是长时间盯着屏幕常常让我们的眼睛感到疲劳。 ⑤另外,看电子产品的时候,我们与屏幕的距离和角度也经常变化,会迫使眼睛加倍努力去聚焦。 A.④①③⑤②B.①③⑤④②C.③⑤①④②D.④①③②⑤ 6.依次填入下面一段文字横线处的语句,衔接最恰当的一项是( ) “低慢小”飞行器是指________、________、________,________。 ①飞行速度小于200公里/小时 ②飞行高度在500米以下 ③雷达反射面积小于2平方米的飞行目标 ④主要包括轻型和超轻型飞机、轻型直升机、动力伞、热气球、无人机、航空模型、风筝、孔明灯等 A.④①②③B.③②①④C.②①③④D.①②③④ 7.依次填入下面一段文字横线处的语句,衔接最恰当的一项是( ) “二十四节气主题艺术展”,在展览策划与主题创作上,________,________,________,________。 ①呈现和强化了展览的主题性与活动的整体性

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

命题人:邹祥福审批人:试卷分类(A卷或B卷) A 数学建模竞赛试题: C题:工件加工排序 计划排序问题中的车间作业问题,研究n个工件在m台机器上有序的加工问题,每个工件都有完工的日期(DD,Due date), 加工的时间(PT,Processing time)和工件的价值(VAL,Value if job is selected). 现研究一个工厂生产工序的计划和安排,需要计划与合理安排各个工件在这些机器上加工的先后次序,即拟订加工工序,通过各个工件在各种机器上加工次序的合理安排,使得完成这批工件加工任务所需的总时间最省(注:总时间即为各个零件的加工时间和加工其他零件时它们等待时间之和)或要求整个选择加工的工件价值最大。 有一个工厂现在有12种工件(编号为工件1,工件2,…,工件12)需要在车床,钻床,铣床几种不同的设备上加工。考虑下面的工件加工的排序问题: (一)这12种工件都要求在车床上加工,车床一次只能加工一种工件,这12种工件加工 所需时间,每个工件的完工时间和每个工件的价值如表(1)所示: 表(1) 1)不考虑工件的完工时间和工件的价值,为该工厂安排工件加工的次序,使得完成这批 工件加工任务所需的总时间最省。建立数学模型并给出相应的算法。 2)由于工件必须在它们要求的时间内完工,按照表(1)的数据,为该工厂安排选择加 工工件的种类及加工的次序,使得整个选择加工的工件价值最大。建立数学模型并给出相应的算法。 (二)如果这12种工件都要求先在车床上加工,然后再在钻床上加工(即工件在钻床加工

之前必须先在车床上加工过),每种机器一次只能加工一种工件,这12种工件加工所需时间如表(2)所示: 表(2) 为该工厂安排工件加工的次序,使得完成这批工件加工任务所需的总时间最省。建立数学模型并给出相应的算法。 (三)如果这12种工件都要求先在车床上加工,然后再在钻床上加工,最后再在铣床上加 工,每种机器一次只能加工一种工件,这12种工件加工所需时间如表(三)所示: 表(3) 为该工厂安排工件加工的次序,使得完成这批工件加工任务所需的总时间最省。建立数学模型并给出相应的算法。 (四)对于上述问题你做出的数学模型和相应的算法给出评价。并将模型推广到n个工件 在m台机器上加工的一般的工件排序问题,给出你的想法和解决问题的思路。

习题16(排序)

习题16(排序) 一、选择题 1、对n个不同的关键字由小到大进行冒泡排序,在下列()情况下比较的次数最多。 A)从小到大排列好的 B)从大到小排列好的 C)元素无序 D)元素基本有序 2、堆是一种()排序。 A)插入 B)选择 C)交换 D)归并 3、堆的形状是一棵()。 A)二叉排序树 B)满二叉树 C)完全二叉树 D)平衡二叉树 4、在含有n个关键字的小根堆(堆顶元素最小)中,关键字最大的记录有可能存储在()位置上。 A)?n/2? B)?n/2? -1 C)1 D)?n/2? +2 5、以下序列不是堆的是( )。 A)(100,85,98,77,80,60,82,40,20,10,66) B)(100,98,85,82,80,77,66,60,40,20,10) C)(10,20,40,60,66,77,80,82,85,98,100) D)(100,85,40,77,80,60,66,98,82,10,20) 6、下列四个序列中,哪一个是堆()。 A)75,65,30,15,25,45,20,10 B)75,65,45,10,30,25,20,15 C)75,45,65,30,15,25,20,10 D)75,45,65,10,25,30,20,15 7、在对n个元素的序列进行排序时,堆排序所需要的附加存储空间是()。 A)O(log2n) B)O(1) C)O(n) D)O(nlog2n) 8、有一组数据(15,9,7,8,20,-1,7,4),用堆排序的筛选方法建立的初始堆为() A)-1,4,8,9,20,7,15,7 B)-1,7,15,7,4,8,20,9 C)-1,4,7,8,20,15,7,9 D)A,B,C均不对 9、对一组记录的关键码{46,79,56,38,40,84}采用堆排序,则初始化堆后最后一个元素是()。 A)84 B)46 C)56 D)38 10、用二分法插入排序方法进行排序,被排序的表(或序列)应采用的数据结构是()。 A)单链表 B)数组 C)双向链表 D)散列表 11、在所有排序方法中,关键码比较的次数与记录的初始排序次序无关的是( ) A)希尔排序 B)冒泡排序 C)直接插入排序 D)直接选择排序 12、用归并排序方法,最坏情况下,所需时间为( ) A)O(n) B)O(n2) C)O(nlog2n) D)O(nlog2n) 13、具有12个记录的序列,采用冒泡排序最少的比较次数是( ) A)1 B)144 C)11 D)66 14、用冒泡排序对序列18,14,6,27,8,12,16,52,10,26,47,29,41,24进行排序,共进行( )次比较。 A)33 B)45 C)70 D)91 15、当初始序列已经按键值有序时,用直接插入算法进行排序,需要比较的次数为( ) A)n2 B)n logan C) log2n D)n-1 16、下面四种内排序方法中,要求内存容量最大的是( ) A)插入排序 B)选择排序 C)快速排序 D)归并排序 17、在文件局部有序或文件长度较小的情况下,最佳的排序方法是( ) A)直接插入排序 B)冒泡排序 C)简单选择排序 D)都不对 18、若待排序列已基本有序,要使它完全有序,从关键码比较次数和移动次数考虑,应当使用 ( )。 A)归并排序 B)直接插入排序 C)直接选择排序 D)快速排序 19、设有1000个无序的元素,希望用最快的速度挑选出其中10个最大的元素,最好的方法是()。 A)起泡排序 B)快速排序 C)堆排序 D)基数排序 20、在待排序的元素序列基本有序的前提下,效率最高的排序方法是()。 A)插入排序 B)选择排序 C)快速排序 D)归并排序

工件加工问题

B题工件加工问题 第十三组 执笔人:侯慧慧

B 题:工件加工问题 摘要 本题目要求中十四个工件都在同一台机床上加工,分别求出在给定的三个条件下的最优加工工序,且一些工件的加工必须在某些工件的加工之后进行。故考虑设0-1变量,建立线性规划模型求解。构造0-1矩阵 其中,A 表示第一号工件,B 表示第二号工件,L L ,N 表示第十四号工件;1i A =表示第一号工件的加工次序为i ,1j B =表示第二号工件的加工次序为j ,L L ,1k N =表示第十四号工件的加工次序为k 。 问题1构造目标函数: 其中,i Y 表示第i 次加工的工件的加工时间。根据题目条件列出约束条件,用Lingo 编程,求解得最佳加工工序为: 问题2构造目标函数:14 2345i i Min Z ==+∑,同样根据题目条件列出约束条件, 用Lingo 编程,求解得最佳加工工序为: 问题3构造目标函数: 也根据题目条件列出约束条件,用Lingo 编程,求解得最佳加工工序为: 关键词:0-1变量 线性规划 最优解 一、问题的重述 现有14件工件等待在一台机床上加工,某些工件的加工必须安排在另一些工件完工以后才能开始,第j 号工件的加工时间j t 及先期必须完工的工件号i 由

两个阶段),试设计一个满足条件的加工顺序,使各个加工工件的完工时间之和最小。 (2)若第j 号工件紧接着第i 号工件完工后开工,机床需要花费的准备时间是ij t , 试设计一个满足条件的加工顺序,使机床花费的总时间最小。 (3)假定工件的完工时间(包括等待与加工两个阶段)超过一确定时间u ,则需支付一定的补偿费用,其数值等于超过的时间与费用率之积(各工件的补偿率j w 见下表): 1 2 3 4 5 6 7 8 9 10 11 12 13 14 12 10 15 16 10 11 10 8 5 4 10 10 8 12 100,0,ij u t ==安排一个加工顺序,使得总补偿费最小。 二、基本假设与符号说明 2.1基本假设 (1)假设机床在加工过程中不会出现损坏的情况,一切运转正常; (2)不考虑到其他因素,如每个工件的装卸时间和刀具及夹具更换的时间; (3)每个工件都一次性加工成功,不会出现返工的情况。 2.2符号说明 k t '——第()1,2,,14k k =L 个加工的工件的加工时间 k T ——第()1,2,,14k k =L 个加工的工件的完成时间 T ——14个工件的完工时间之和 i Z ——第i 次加工的工件的准备时间()1,2,,14i =L i Y ——第i 次加工的工件的加工时间()1,2,,14i =L A ——第一号工件 B ——第二号工件 N ——第十四号工件 1i A =——第一号工件的加工次序为i 1j B =——第二号工件的加工次序为j

第7章 排序 习题参考答案

习题七参考答案 一、选择题 1.内部排序算法的稳定性是指( D )。 A.该排序算法不允许有相同的关键字记录 B.该排序算法允许有相同的关键字记录 C.平均时间为0(n log n)的排序方法 D.以上都不对 2.下面给出的四种排序算法中,( B )是不稳定的排序。 A.插入排序B.堆排序C.二路归并排序D.冒泡排序 3. 在下列排序算法中,哪一种算法的时间复杂度与初始排序序列无关(D )。 A.直接插入排序B.冒泡排序C.快速排序D.直接选择排序 4.关键字序列(8,9,10,4,5,6,20,1,2)只能是下列排序算法中( C )的两趟排序后的结果。 A.选择排序 B.冒泡排序 C.插入排序 D.堆排序 5.下列排序方法中,( D )所需的辅助空间最大。 A.选择排序B.希尔排序C.快速排序D.归并排序 6.一组记录的关键字为(46,79,56,38,40,84),则利用快速排序的方法,以第一个记录为支点得到的一次划分结果为(C )。 A.(38,40,46,56,79,84) B.(40,38,46,79,56,84) C.(40,38,46,56,79,84) D.(40,38,46,84,56,79) 7.在对一组关键字序列{70,55,100,15,33,65,50,40,95},进行直接插入排序时,把65插入,需要比较( A )次。 A. 2 B. 4 C. 6 D. 8 8.从待排序的序列中选出关键字值最大的记录放到有序序列中,该排序方法称为( B )。 A. 希尔排序 B. 直接选择排序 C. 冒泡排序 D. 快速排序 9.当待排序序列基本有序时,以下排序方法中,( B )最不利于其优势的发挥。 A. 直接选择排序 B. 快速排序 C.冒泡排序 D.直接插入排序 10.在待排序序列局部有序时,效率最高的排序算法是( B )。 A. 直接选择排序 B. 直接插入排序 C. 快速排序 D.归并排序 二、填空题 1.执行排序操作时,根据使用的存储器可将排序算法分为内排序和外排序。 2.在对一组记录序列{50,40,95,20,15,70,60,45,80}进行直接插入排序时,当把第7个记录60插入到有序表中 时,为寻找插入位置需比较 3 次。 3.在直接插入排序和直接选择排序中,若初始记录序列基本有序,则选用直接插入排序。 4.在对一组记录序列{50,40,95,20,15,70,60,45,80}进行直接选择排序时,第4次交换和选择后,未排序记录为 {50,70,60,95,80}。 5.n个记录的冒泡排序算法所需的最大移动次数为3n(n-1)/2 ,最小移动次数为0 。 6.对n个结点进行快速排序,最大的比较次数是n(n-1)/2 。 7.对于堆排序和快速排序,若待排序记录基本有序,则选用堆排序。 8.在归并排序中,若待排序记录的个数为20,则共需要进行5 趟归并。 9.若不考虑基数排序,则在排序过程中,主要进行的两种基本操作是关键字的比较和数据元 素的移动。 10.在插入排序、希尔排序、选择排序、快速排序、堆排序、归并排序和基数排序中,平均比较次数最少的是快速排序,需要内存容量最多的是基数排序。 三、算法设计题 1.试设计算法,用插入排序方法对单链表进行排序。 参考答案: public static void insertSort(LinkList L) {

相关文档