日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

装配线调度问题

發布時間:2025/4/14 编程问答 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 装配线调度问题 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
參考:http://www.cnblogs.com/submarine/archive/2011/06/11/2078636.html 裝配一輛汽車,有兩條裝配線分別有n個裝配點,每條裝配線在進出所花時間為e[i],x[i] (i=0,1),每個裝配點所需時間a[i][j](i=0,1;j=1,2,...,n),從一條裝配線i的第j個裝配點到另一條裝配線的第j+1個裝配點所需時間t[i][j](i=0,1;j=1,2,...,n-1). S[1,1]處理完成所經歷的時間 = e1 + a[1,1]; S[1,j]?(2<=j<=n)處理完成所經歷的時間 =min {S[1,j-1] 處理完成所經歷的時間 + a[1,j], S[2,j-1]處理完成所經歷的時間 + t[2,j-1] + a[1,j]}; “出口”處理完成所經歷的時間 = min {S[1,n]處理完成所經歷的時間 + x[1], S[2,n]處理完成所經歷的時間 + x[2]}。 于是得到以下遞推式(截至《算法導論》): # define MAX n; int way[3][MAX + 1];void FindWay(int e[3], int a[3][MAX + 1], int t[3][MAX + 1], int x[3], int sum[3][MAX + 1]) {int i, j, k;sum[1][1] = e[1] + a[1][1];sum[2][1] = e[2] + a[2][1];for (i = 2; i <= MAX; i++){//line 1if (sum[1][i - 1] + a[1][i] > sum[2][i - 1] + t[2][i - 1] + a[1][i]){sum[1][i] = sum[2][i - 1] + t[2][i - 1] + a[1][i];way[1][i] = 2;//way[1][i]記錄station[1][i]的前一個station所屬的line }else{sum[1][i] = sum[1][i - 1] + a[1][i];way[1][i] = 1;}//line 2if (sum[2][i - 1] + a[2][i] > sum[1][i - 1] + t[1][i - 1] + a[2][i]){sum[2][i] = sum[1][i - 1] + t[1][i - 1] + a[2][i];way[2][i] = 1;}else{sum[2][i] = sum[2][i - 1] + a[2][i];way[2][i] = 2;}}if (sum[1][MAX] + x[1] > sum[2][MAX] + x[2]){cout << "mintime:" << sum[2][MAX] + x[2] << endl;PrintWay(2);}else{cout << "mintime:" << sum[1][MAX] + x[1] << endl;PrintWay(1);} }void PrintWay(int exitline)//反序輸出 {int i;cout << "line:" << exitline << "-->" << "station:" << MAX << endl;for (i = MAX; i >=2 ; i--){cout << "line:" << way[exitline][i] << "-->" << "station:" << i - 1 << endl;exitline = way[exitline][i];} } View Code

?

轉載于:https://www.cnblogs.com/mmcmmc/p/3892124.html

總結

以上是生活随笔為你收集整理的装配线调度问题的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。