遗传算法求解最短路径问题?从起始结点到终点必须经过中间结点的最短路径,用遗传算法求解.

来源:学生作业帮助网 编辑:作业帮 时间:2024/04/28 02:49:36

遗传算法求解最短路径问题?从起始结点到终点必须经过中间结点的最短路径,用遗传算法求解.
遗传算法求解最短路径问题?
从起始结点到终点必须经过中间结点的最短路径,用遗传算法求解.

遗传算法求解最短路径问题?从起始结点到终点必须经过中间结点的最短路径,用遗传算法求解.
#include "stdafx.h"
#include "stdio.h" //标准输入输出库
#include "stdlib.h" //标准函数库
#include "time.h"
#include "iostream.h"
#include "iomanip.h"
#include "math.h" //数学函数库
#define MAX 1 //设定求最大适应值
#define MIN 2
#define CHROMLENGTH 15 //染色体长度,注意编码变化时,要随时修改
#define MAXNUM 1000
#define Cmax 30 //估计最大值
#define Cmin 0 //估计最小值
int PopSize = 150; //每代最大个体数
int FunctionMode = MIN;
double m_fPc = 0.9; //交叉概率
double m_fPm = 0.009; //变异概率
int MaxGeneration = 20; //最大世代数
int d[150][15]; //找到染色体并拷贝到这个数组中
int s[150][15];
int generation; //世代数
int Best_Index; //最好个体下标
int Worst_Index; //最坏个体下标
struct individual //定义个体数据结构
{
double chrom[CHROMLENGTH+1]; //染色体
double value; //函数值
double fitness; //适应度
};
struct individual
BestIndividual; //当代最佳个体
struct individual
WorstIndividual;
struct individual
Group[150]; //种群
double Random(double Low, double High)//本函数实现随机产生Low-High之间的实数 .意思:随机
{
return((double)rand()/RAND_MAX)*(High-Low)+Low;
}
double Max(double a, double b)
{
if(a>=b) return a;
else return b;
}
void GenerateInitialPopulation()//种群初始化,二进制编码初始化其中'1'表示路径顶点在最短路径中,'0'则反之
{
int i,j;

for(i = 0; i < PopSize; i++)
{
for(j = 1; j < CHROMLENGTH-2; j++)
{
Group[i].chrom[j] = (int)(Random(1,10)

遗传算法求解最短路径问题?从起始结点到终点必须经过中间结点的最短路径,用遗传算法求解. dijkstra算法 最短路径问题话说dijkstra算法可以求解一个节点到其他各节点的最短路径,但是如果节点间存在多条等长的最短路径怎么对这个算法修改呢?不要floyd算法或者别的算法,就dijkstra算法. 数据结构 图 最短路径问题 迪杰斯特拉算法和弗洛伊德算法问题求解下面两句话都错在什么地方?(1)求从指定原点到其余各顶点的迪杰斯特拉最短路径算法中弧上权值不能为负的原因是在 数据结构C语言,单源结点最短路径问题问题描述:求从有向图的某一结点出发到其余各结点的最短路径基本要求:(1)有向图采用邻接矩阵表示.(2)单源结点最短路径问题采用狄克斯特拉 MATLAB的迪杰斯特拉算法求7个起始点到15个终点的最短路径!如何用MATLAB实现地杰斯特拉算法 求7个起始点到15个终点的最短路径!(其他算法也行,但弗洛伊德算法除外!)起始点和终点中间还有 matlab运行dijkstra函数出错function [d,DD]=dijkstra(D,s)%Dijkstra最短路算法Matlab程序用于求从起始点s到其它各点的最短路%D为赋权邻接矩阵%d为s到其它各点最短路径的长度; %DD记载了最短路径生成树[m,n 最短路径的Dijkstra算法思路 完善程序(free pascal):单源点最短路径:给定带权有向图G=(v,e),源点v1在v中,求 v1到v中其余各结点的最短路径.数据结构说明:cost[I,j]:表示带权有向图的邻接矩阵 d[j]:表示从v1到vj的最短路径长 迪杰斯特拉算法看不懂啊dist是从V0到其他各顶点的当前最短路径,可是一开始到其他各顶点的当前最短路径并不知道啊 算法设计与分析中用动态规划法求解最短路径与数据结构中迪杰斯特拉算法有什么不同? 在使用spfa算法一定可以找出最短路径吗?假设我选的第一个点很特殊,它只和起始点相连,和其它的点都不相连.那么将它从队列中取出来之后,不会有新的点被放到队列中去,这样算法岂不是就终 如何用粒子群算法实现有障碍物时的最短路径规划(从起点到终点路径最短,并避开障碍物),用Matlab实现!大家帮帮忙啊!最后要能画图显示!回答一经采用,加分不是问题!谢谢! 用dijkstra算法求出最短路径,从1到5,问:最短路径是50还是100?(并说明过程及原因)如果是无向图的话又怎么样呢? (用Dijkstra算法)求出图中顶点1到其余各顶点的最短路径 哈夫曼树是带权路径长度最短的树,路径上权值较大的结点离根较近() 以邻接表作存储结构实现求从源点到其余各顶点的最短路径的Dijkstra算法 初二〖最短路径问题〗数学题,求解!速度,谢谢啦 求用matlab解最短路问题的程序要用Dijkstra算法找出任意两点间的最短路径.希望用MATLAB或LINGO编程求解.求程序,