装配线调度问题(线性规划)

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
{
int i,j;
f1[1]=e1+b[1][1];
f2[1]=e2+b[2][1];
for(j=2; j<=n; ++j)
{
if((f1[j-1]+b[1][j])<=(f2[j-1]+t[2][j-1]+b[1][j]))
{
f1[j]=f1[j-1]+b[1][j];
l1[j]=1;
}
else
{
for(int i=1; i<n; ++i)
cin>>t[2][i];
cout<<endl;
FASTEST_WAY(n);
cout<<"通过所有最优站点所用时间为:"<<" "<<ff<<endl;
cout<<"最优站点:"<<endl;
OUTPUT_STATION(n);
return 0;
}
运行结果:
{
if(i == 1)
i = l1[j];
else
i = l2[j];
q[j-1]=i;
}
for(int k=1; k<=n; ++k)
{
cout << "line " << q[k]<< ", station " <<k<< endl;
}
return 0;
}
int main()
{
int i,n;
cout<<"请输入站点个数n:"<<endl;
l2[j]=1;
}
if(f1[n]+o1<=f2[n]+o2)
{
ff=f1[n]+o1;
ll=1;
}
else
{
ff=f2[n]+o2;
ll=2;
}
}
return 0;
}
int OUTPUT_STATION(int n)
{
int i= ll;
int q[n+1];
q[n]=ll;
for(int j=n; j>=2; --j)
cin>>n;
cout<<"进入装配线1和2的进入时间:"<<endl;
cin>>e1>>e2;
cout<<"请输入退出装配线1和2的退出时间:"<<endl;
cin>>o1>>o2;
cout<<"请输入在装配线1各站点所需时间:"<<endl;
for(i=1; i<=n; ++i)
{
cin>>b[1][i];
f1[j]=(f2[j-1]+t[2][j-1]+b[1][j]);
l1[j]=2;
}
if(f2[j-1]+b[2][j]<=f1[j-1]+t[1][j-1]+b[2][j])
{
f2[j]=f2[j-1]+b[2][j];
l2[j]=2;
}
else
{
f2[j]=f1[j-1]+t[1][j-1]+b[2][j];
装配线调度问题
C++代码
#include<iostream>
using nameswk.baidu.comace std;
const int M=100;
int e1,e2,o1,o2;
int b[M][M];
int t[M][M];
int f1[M],f2[M];
int l1[M],l2[M];
int ff,ll;
int FASTEST_WAY(int n)
}
cout<<"请输入在装配线2各站点所需时间:"<<endl;
for(i=1; i<=n; ++i)
{
cin>>b[2][i];
}
cout << "输入装配线1上的站到装配线2上的站所需时间: ";
for(int i=1; i<n; ++i)
cin>>t[1][i];
cout<<"输入装配线2上的站到装配线1上的站所需时间: ";
相关文档
最新文档