TSP问题建模:
测试数据类型:
程序:
// Cplex_template.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//
#include <ilcplex/ilocplex.h>
#include <iostream>
#include <vector>
#include <map>
using namespace std;
//获取输入数据,tsp的节点以及节点之间的距离矩阵
std::vector<std::vector<int>> FileRead(std::string filepath) {
std::ifstream file(filepath);
std::vector<std::vector<int>> point;
std::vector<std::vector<int>> distanceMatrix;
if (!file.is_open()) {
std::cerr << "Error: Failed to open file " << filepath << std::endl;
return distanceMatrix;
}
std::string line;
bool readingCoordinates = false;
while (std::getline(file, line)) {
if (line == "NODE_COORD_SECTION") {
readingCoordinates = true;
continue;
}
if (readingCoordinates) {
std::istringstream iss(line);
int nodeIndex;
int x, y;
if (!(iss >> nodeIndex >> x >&