如何用lingo做线性规划的数学建模提汽车装配是汽车生产的一个重要组成部分.为保证装配质量,提高劳动生产率,生产厂家会根据汽车的结构特点,将其分解成为可单独组织装配的单元(称为操

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/15 03:39:49
如何用lingo做线性规划的数学建模提汽车装配是汽车生产的一个重要组成部分.为保证装配质量,提高劳动生产率,生产厂家会根据汽车的结构特点,将其分解成为可单独组织装配的单元(称为操

如何用lingo做线性规划的数学建模提汽车装配是汽车生产的一个重要组成部分.为保证装配质量,提高劳动生产率,生产厂家会根据汽车的结构特点,将其分解成为可单独组织装配的单元(称为操
如何用lingo做线性规划的数学建模提
汽车装配是汽车生产的一个重要组成部分.为保证装配质量,提高劳动生产率,生产厂家会根据汽车的结构特点,将其分解成为可单独组织装配的单元(称为操作),然后合理地安排人员流水作业进行装配.部分操作间存在优先关系,即必须某项操作完成,另一项操作才能开始装配.每名工人需要完成几项操作(这几项操作合在一起称为一个工位,即该流水线需要的工人数),要求各个工位的实际作业时间应尽可能相等.
某装配线共有16项操作,操作的作业时间(操作上方的数字)及优先关系见下图,假设装配线有3个工位,试建立数学模型,合理安排装配计划,给出各项操作的作业起始和结束时间,使得各工位的实际作业时间尽可能相等.
我运行了,感觉并不是非常满意,后来我自己也编出来了.不管怎样,还是非常谢谢你的
model:
sets:
worker/1..3/;
operat/1..16/:weight;
pred(operat,operat)/1,2 1,3 1,4 2,5 3,6 4,6 5,7 5,8 6,8 7,9 8,10 8,11 9,12 9,13 10,14 11,14 12,16 13,15 14,15 15,16/;
txs(operat,worker):x;
endsets
data:
weight=7,9,13,15,22,14,11,8,38,21,16,30,14,17,26,25;
enddata
@for(operat(i):@sum(worker(k):x(i,k)) = 1);
@for(pred(i,j):@sum(worker(k):k*x(j,k) - k*x(i,k)) >= 0);
@for(worker(k):@sum(operat(i):weight(i)*x(i,k))

如何用lingo做线性规划的数学建模提汽车装配是汽车生产的一个重要组成部分.为保证装配质量,提高劳动生产率,生产厂家会根据汽车的结构特点,将其分解成为可单独组织装配的单元(称为操
mark 等图