• 大小: 101KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-05-21
  • 语言: C#
  • 标签: 遗传算法  

资源简介

遗传算法最短路径c#实现

资源截图

代码片段和文件信息

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace simpleGA
{
    public partial class Form1 : Form
    {
        Bitmap image;
        Graphics formGraphics;
        double Max_ratio;//图像放大比率

        static int max = 101;
        static int maxqvehicle = 1024;
        static int maxdvehicle = 1024;
        Random ra;

        int K;//最多使用车数目
        int KK;//实际使用车数
        int L;//客户数目染色体长度
        double Pw;// W1 W2 W3;//惩罚权重
        double Pc Pm;//交叉概率和变异概率

        int scale;//种群规模
        int T;//进化代数
        int t;//当前代数

        int[] bestGh = new int[max];//所有代数中最好的染色体
        double[] timeGh = new double[max];//所有代数中最好的染色体
        double bestEvaluation;//所有代数中最好的染色体的适应度
        int bestT;//最好的染色体出现的代数

        double decodedEvaluation;//解码后所有车辆所走路程总和........................

        double[] vehicle = new double[max 3];//K下标从1开始到K,0列表示车的最大载重量,1列表示车行驶的最大距离,2列表示速度
        int[] decoded = new int[max];//染色体解码后表达的每辆车的服务的客户的顺序
        double[] guest_distance = new double[max max];//客户距离
        double[] guest_weight = new double[max];//客户需求量

        int[] oldGroup = new int[max max];//初始种群,父代种群,行数表示种群规模,一行代表一个个体,即染色体,列表示染色体基因片段
        int[] newGroup = new int[max max];//新的种群,子代种群
        double[] Fitness = new double[max];//种群适应度,表示种群中各个个体的适应度
        double[] Pi = new double[max];//种群中各个个体的累计概率

        double[] x1 = new double[max];
        double[] y1 = new double[max];

        //初始化函数
        void initdata()
        {
            int i j;

            Max_ratio = 20;//图像显示比例
            decodedEvaluation = 0;//解码后所有车辆所走路程总和

            Pw = 300;//车辆超额惩罚权重
            L = 20;//客户数目染色体长度
            K = 5;//最大车数目
            scale = 100;//种群规模
            Pc = 0.9;//交叉概率
            Pm = 0.9;//变异概率,实际为(1-Pc)*0.9=0.09
            T = 400;//进化代数

            bestEvaluation = 0;//所有代数中最好的染色体的适应度


        //车辆最大载重和最大行驶
        vehicle[10]=8.0;
        vehicle[11]=50.0;
        vehicle[20]=8.0;
        vehicle[21]=50.0;
        vehicle[30]=8.0;
        vehicle[31]=50.0;
        vehicle[40]=8.0;
        vehicle[41]=50.0;
        vehicle[50]=8.0;
        vehicle[51]=50.0;

            vehicle[6 0] = maxqvehicle;//限制最大
            vehicle[6 1] = maxdvehicle;

            //客户坐标
        x1[0]=14.5;y1[0]=13.0;guest_weight[0]=0.0;
        x1[1]=12.8;y1[1]=8.5;guest_weight[1]=0.1;
        x1[2]=18.4;y1[2]=3.4;guest_weight[2]=0.4;
        x1[3]=15.4;y1[3]=16.6;guest_weight[3]=1.2;
        x1[4]=18.9;y1[4]=15.2;guest_weight[4]=1.5;
        x1[5]=15.5;y1[5]=11.6;guest_weight[5]=0.8;
        x1[6]=3.9;y1[6]=10.6;guest_weight[6]=1.3;
        x1[7]=10.6;y1[7]=7.6;guest_weight[7]=1.7;
        x1[8]=8.6;y1[8]=8.4;guest_weight[8]=0.6;
        x1[9]=12.5;y1[9]=2.1;guest_weig

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2017-01-20 10:57  simpleGA\
     目录           0  2017-01-20 10:57  simpleGA\.vs\
     目录           0  2017-01-20 10:57  simpleGA\.vs\simpleGA\
     目录           0  2017-01-20 10:57  simpleGA\.vs\simpleGA\v14\
     文件       13312  2012-06-14 21:49  simpleGA\.vs\simpleGA\v14\.suo
     目录           0  2017-01-20 10:57  simpleGA\Backup\
     目录           0  2017-01-20 10:57  simpleGA\Backup\simpleGA\
     文件       24572  2012-06-15 00:37  simpleGA\Backup\simpleGA\Form1.cs
     文件       14011  2012-06-15 00:37  simpleGA\Backup\simpleGA\Form1.Designer.cs
     文件        5814  2012-06-15 00:37  simpleGA\Backup\simpleGA\Form1.resx
     文件         489  2012-06-14 14:52  simpleGA\Backup\simpleGA\Program.cs
     目录           0  2017-01-20 10:57  simpleGA\Backup\simpleGA\Properties\
     文件        1372  2012-06-14 14:52  simpleGA\Backup\simpleGA\Properties\AssemblyInfo.cs
     文件        2866  2012-06-14 14:52  simpleGA\Backup\simpleGA\Properties\Resources.Designer.cs
     文件        5612  2012-06-14 14:52  simpleGA\Backup\simpleGA\Properties\Resources.resx
     文件        1093  2012-06-14 14:52  simpleGA\Backup\simpleGA\Properties\Settings.Designer.cs
     文件         249  2012-06-14 14:52  simpleGA\Backup\simpleGA\Properties\Settings.settings
     文件        3762  2012-06-14 16:58  simpleGA\Backup\simpleGA\simpleGA.csproj
     文件         914  2012-06-14 14:52  simpleGA\Backup\simpleGA.sln
     目录           0  2012-06-15 00:37  simpleGA\simpleGA\
     目录           0  2012-06-14 14:52  simpleGA\simpleGA\bin\
     目录           0  2012-06-14 16:59  simpleGA\simpleGA\bin\Debug\
     文件       20992  2017-01-20 10:58  simpleGA\simpleGA\bin\Debug\simpleGA.exe
     文件       36352  2017-01-20 10:58  simpleGA\simpleGA\bin\Debug\simpleGA.pdb
     文件       21680  2017-01-20 10:58  simpleGA\simpleGA\bin\Debug\simpleGA.vshost.exe
     文件         490  2016-07-16 19:44  simpleGA\simpleGA\bin\Debug\simpleGA.vshost.exe.manifest
     文件       24572  2012-06-15 00:37  simpleGA\simpleGA\Form1.cs
     文件       14011  2012-06-15 00:37  simpleGA\simpleGA\Form1.Designer.cs
     文件        5814  2012-06-15 00:37  simpleGA\simpleGA\Form1.resx
     目录           0  2012-06-14 14:52  simpleGA\simpleGA\obj\
     目录           0  2017-01-20 10:58  simpleGA\simpleGA\obj\Debug\
............此处省略21个文件信息

评论

共有 条评论