資源簡介
粒子群優(yōu)化算法解決旅行商(TSP)問題,求解全國31個(gè)省會(huì)城市的一次歷遍的最短距離。代碼可運(yùn)行

代碼片段和文件信息
package?pso;
import?java.awt.*;
import?java.awt.event.*;
import?java.io.ByteArrayInputStream;
import?java.io.InputStream;
import?javax.swing.*;
import?javax.swing.event.*;
public?class?Pso?extends?frame?implements?Runnable
{
????private?static?int?particleNumber;??//粒子的數(shù)量
????private?static?int?iterations;??????//迭代的次數(shù)
????private?static?int?k=1;?????????????//記錄迭代的次數(shù)
????final?private?static?float?C1=2;????//學(xué)習(xí)因子
????final?private?static?float?C2=2;
????final?private?static?float?WMIN=-200;
????final?private?static?float?WMAX=200;
????final?private?static?float?VMAX=200;
????private?static?float?r1;???????????//隨機(jī)數(shù)0-1之間
????private?static?float?r2;
????private?static?float?x[][];
????private?static?float?v[][];
????private?static?float?xpbest[][];
????private?static?float?pbest[];??????
????private?static?float?gbest=0;
????private?static?float?xgbest[];
????private?static?float?w;???????????//慣性因子
????private?static?float?s;
????private?static?float?h;
????private?static?float?fit[];
????public?Sounds?sound;
????
????//粒子群的迭代函數(shù)
public?void?lzqjs()
{
??
w=(float)(0.9-k*(0.9-0.4)/iterations);
????????for(int?i=0;i ????????{
???????????????????fit[i]=?(float)(1/(Math.pow(x[i][0]2)+Math.pow(x[i][1]2)));?//求適值函數(shù)最大值
???????????????????System.out.print(“粒子“+i+“本次適應(yīng)值函數(shù)f為:“?+?fit[i]);
???????????????????System.out.println();
???????????????????if(fit[i]>pbest[i])
???????????????????{
??????????????????? pbest[i]=fit[i];
??????????????????? xpbest[i][0]=x[i][0];
??????????????????? xpbest[i][1]=x[i][1];
???????????????????}
???????????????????if(pbest[i]>gbest)
???????????????????{
??????????????????? gbest=pbest[i];
??????????????????? xgbest[0]=xpbest[i][0];
??????????????????? xgbest[1]=xpbest[i][1];
???????????????????}
?????????}
?????????for(int?i=0;i ?????????{
???????????????????for(int?j=0;j<2;j++)
???????????????????{
???????????????? ???//粒子速度和位置迭代方程:
??????????????????? v[i][j]=(float)(w*v[i][j]+C1*Math.random()*(xpbest[i][j]-x[i][j])+C2*Math.random()*(xgbest[j]-x[i][j]));
???????????????????
??????????????????? x[i][j]=(float)(x[i][j]+v[i][j]);
???????????????????
???????????????????}
??????????????? System.out.print(“粒子“+i+“本次X1的速度變化幅度:“+v[i][0]+“;本次X2的速度變化幅度:“+v[i][1]);
????????????????System.out.println();
???????????? System.out.print(“粒子“+i+“本次X1為:“+x[i][0]+“;本次X2為:“+x[i][1]);
????????????????System.out.println();
?????????}
}
public?static?void?main(String[]?args)
{
particleNumber=Integer.parseInt(JOptionPane.showInputDialog(“請輸入粒子個(gè)數(shù)1-500)“));
iterations=Integer.parseInt(JOptionPane.showInputDialog(“請輸入迭代次數(shù)“));
x=new?float?[particleNumber][2];
v=new?float?[particleNumber][2];
fit=new?float?[particleNumber];????//存儲適值函數(shù)值
pbest=new?float?[particleNumber];??//存儲整個(gè)粒子群的最有位置
xpbest=new?float?[particleNumber][2];
xgbest=new?float?[2];
for(int?i=0;i {
//對數(shù)組的初始化操作
?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----
?????文件????????301??2013-12-23?17:04??粒子群算法\代碼\PSO\.classpath
?????文件????????379??2013-12-23?17:04??粒子群算法\代碼\PSO\.project
?????文件????????629??2013-12-23?17:04??粒子群算法\代碼\PSO\.settings\org.eclipse.jdt.core.prefs
?????文件?????525316??2013-12-24?19:55??粒子群算法\代碼\PSO\033_new.wav
?????文件?????507552??2013-12-24?20:20??粒子群算法\代碼\PSO\050.WAV
?????文件????????521??2016-11-15?21:24??粒子群算法\代碼\PSO\bin\pso\Pso$gbck.class
?????文件???????4987??2016-11-15?21:24??粒子群算法\代碼\PSO\bin\pso\Pso.class
?????文件???????3477??2016-11-15?21:24??粒子群算法\代碼\PSO\bin\pso\Sounds.class
?????文件???????5188??2016-11-14?22:05??粒子群算法\代碼\PSO\src\pso\Pso.java
?????文件???????2872??2013-12-24?19:59??粒子群算法\代碼\PSO\src\pso\Sounds.java
?????文件????????258??2010-07-18?16:19??粒子群算法\代碼\TSP代碼實(shí)現(xiàn)\liwei\Arrange.m
?????文件????????624??2010-07-18?16:19??粒子群算法\代碼\TSP代碼實(shí)現(xiàn)\liwei\GenerateChangeNums.m
?????文件????????159??2010-07-18?16:19??粒子群算法\代碼\TSP代碼實(shí)現(xiàn)\liwei\HoldByOdds.m
?????文件????????297??2010-07-18?16:20??粒子群算法\代碼\TSP代碼實(shí)現(xiàn)\liwei\PathDistance.m
?????文件????????418??2010-07-18?16:20??粒子群算法\代碼\TSP代碼實(shí)現(xiàn)\liwei\PathExchange.m
?????文件????????238??2013-12-25?15:41??粒子群算法\代碼\TSP代碼實(shí)現(xiàn)\liwei\PathPlot.m
?????文件???????3348??2013-12-25?18:38??粒子群算法\代碼\TSP代碼實(shí)現(xiàn)\liwei\pso_tsp.m
?????目錄??????????0??2016-11-15?21:24??粒子群算法\代碼\PSO\bin\pso
?????目錄??????????0??2015-10-04?21:58??粒子群算法\代碼\PSO\src\pso
?????目錄??????????0??2015-10-04?21:58??粒子群算法\代碼\PSO\.settings
?????目錄??????????0??2016-11-15?21:24??粒子群算法\代碼\PSO\bin
?????目錄??????????0??2015-10-04?21:58??粒子群算法\代碼\PSO\src
?????目錄??????????0??2015-10-04?21:58??粒子群算法\代碼\TSP代碼實(shí)現(xiàn)\liwei
?????目錄??????????0??2015-10-04?21:58??粒子群算法\代碼\PSO
?????目錄??????????0??2015-10-04?21:58??粒子群算法\代碼\TSP代碼實(shí)現(xiàn)
?????目錄??????????0??2015-10-04?21:58??粒子群算法\代碼
?????目錄??????????0??2018-01-25?21:21??粒子群算法
-----------?---------??----------?-----??----
??????????????1056564????????????????????27
............此處省略0個(gè)文件信息
評論
共有 條評論