12、高级优化:旅行商问题求解

高级优化:旅行商问题求解

1. 优化问题概述

优化问题在很多领域都有广泛应用,常见的梯度上升/下降法能帮助我们“爬山”以找到最大值或最小值。然而,这种方法存在一个明显的缺陷,它可能会让我们找到的只是局部最优解,而非全局最优解。就好比爬山时,它可能会把我们带到一个小山丘的顶部,而实际上只要稍微往下走一段路,就能开始攀登我们真正想爬的大山。解决这个问题是高级优化中最困难也是最关键的部分。

2. 旅行商问题(TSP)介绍

旅行商问题是计算机科学和组合数学中一个极其著名的问题。假设有一位旅行商想要访问多个城市来推销他的商品,由于各种原因,如收入损失、汽油成本、长途旅行后的头痛等,城市之间的旅行是有成本的。TSP 的目标就是确定城市之间的旅行顺序,以最小化旅行成本。这个问题表述起来很简单,但求解却极其困难。

3. 问题设置

我们使用 Python 来解决这个问题。首先,随机生成一个旅行商要遍历的地图。
- 选择一个数字 N 表示地图上的城市数量,这里设 N = 40
- 使用 numpy 模块随机选择 40 组坐标,每组坐标包含一个 x 值和一个 y 值,代表一个城市的位置。

import numpy as np
random_seed = 1729
np.random.seed(random_seed)
N = 40
x = np.random.rand(N)
y = np.random.
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值