⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mypso.java

📁 交通分配的粒子分配群优化研究code
💻 JAVA
字号:
// Decompiled by Jad v1.5.8e. Copyright 2001 Pavel Kouznetsov.
// Jad home page: http://www.geocities.com/kpdus/jad.html
// Decompiler options: packimports(3) 
// Source File Name:   MyPSO.java

package cn.edu.bit.util.arithmetic.wangli;



// Referenced classes of package cn.edu.bit.util.arithmetic.oldPSO:
//            PSOArirhmetic, Particle
//制造单元
public class MyPSO extends PSOArirhmetic
{
	 // static final int task = 8;
	    static final int PNum = 200;
	    static final int PDim = 19;
	    static double Xup[] = null;
	    static double Xdown[] = null;


    public MyPSO(int dim, int num)
    {
        super(dim, num);
    }

    public static void main(String args[])
    {
    	
       System.out.println("start-bb");
        MyPSO.Xup = new double[MyPSO.PDim];//PDim为粒子维数19,存储最大值
        MyPSO.Xdown = new double[MyPSO.PDim];
        int k=0;
        for(int j=0;j<Init.row.length;j++)
        {
        	for(int i=0;i<Init.row[j];i++){        		
        		MyPSO.Xup[k] = Init.q[j];   
        		MyPSO.Xdown[k]=0;
        		k++;
        	} 
        }       

        PSOArirhmetic pso = new MyPSO(MyPSO.PDim, MyPSO.PNum);
        pso.SetXup(MyPSO.Xup);
        pso.SetXdown(MyPSO.Xdown);
        pso.SetVmax(0.9);
        pso.SetCom();
        System.out.println("Run Now:");
        pso.Run(100);
        //pso.getExcelBest();
        pso.GetBest(MyPSO.Xup);       
        System.out.println("end:");
        //pso.Run(0.999D);
        //System.out.println("second Result is:" + pso.GetBest(Xup));
        pso.close();
    }

	boolean SetCom(double d, double[] ad, double[][] ad1, int i) {
		// TODO Auto-generated method stub
		return false;
	}

	

    double GetFit(Particle particle)
    {
    	double sumtime =0.0;
    	double[] matime=new double[Init.col];
    	for(int j = 0; j < particle.Dim; j++){
    		sumtime=sumtime+particle.X[j]*Init.cost[j];
    		for(int i=0;i<Init.col;i++){
    			matime[i]=matime[i]+particle.X[j]*Init.tour[j][i];
    		}
    	}
    	for(int i=0;i<Init.col;i++){
    		if(matime[i]>Init.saturq[i]){
    			sumtime=sumtime+sumtime*2;
    		}
    	}

		return sumtime;
    }
//
//    boolean SetCom(double fit, double opt_best[], double ad[][], int i)
//    {
//        return true;
//    }

  
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -