資源簡介
人工蜂群算法解決柔性作業車間調度問題,用Java寫的。參考論文:陳少, 吉衛喜, 仇永濤, et al. 改進人工蜂群算法求解柔性作業車間調度問題[J]. 組合機床與自動化加工技術, 2018, No.531(05):166-169.

代碼片段和文件信息
import?org.apache.poi.ss.formula.functions.T;
import?util.Pro;
import?java.util.ArrayList;
public?class?ABC?{
????int?POPSIZE=100;
????int?FoodNum=POPSIZE/2;
????int?limit=100;
????int?maxCycle=2500;
????int?[][]?Time;
????Food[]?food;
????int?bestnum;
????int?best_time;
????double?r=0.5;//保留比
????ABC(int?p?int?m?int?w?ArrayListpronumint?[][]?time)
????{
????????food=new?Food[FoodNum];
????????Time=time;
????????for(int?i=0;i ????}
????public?void?Init()
????{
????????int?min_time=Integer.MAX_VALUE;
????????for(int?i=0;i ????????{
????????????food[i].Init(Time);
????????????food[i].CalTime(Time);
????????????if(food[i].getTime() ????????????{
????????????????bestnum=i;
????????????????min_time=food[i].getTime();
????????????}
????????}
????????best_time=food[bestnum].getTime();
????}
????public?void?EmployedBees()
????{
????????Order();
????????//先進
????????for?(int?i?=?0;?i? ????????????Food?temp=food[i].clone();
????????????food[i].Swap();
????????????food[i].Insert();
????????????food[i].CalTime(Time);
????????????if(temp.getTime() ????????}
????????//后進
????????for?(int?i?=?FoodNum/2;?i?????????????Food?temp=food[i].clone();
????????????Cross(food[i]food[bestnum].clone());
????????????food[i].Reserse();
????????????food[i].CalTime(Time);
????????????if(temp.getTime() ????????}
????????/*Food?best=food[bestnum].clone();
????????for?(int?i?=?0;?i?????????????Food?temp=food[i].clone();
????????????Cross(food[i]best.clone());
????????????food[i].CalTime(Time);
????????????if(temp.getTime() ????????}
????????for?(int?i?=?0;?i?????????????Food?temp=food[i].clone();
????????????food[i].NewIndividual(Time);
????????????food[i].CalTime(Time);
????????????if(temp.getTime() ????????}
????????FindBest();*/
????}
????public?void?OnlookerBees()
????{
????????//錦標賽選擇一個食物源
????????int?ijkmin;
????????do{
????????????i=(int)(Math.random()*1000)?%?FoodNum;
????????????j=(int)(Math.random()*1000)?%?FoodNum;
????????????k=(int)(Math.random()*1000)?%?FoodNum;
????????}while?(i!=j&&i!=k&&j!=k);
????????min=food[i].getTime() ????????min=food[k].getTime()
????????//隨機選一個個體交叉
????????do{
????????????i=(int)(Math.random()*1000)?%?FoodNum;
????????}while?(i!=min);
????????Food?temp_i=food[i].clone();
????????Food?temp_min=food[min].clone();
????????Cross(temp_itemp_min);
????????temp_i.CalTime(Time);
????????temp_min.CalTime(Time);
????????if(temp_i.getTime() ????????if(temp_min.getTime()
????????FindBest();
????}
????//POX方
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2019-08-20?14:53??蜂群算法\
?????目錄???????????0??2019-08-20?14:52??蜂群算法\ABC\
?????目錄???????????0??2019-08-20?14:52??蜂群算法\ABC\.idea\
?????文件?????????734??2019-08-05?15:45??蜂群算法\ABC\.idea\compiler.xm
?????文件??????????97??2019-08-05?15:45??蜂群算法\ABC\.idea\desc
?????文件?????????196??2019-08-05?15:46??蜂群算法\ABC\.idea\encodings.xm
?????文件?????????409??2019-08-05?15:46??蜂群算法\ABC\.idea\misc.xm
?????文件?????????253??2019-08-05?15:46??蜂群算法\ABC\.idea\modules.xm
?????文件????????8915??2019-08-09?10:29??蜂群算法\ABC\.idea\uiDesigner.xm
?????文件?????????173??2019-08-05?15:45??蜂群算法\ABC\.idea\vcs.xm
?????文件????????4047??2019-08-20?14:47??蜂群算法\ABC\.idea\workspace.xm
?????文件?????????437??2019-08-05?15:45??蜂群算法\ABC\ABC.iml
?????目錄???????????0??2019-08-20?14:52??蜂群算法\ABC\out\
?????目錄???????????0??2019-08-20?14:52??蜂群算法\ABC\out\production\
?????目錄???????????0??2019-08-20?14:52??蜂群算法\ABC\out\production\ABC\
?????文件????????4609??2019-08-20?14:22??蜂群算法\ABC\out\production\ABC\ABC.class
?????文件????????4450??2019-08-11?15:17??蜂群算法\ABC\out\production\ABC\FileRead.class
?????文件????????6325??2019-08-11?15:17??蜂群算法\ABC\out\production\ABC\Food.class
?????目錄???????????0??2019-08-11?15:17??蜂群算法\ABC\out\production\ABC\learn\
?????文件????????4938??2019-08-11?15:17??蜂群算法\ABC\out\production\ABC\learn\beeColony.class
?????文件????????1624??2019-08-20?11:02??蜂群算法\ABC\out\production\ABC\Main.class
?????目錄???????????0??2019-08-20?14:52??蜂群算法\ABC\out\production\ABC\util\
?????文件?????????281??2019-08-11?15:17??蜂群算法\ABC\out\production\ABC\util\Mtime.class
?????文件?????????278??2019-08-11?15:17??蜂群算法\ABC\out\production\ABC\util\Pro.class
?????目錄???????????0??2019-08-20?14:52??蜂群算法\ABC\src\
?????文件????????6564??2019-08-20?14:22??蜂群算法\ABC\src\ABC.java
?????文件????????3998??2019-08-06?17:07??蜂群算法\ABC\src\FileRead.java
?????文件????????7644??2019-08-11?10:15??蜂群算法\ABC\src\Food.java
?????目錄???????????0??2019-08-11?15:17??蜂群算法\ABC\src\learn\
?????文件???????13986??2019-08-11?15:17??蜂群算法\ABC\src\learn\beeColony.java
?????文件?????????769??2019-08-20?11:02??蜂群算法\ABC\src\Main.java
............此處省略25個文件信息
- 上一篇:JAVA圖形化界面實現學生成績的錄入與管理
- 下一篇:java源代碼 各種都有
評論
共有 條評論