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

📄 wstabosearchalogrithm.h

📁 开发环境:Visual C++ .net2003 功能:利用禁忌搜索思想求解TSP问题。
💻 H
字号:
#pragma once
#include "WSTSP.h"
#include "WSRandom.h"

class WSTaboSearchAlogrithm
{
protected:
	int m_TaboTableLen;//禁忌表的长度
	TaboTable m_TaboTable;//禁忌表
	TaboTable m_NeborRoutes;//当前最好解的相邻路径
	CityRouter m_CurBestRoute;//当前最好解
    CityRouter m_BestRoute;//目前解过程中所遇之最佳解
	CityRouter m_BaseCityInfo;//城市的基本信息

	//方式1
	TaboTableCityPeer m_TTCityPeer; //按照城市交换对为禁忌对象
	CityPeerInfoVector m_TTNeborCityPeer; //相邻城市对集合

	//禁忌模式
	INT m_TaboMode;

	INT m_SearchTimes;
	INT m_SearchSteps;

	PCHAR m_OutFileName;

public:
	WSTaboSearchAlogrithm(void);
	~WSTaboSearchAlogrithm(void);

public:
	BOOL Initial(PCHAR p_InFileName, PCHAR p_OutFileName, INT p_TaboMode = 2, INT p_TaboLen = 0, INT p_SearchTimes = 30, INT p_SearchSteps = 0);
	BOOL Initial1(PCHAR p_InFileName, PCHAR p_OutFileName, INT p_TaboLen = 0, INT p_SearchTimes = 30, INT p_SearchSteps = 0);
	//利用城市交换对作禁忌对象
	BOOL Initial2(PCHAR p_InFileName, PCHAR p_OutFileName, INT p_TaboLen = 0, INT p_SearchTimes = 30, INT p_SearchSteps = 0);

	BOOL GenNeborCityOrder();
	//利用城市交换对作禁忌对象
	BOOL GenNeborCityOrder2();

	BOOL GetNextRoute();
	//利用城市交换对作禁忌对象
	BOOL GetNextRoute2();

	BOOL SearchOneStep();
	BOOL RunTaboSearch();
	VOID ShowBestRoute();
	VOID ShowBestRouteInfo();
};

⌨️ 快捷键说明

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