資源簡介
描述:基本的單蟻群算法,遍歷所有節點,規劃出最短路徑
代碼片段和文件信息
//?AntColonyAlgorithm.cpp:?定義控制臺應用程序的入口點。
//
/*
?* 描述:基本的單蟻群算法,遍歷所有節點,規劃出最短路徑
?*
?* Created?on?:?2018年7月5日
?* Author?:?Regan_Chai
?* E-Mail?:?regan_chai@163.com
*/
#include?“stdafx.h“
#include
#include
#include
#include?
#include?
using?namespace?std;
typedef?struct?_POINT?{
int?x;
int?y;
}POINT;
POINT?points;
//----------(1)問題一:Oliver?30?節點?TSP?問題?;?------------------------
//節點節點數目
//#define?N?30
//
////節點坐標
//double?C[N][2]={
//????{?299}{?450}{?764}{1340}{1854}{1840}{2260}{2442}{2562}{2538}
//????{3784}{4194}{4126}{4435}{4521}{5467}{5462}{5835}{5869}{6232}
//????{6460}{6858}{7144}{7171}{7478}{82?7}{8346}{8369}{8776}{9138}};
//?節點數目
#define?N?32
//?節點坐標
int?C[N][2]?=?{
{?299?}{?450?}{?764?}{?1340?}{?1854?}{?1840?}{?20?6?}{?2178?}{?2260?}{?2442?}
{?2562?}{?2538?}{?3784?}{?4194?}{?4126?}{?4435?}{?4521?}{?5467?}{?5462?}{?5835?}
{?5869?}{?6232?}{?6460?}{?6858?}{?7144?}{?7171?}{?7478?}{?82?7?}{?8346?}{?8369?}
{?8776?}{?9138?}?};
//----------上面參數是固定的,下面的參數是可變的-----------
//螞蟻數量
#define?M?30
//最大循環次數NcMax
int?NcMax?=?500;
//信息啟發因子,期望啟發式因子,全局信息素揮發參數,局部信息素揮發參數?狀態轉移公式中的q0
double?alpha?=?2?beta?=?3?rou?=?0.1?alpha1?=?0.1??qzero?=?0.01;
//-----------問題一結束------------------------------------------------------------------------
/*
//----------(2)問題二:Elion50?節點?TSP?問題?;?----------------------------
//節點節點數目
#define?N?50
//節點坐標
double?C[N][2]={
{564}?{525}?{56}?{738}?{852}?{1017}
{1242}?{1313}?{1657}?{1733}?{1763}
{2026}?{2147}?{2110}?{2532}?{2555}
{2768}?{2723}?{3048}?{3015}?{3162}
{3132}?{3222}?{3239}?{3616}?{3769}
{3752}?{3846}?{3910}?{4030}?{4257}
{4241}?{4367}?{4535}?{4610}?{4828}
{4949}?{5121}?{5233}?{5241}?{5264}
{5637}?{5758}?{5827}?{5848}?{5915}
{6133}?{6242}?{6263}?{6369}};
//----------上面參數是固定的,下面的參數是可變的-----------
//螞蟻數量
#define?M?50
//最大循環次數NcMax
int?NcMax?=?1000;
//信息啟發因子,期望啟發式因子,全局信息素揮發參數,局部信息素揮發參數?狀態轉移公式中的q0
double?alpha?=?2?beta?=?4?rou?=?0.1?alpha1?=?0.1??qzero?=?0.01;
//-----------問題二結束------------------------------------------------------------------------
*/
/*
//----------(3)問題三:Elion75?節點?TSP?問題?best_length?=?542.31;
//該程序最好的結果是542.309,可運行多次獲得?
//節點節點數目
#define?N?75
//節點坐標
double?C[N][2]?=?{
{?625?}{?743?}{?956?}{?1070?}{?1128?}
{?1217?}{?1238?}{?155?}{?1514?}{?1556?}
{?1619?}{?1764?}{?2030?}{?2148?}{?2145?}
{?2136?}{?2253?}{?2222?}{?2629?}{?2613?}
{?2659?}{?2724?}{?2939?}{?3050?}{?3020?}
{?3060?}{?3176?}{?3334?}{?3344?}{?3551?}
{?3516?}{?3560?}{?366?}{?3626?}{?3833?}
{?4037?}{?4066?}{?4060?}{?4020?}{?4146?}
{?4326?}{?4413?}{?4542?}{?4535?}{?4766?}
{?4
評論
共有 條評論