自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(199)
  • 资源 (2)
  • 收藏
  • 关注

原创 使用蚁群算法求解VRPTW问题

蚂蚁在路径选择时综合评估信息素(历史经验)和启发式信息(如距离/时间成本),可无缝嵌入时间窗惩罚函数。如先满足硬时间窗,再优化路径长度,可通过设计信息素更新规则实现(仅对可行解释放信息素)。突发情况(如某点临时关闭)可通过局部信息素重置快速响应,优于传统数学规划需重新建模。自适应调整α/β参数:初期高探索性(β主导),后期高开发性(α主导),提升收敛效率。蚁群算法(ACO)适合求解带时间窗的车辆路径优化问题(VRPTW),主要基于其。信息素挥发机制(ρ参数)能逐步淘汰违反约束的路径,自适应聚焦可行解区域。

2025-05-06 21:34:52 906

原创 使用Gradio搭建聊天UI实现质谱AI智能问答

1、获取api_key智谱AI开放平台网址:2、安装库3、执行一下代码,调用质谱api进行问答。

2024-04-30 15:54:44 1772 1

原创 使用scikit-opt中粒子群算法求解约束优化问题

或者采用罚函数法、增广拉格朗日函数法将约束优化问题转化为无约束优化问题后,可以采用梯度类、粒子群算法进行求解。,每次迭代若粒子位置满足约束且优于历史最优位置,则更新位置,逐步引导粒子在可行域内搜索最优解。粒子群算法求解约束优化问题,关键是约束的处理,初始化将粒子历史最优位置设为。

2024-04-09 13:27:40 1314

原创 使用Java调用Cplex求解带时间窗的车辆路径问题

在使用大M法的时候,务必注意M的取值:不能取太小,也不能取太大!取太小可能导致出现不可行解,取太大可能会因为计算机的精度问题导致约束失效。待优化的问题即为,如何决策车辆访问客户的路径,使得在满足一定约束的条件下,实现最小化总成本的目标。如果尝试减去数据类型的最大可能值,则这将导致一些计算问题。表示了车站与客户之间,以及客户之间的有向连接。所有车辆通常是同质化的,每辆车都存在容量上限。所有节点的集合可表示为。会导致求解出现问题,得不到最优解。个点组成,其中客户由。,时间可以包括在弧上。都有需要被满足的需求。

2024-02-21 21:29:28 1034

原创 基于集合的粒子群算法(S-PSO)求解车辆路径优化问题

为了缓解现有离散PSO算法的不足,为在离散空间中使用PSO算法开发一个更通用和灵活的框架,Chen等提出了一套为基础的PSO (S-PSO)框架。离散变量天然可以用集合进行表示,S-PSO在集合空间中重新定义了PSO。

2024-01-31 14:22:49 2276

原创 基于蚁群算法的TSP问题建模求解(Python)

蚁群系统(Ant System或Ant Colony System(是由意大利学者Dorigo、Maniezzo等人于20世纪90年代(1992年)首先提出来的。他们在研究蚂蚁觅食的过程中,发现单个蚂蚁的行为比较简单,但是蚁群整体却可以体现一些智能的行为。例如蚁群可以在不同的环境下,寻找最短到达食物源的路径。这是因为蚁群内的蚂蚁可以通过某种信息机制实现信息的传递。后又经进一步研究发现,蚂蚁会在其经过的路径上释放一种可以称之为“信息素”的物质,蚁群内的蚂蚁对“信息素”具有感知能力,它们会沿着“信息素”浓度较高

2024-01-12 09:32:26 1989

原创 基于模拟退火算法的TSP问题建模求解(Python)

模拟退火算法(Simulated Annealing Algorithm)来源于固体退火原理,是一种基于概率的算法。将固体加温至充分高的温度,再让其徐徐冷却,加温时,固体内部粒子随温升变为无序状,内能增大,分子和原子越不稳定。而徐徐冷却时粒子渐趋有序,能量减少,原子越稳定。在冷却(降温)过程中,固体在每个温度都达到平衡态,最后在常温时达到基态,内能减为最小。

2023-11-15 23:49:05 1561

原创 数据处理与统计分析——MySQL与SQL

数据库:DB(DataBase)概念:数据仓库,软件,安装在操作系统之上作用:存储数据,管理数据。

2023-08-20 12:42:05 1021 1

原创 基于随机森林的波士顿房价预测

波士顿房地产市场竞争激烈,而你想成为该地区最好的房地产经纪人。为了更好地与同行竞争,你决定运用机器学习的一些基本概念,帮助客户为自己的房产定下最佳售价。幸运的是,你找到了波士顿房价的数据集,里面聚合了波士顿郊区包含多个特征维度的房价数据。你的任务是用可用的工具进行统计分析,并基于分析建立优化模型。这个模型将用来为你的客户评估房产的最佳售价。读取数据 CRIM ZN INDUS CHAS NOX R

2023-08-11 10:39:50 1565

原创 基于梯度下降算法的无约束函数极值问题求解

导数(Derivative),也叫。又名,是微积分中的重要基础概念。。如果函数的自变量和取值都是实数的话,函数在某一点的导数就是该函数所代表的曲线在这一点上的切线斜率。。例如在运动学中,物体的位移对于时间的导数就是物体的瞬时速度。对于一条直线来说,求该直线的斜率就是找到该直线上两个点x1​y1​和x2​y2​,分别求出两点在y和x上的增量。因此斜率就是y的改变量比上x的改变量,即ktanθΔyΔx​x2​−x1​y2​−y1​​。

2023-07-06 00:21:09 1597

原创 基于粒子群算法的无约束优化问题求解

粒子群算法(Particle Swarm Optimization,PSO)是由美国心理学家James Kennedy和电气工程师Russell Eberhart于1995年提出的一种算法,算是比较老也是非常经典的算法之一。采用Java编程粒子群算法求解了无约束优化问题中常用的几个测试函数。

2023-07-01 14:18:54 1883

原创 基于NSGA-II算法的多目标多旅行商问题建模求解

NSGA-II算法学习过程中涉及到了较多内容,除了遗传算法中,核心步骤外,又融入了等内容。在GA中,通常采用轮盘赌选择策略,为了加快收敛保留全局最优解,在采用轮盘赌的同时,通常引入精英保留(精英策略)提升算法性能。对于和,通常在原染色体上进行,生成子代染色后,直接替换掉原染色体。在NSGA-II中,每次迭代过程中,为了保证多样性,探索解空间,(采用的锦标赛选择)、和产生子代种群后不会进行替换。此时有原种群P,及选择交叉变异后得到子代种群Q,P、Q种群规模均为N,合并P和Q为2N的新种群R。

2023-06-26 00:23:32 2250

原创 基于Cplex求解器的JavaAPI语法使用

通过"// 定义一个浮点型的决策变量lb:lower bound,变量的下届ub:upper bound,变量的上届变量类型::连续变量“x”:变量的名字,可选择的项整形变量通过// 写法1:定义一个整型的决策变量// 写法2:以上写法等价于如下写法,从源码来看,model.intVar()方法内部还是调用了model.numVar()方法,因此两种写法等价,但此时不在需要传参IloNumVarType.Int:0-1变量通过进行定义:还有另一种简单写法,即。

2023-05-22 00:04:25 2025

原创 基于自适应遗传算法的TSP问题建模求解(Java)

普通遗传算法(Sample Genetic Algorithm, SGA)存在着严重的缺点,它的Pc和Pm的值是固定的,本文采用自适应遗传算法进行求解TSP问题。不管是优良个体还是劣质个体都经过了相同概率的交叉和变异操作。

2023-04-14 23:55:04 3321 9

原创 基于遗传算法的CVRP建模求解(Python)

单向:纯取货/纯送货;单配送中心:只有一个配送中心/车场;单车型:只考虑一种车型,需求不可拆分:客户需求只能有一辆车满足;车辆封闭:完成配送任务的车辆需回到配送中心;车辆充足:不限制车辆数量,即配送车辆需求均能满足;非满载:任意客户点的需求量小于车辆最大载重;优化目标:最小化车辆启动成本和车辆行驶成本之和;约束条件:车辆行驶距离约束,重量约束;已知信息:配送中心位置、客户点位置、客户点需求、车辆最大载重、车辆最大行驶距离、车辆启动成本、车辆单位距离行驶成本;min⁡Z=C0K+C1∑i=0N

2023-03-08 14:59:57 9855 43

原创 python开发环境管理和包管理

Python 环境管理是指创建和管理多个隔离的 Python 运行环境,使得每个项目可以使用不同的解释器版本和依赖库版本。Python 包管理是指对 Python 第三方库的安装、卸载、更新和版本控制的过程。

2025-05-23 22:45:46 268

原创 基于poetry管理python项目学术版gurobipy WSL安装方式

在poetry中安装gurobipy后有许可限制,运行大规模问题报错如下,需要申请许可。

2025-05-19 16:38:17 857

原创 macos使用pyenv和poetry管理python环境

本文介绍了如何在macOS上安装pyenv和Python,并使用Poetry管理Python项目。首先,通过Homebrew安装pyenv,并配置环境变量。接着,安装指定版本的Python,并设为全局默认。然后,使用官方脚本安装Poetry,并验证安装结果。最后,使用Poetry创建Python项目,指定Python版本,添加依赖,并运行项目。Poetry会自动生成项目结构,包括pyproject.toml、poetry.lock等文件,便于依赖管理和项目运行。

2025-05-12 00:51:50 322

原创 命令行解释器中shell、bash和zsh的区别

命令行解释器(Command Line Interpreter)是用户与操作系统内核之间的桥梁,负责接收并执行用户输入的命令。Shell 是命令行解释器的统称,常见的类型包括 sh、bash、zsh、fish 和 PowerShell。其中,bash 是 Linux 和旧版 macOS 的默认 Shell,兼容 sh 并支持命令历史、自动补全等功能。zsh 则是一种功能更强大、可定制性更高的 Shell,支持插件系统,用户体验更佳,新版 macOS 已将其设为默认 Shell。

2025-05-11 20:04:32 1118

原创 组合优化中常用的数据结构

在计算机科学与数学交叉的前沿领域中,数据结构与组合优化算法设计扮演着至关重要的角色。高效的数据结构为信息组织与管理提供基础支撑,而组合优化算法则致力于在有限或庞大的解空间中寻求最优解。二者相辅相成,广泛应用于人工智能、运筹学、网络设计等领域,推动复杂问题求解效率与质量的不断提升。

2025-05-08 22:31:16 377

原创 稀疏数组在组合优化中的典型应用场景

稀疏数组在 **组合优化(Combinatorial Optimization)** 中有着广泛而重要的应用。这类问题通常涉及从大量可能的组合中找到一个最优解,例如旅行商问题、集合覆盖、装箱问题、图论中的最短路径或最大流等。

2025-05-08 22:02:52 906

原创 遗传算法求解异构车队VRPTW问题

客户排列 + 分割点”(Giant Tour + Split)方法。该方法通过将客户ID与分隔符(如0)结合形成染色体,解码时根据分隔符划分路线,并检查容量、时间窗等约束条件进行车辆分配。其优点在于结构简单,可直接应用经典遗传算法算子,但缺点是解码复杂,容易产生不可行解,且分隔符位置对解质量影响较大。

2025-05-08 21:36:27 951

原创 基于cluster-first/route-second的遗传算法求解VRPTW问题

将遗传算法(Genetic Algorithm, GA)应用于带时间窗的车辆路径问题(Vehicle Routing Problem with Time Windows, VRPTW)时,核心是要设计合适的染色体(Chromosome)编码,以便遗传操作(如交叉和变异)能够产生可行解。分别采用Giant-Tour + Greedy-Split和cluster-first/route-second两种编码方式进行求解VRPTW问题。

2025-05-06 10:48:16 523

原创 用牛顿法求解无约束极值问题

梯度下降:简单、通用,适合大规模问题,但收敛慢。牛顿法:计算复杂,但收敛极快,适合小规模精确优化。实际应用:深度学习(参数多)→ 梯度下降或其变种(如 Adam)。数值优化(参数少)→ 牛顿法或拟牛顿法(如 BFGS)。

2025-04-16 11:14:18 726

原创 泰勒展开式与函数逼近

设函数fxf(x)fx在点aaa处无限可导,则fxf(x)fx在aaafx∑n0∞fnan!fna​x−anfnaf^{(n)}(a)fna是fff在aaa点的nnn阶导数,n!n!n!是nnn的阶乘,x−an(x-a)^nx−an是x−a(x-a)x−a的nnn次幂。导数是线性逼近。

2025-04-16 10:22:04 1125

原创 基于禁忌搜索算法的TSP问题建模求解

禁忌搜索算法(Tabu Search,TS)的思想最早由美国工程院院士Glover教授于1986年提出,并在1989年和1990年对该方法做出了进一步的定义和发展。在自然计算的研究领域中,禁忌搜索算法以其灵活的存储结构和相应的禁忌准则来避免迂回搜索,在智能算法中独树一帜,成为一个研究热点,受到了国内外学者的广泛关注。迄今为止,禁忌搜索算法在组合优化、生产调度、机器学习、电路设计和神经网络等领域取得了很大的成功。

2025-04-15 15:53:41 1022

原创 基于构造&改进的传统启发式优化方法

启发式方法的核心在于通过经验规则或局部优化策略高效求解复杂问题。**构筑法**(如贪婪算法、插入法)通过逐步添加成分从零构建解,适用于快速生成初始可行解,但可能陷入局部最优;**改进法**(如局部搜索、模拟退火)则通过在已有解的邻域内迭代优化来提升解质量,其中局部搜索是改进法的典型代表,依赖邻域结构进行精细化调整。两者常结合使用——先用构筑法生成初始解,再通过改进法进行优化,形成"构造-优化"的完整求解框架,兼顾效率与解的质量。​

2025-04-09 10:13:48 986

原创 Python多算法函数灵活传参设计方法

为了处理不同算法需要不同参数的情况,可以使用以下几种方法,从快速原型开发到大型项目架构设计,帮助开发者平衡代码的灵活性与健壮性,提升可维护性和扩展性。

2025-04-08 13:50:06 703

原创 基于Poetry的Python项目结构设计

合理的Python项目结构设计通过模块化组织、标准化依赖管理和清晰的目录分层,提升代码的可读性、可维护性及团队协作效率,降低技术债务;同时支持测试自动化、部署扩展和代码复用,确保项目长期稳定迭代,并符合行业规范,为高效开发和可持续发展提供坚实基础。

2025-04-08 13:31:38 664

原创 使用Poetry进行python依赖和包管理

轻量级场景:使用,自动切换版本。科学计算场景:使用,复用 Conda 的预编译包。纯 Python 项目:直接通过手动指定版本。

2025-04-07 14:25:17 1196

原创 poetry安装

安装地址:https://python-poetry.org/docs/#installing-with-the-official-installer3、重启powershell,并运行查看安装情况,若出现版本号则安装成功。

2025-04-04 12:32:06 1226

原创 指示约束与Big-M法线性化的Gurobi语法与常见报错

>>是 Gurobi 中用于定义条件约束的关键操作符。它通过二元变量的取值动态激活/禁用约束,非常适合建模具有逻辑分支的优化问题(如你的库存平衡方程)。使用时需确保二元变量和约束的线性性符合要求。

2025-04-02 14:01:12 358

原创 加载huggingface数据集报token无效错误解决方案

加载huggingface数据集报错。

2025-03-25 18:26:43 343

原创 第二次作业:分析型优化模型案例

购买一架飞机可以使用15年,但需要马上支付5000万美元。而同样租一架飞机使用15年,则需要以均匀货币流方式支付15年租金,年流量为600万美元。两种方案所支付的价值无法直接比较,必须将它们都化为同一时刻的价值才能比较。我们以当前价值为准。(从投资开始计算),使收益的现值等于初始投资。年,故航空公司在第5.6年收回投资。)开始产生均匀货币流,年流量。年之后在银行的存款额恰好是。初始投资100万元(现值,美元,按连续复利计算,年的租金在当前的价值为。

2025-03-17 11:54:10 543

原创 pip install和conda install的区别

Python依赖(dependencies)指的是某个 Python 项目运行所需的外部库或模块。这些依赖通常由pip从或其他包管理器(如 Conda)下载和安装。方式用途安装单个依赖pip list查看当前环境的依赖导出依赖从安装依赖venvpipenv解决版本冲突,管理独立环境推荐:始终使用虚拟环境来管理 Python 依赖,避免版本冲突!方式优点适用场景venvPython 内置,简单高效绝大多数项目virtualenv支持 Python 2 和独立环境需要支持 Python 2 的情况。

2025-03-15 22:38:32 2193

原创 Python反射机制与getattr方法

getattr是一个内置函数,用于动态获取对象的属性值。它的主要作用是根据属性名称(以字符串形式提供)从对象中提取对应的属性值。如果属性不存在,还可以通过可选参数指定默认返回值。是一个非常强大的工具,能够帮助开发者实现动态属性访问和方法调用,但在使用时需要注意代码的可读性和安全性。如果不提供默认值且属性不存在,会抛出异常,因此建议在不确定属性存在时始终提供默认值。动态访问属性可能导致代码难以调试,尤其是在属性名称拼写错误或逻辑复杂时。动态访问属性比直接访问属性稍慢,因此在性能敏感的场景下应谨慎使用。

2025-03-05 15:26:37 750

原创 Python动态生成函数执行字符串代码

动态生成函数是指将代码字符串编译为一个函数,然后像普通函数一样调用它。这种方式非常适合需要多次执行相同逻辑的场景,同时还可以灵活地传递参数。

2025-03-03 11:25:02 301

原创 模型报错infeasible,如何查看冲突约束

使用生成.ilp文件,查看最小不可行子系统。使用放松约束,找到需要调整的约束或变量。手动检查模型设置,确保变量和约束合理。查看日志和调试工具的输出,辅助诊断问题。通过这些方法,可以快速定位模型不可行的原因并修复问题。

2025-02-13 20:58:25 1002

原创 基于RAG的知识库问答系统

结合语义检索与大语言模型技术,实现基于私有知识库的智能问答解决方案。采用两阶段处理架构,可快速定位相关文档并生成精准回答。

2025-02-02 18:06:32 450

原创 大模型提示工程

提示工程 (Prompt Engineering) 是一种设计和优化输入提示 (prompts) 的方法,旨在引导大型语言模型 (LLMs) 生成符合预期的高质量、有用的输出。由于 LLMs 的行为高度依赖于输入提示,因此有效的提示工程对于充分利用这些模型的潜力至关重要。提示工程的核心在于 理解模型的优势、局限性,并利用有效的提示策略来最大化模型的潜力,同时规避其缺陷。大型语言模型虽然强大,但它们本质上是基于概率分布的文本生成器,其行为受输入提示的强烈影响。好的提示能够引导模型朝着期望的方向生成内容。

2025-01-25 09:02:35 596

基于自适应遗传算法的TSP问题建模求解(Java)

基于自适应遗传算法的TSP问题建模求解(Java)

2024-08-11

C:\Users\pengkangzhen\Documents\WeChat Files\wxid-k2c7i8tc5u7v22

C:\Users\pengkangzhen\Documents\WeChat Files\wxid-k2c7i8tc5u7v22

2024-07-17

车辆路径优化问题(VRP)变体及数学模型

车辆路径优化问题(VRP)变体及数学模型

2024-03-15

VRPTW问题Solomon标准测试数据集

VRPTW问题Solomon标准测试数据集

2024-02-21

top K最短路径问题(K Shortest Path Routing)K最短路径算法与应用分析.pdf

top K最短路径问题(K Shortest Path Routing)K最短路径算法与应用分析.pdf

2023-12-22

基于Cplex的人员排班问题建模求解(JavaAPI)

基于Cplex的人员排班问题建模求解(JavaAPI)

2023-12-06

基于or-tools的人员排班问题建模求解(JavaAPI)

基于or-tools的人员排班问题建模求解(JavaAPI)

2023-11-21

疫情期间的护士排班优化模型及智能算法

疫情期间的护士排班优化模型及智能算法

2023-09-22

基于蚁群算法的动态VRP问题离线误差计算

file:///C:/Users/pengkangzhen/Documents/WeChat%20Files/wxid_k2c7i8tc5u7v22/FileStorage/File/2023-08/Mavrovouniotis%20%E5%92%8C%20Yang%20-%202015%20-%20Ant%20algorithms%20with%20immigrants%20schemes%20for%20the%20dyn.pdf

2023-09-09

机器学习实战-波士顿房价预测

机器学习实战-波士顿房价预测

2023-08-11

基于粒子群算法的无约束优化问题求解(Java)

在连续优化问题中,无约束优化问题除了可以用梯度下降算法,牛顿法,共轭梯度等算法,智能优化算法因其寻优速度快,全局收敛等特点,也得到了广泛应用。采用Java编程PSO算法求解无约束优化问题。

2023-07-01

基于NSGA-II算法的多目标多旅行商问题建模求解(Java)

采用TSP测试算例eil51.txt进行实验,设置3个旅行商,求解本文双目标多旅行商TSP问题。算法设置最大迭代次数MAXGEN=1000;交叉概率pc=0.8,变异概率pm=0.2,设置所有旅行商出发和返回城市为depot=5。采用Java编程NSGA-II对多目标多旅行商问题进行求解。

2023-06-27

TSP问题att48.txt

TSP问题att48.txt

2023-05-21

自适应遗传算法求解旅行商问题(Java代码)

普通遗传算法(Sample Genetic Algorithm, SGA)存在着严重的缺点,它的Pc和Pm的值是固定的,本文采用自适应遗传算法进行求解TSP问题。这会引起两个很严重的问题: (1)相同的概率,这可以说是不公平,因为对于优良个体,我们应该减小交叉变异概率,使之能够尽量保存 ; 而对于劣质个体,我们应该增大交叉变异概率,使之能够尽可能的改变劣质的状况 。所以,一成不变的交叉变异概率影响了算法的效率。 (2)相同的概率总不能很好的满足种群进化过程中的需要,比如在迭代初期,种群需要较高的交叉和变异概率,已达到快速寻找最优解的目的,而在收敛后期,种群需要较小的交叉和变异概率,以帮助种群在寻找完最优解后快速收敛。所以,一成不变的交叉变异概率影响了算法的效率。

2023-04-15

彭康真-作业2-自适应遗传算法求解旅行商问题(Matlab作业)

彭康真-作业2-自适应遗传算法求解旅行商问题(Matlab作业)

2023-04-15

基于遗传算法的CVRP建模求解-Python代码

https://blog.csdn.net/qq_43276566/article/details/129402447 基于遗传算法的CVRP建模求解-Python代码

2023-03-10

表上作业法-运输问题(Java)

表上作业法-运输问题(Java)

2021-07-04

cplex解题器用户手册.pdf

cplex解题器用户手册.pdf

2021-03-22

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除