自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 收藏
  • 关注

原创 Gurobi:使用Java+Gurobi建立一个小数学模型

现在基本上都流行python+gurobi,java+cplex进行建模。但是由于java相较于python还是具有显著的速度优势,于是,我还是尝试了一下使用java来调用gurobi进行模型求解。其实,操作都很简单,只是一些语句的区别,在此记录。...

2022-08-17 20:48:04 1052 1

原创 Python:怎么把一个数组排序后让其他数组对应的排序

python的numpy包有非常多好用的功能比如sort函数可以一键排序那么对于两个数组,让其中一个进行升序排列,如何让另一个数组保持和原来数组的对应关系也进行排列呢。比如如下两个数组:import numpy as nparr1 = ['XiaoMing', 'XiaoHong', 'XiaoYang']arr2 = [98, 59, 78]我们先将其转为numpy array:arr1 = np.array(arr1)arr2 = np.array(arr2)然后得到对arr2升

2021-04-26 14:57:19 4703 2

原创 优化 | Pick and delivery problem的简介与建模实现(二)

优化 | Pick and delivery problem的介绍与建模实现(二)One-to-many-to-one (1-M-1) problemsSimultaneous DemandsOne-to-One ProblemsPython调用Gurobi实现算例与结果在上篇文章中,我们介绍了PDP的三种类型及其主要的运用场景。这次我们将专门针对一对多对一(1-M-1)问题来进行介绍,解释其模型并进行实现。One-to-many-to-one (1-M-1) problems一对多对一(1-M-1)

2021-02-14 22:34:50 2434 2

原创 优化 | Pick and delivery problem的简介与建模实现(一)

优化 | Pick and delivery problem的介绍与建模实现(一)Pick and delivery problem简介多对多(M-M)问题Pick and delivery problem简介Pick and delivery problem(PDP)是一类重要的路径规划问题,其中货物或乘客必须从不同的起点运输到不同的目的地。这些问题通常定义在一个图G=(V,A)G=(V,A)G=(V,A)上,其中顶点VVV表示要运输的不同实体(或商品)的起点或目的地。根据需求的类型和路线结构,PD

2021-02-14 22:33:54 4051 1

原创 “Learn to Improve”(L2I):RL运用至VRP的方法介绍

“Learn to Improve”(L2I):RL运用至VRP的方法介绍简介CVRP模型框架改进控制器和改进算子结果参考文献这次,我们将介绍这篇论文《A learning-based iterative method for solving vehicle routing problems》来说说运用强化学习具体怎样解决VRP问题。简介该文章提出了一个“Learn to Improve” (L2I)方法,更加高效,并且与OR方法进行了比较更优。该文章重点关注解决组合优化问题,尤其是带容量限制的车辆路

2021-01-02 11:47:09 1894

原创 机器学习运用到VRP的若干小知识

机器学习运用到VRP的若干小知识相关文献1、端到端方法( Pointer Network +Attention Model)2、强化学习方法(Policy Gradient、Actor Critic)背景小知识1、注意力机制(Attention Mechanism)2、指针网络(Pointer Network)3、策略网络(Policy Network)车辆路径规划问题(Vehicle Routing Problem,VRP)是运筹学领域十分经典的组合优化问题。近几十年来已经有众多学者通过启发式以及一些

2021-01-02 11:19:52 2119

原创 Gurobi如何调整模型优化方向(Min or Max)等参数

今天我在写列生成代码时遇到一个问题,因为变量是按列生成的,所以目标函数其实是随着变量的增加变化的,这时候原本用来设置目标函数的语句:(MP是我gurobi模型的名称)MP.setObjective(obj, GRB.MAXIMIZE)在这里就不适用了,所以怎样直接改变模型的优化方向呢。我经过一番探索终于找到了这个属性ModelSense。通过以下三种方法的任意一种,就可以改变min或者max啦!MP.setAttr('ModelSense', GRB.MAXIMIZE)MP.setAttr(GR

2020-12-11 14:04:59 3797

原创 Gurobi如何关闭log输出信息,仅输出最优解信息

Gurobi的log信息十分详细,但有时我们只需要得到最终结果,并不需要观察其过程信息,这时就需要将Gurobi的og输出信息关闭掉。这只需要使用Model.setParam设置一下model的OutputFlag参数,为0就是关闭,默认为1打开。具体演示如上图所示,gurobi有一大串输出的log信息。只需要在声明模型后,加入语句model.setParam('OutputFlag', 0),再次运行模型。 model = Model('fenbo_model') model.se

2020-12-02 20:15:25 5935 4

原创 优化|单纯形法及其Java实现

优化|单纯形法及其Java实现单纯形法(Simplex Method)单纯形法伪代码单纯形法的Java实现变量符号定义模型存储与读入模型的标准型转化单纯形法主体 本文中的课件来自清华大学深圳国际研究生院,物流与交通学部张灿荣教授《高级运筹学》课程。 张灿荣教授个人主页:https://www.sigs.tsinghua.edu.cn/zcr/list.htm单纯形法(Simplex Method)单纯形法是求解线性规划问题的一个经典算法,是一种直接、快速的搜索最小值方法,其优点

2020-12-02 19:45:23 2352

原创 python报错:TypeError: ‘xx‘ object is not callable

报错详情TypeError: ‘float’ object is not callable最近用一个新接触的包,所以经常遇到这个报错,一开始我没反应过来。后来发现这个的意思就是在不该加括号的地方加了括号。报错解决场景1:上图中的ObjVal是一个对象而非函数,所以后面不跟括号,直接去掉,报错解决。场景2:TypeError: ‘numpy.int64’ object is not callable上图中没有打乘号,导致后面的括号被认为是调用,故提示“is not callable”。加

2020-11-30 10:11:55 935

原创 Pycharm报错解决:The current Numpy installation (‘D:\\python\\lib\\site-packages\\numpy\\__init__.py‘)

错误详情RuntimeError: The current Numpy installation (‘D:\python\lib\site-packages\numpy\init.py’) fails to pass a sanity check due to a bug in the windows runtime. See this issue for more information: https://tinyurl.com/y3dm3h86错误原因是numpy包的版本问题导致的。解决方法

2020-11-29 21:57:19 12776 15

原创 7日强化学习初体验

7日强化学习初体验最近有幸参加了百度飞桨paddlepaddle开设的“强化学习7日打卡营-世界冠军带你从零实践”课程。通过课程加实战的方式顺利完成了对于强化学习的理论理解,并且在百度的AIstudio上使用PARL框架完成了许多动手实践。下面将就课程笔记、实践心得、实用资料。课程笔记本人一直保持着手写笔记的习惯,更加方便作图和补充,笔记如图所示。整个课程主要的框架梳理如下:1、基于表格的RL:① Sarsa(on-policy,每个更新时已知晓下一步动作,使用下一部动作的收益值更新)② Q

2020-06-25 22:08:12 389

空空如也

空空如也

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

TA关注的人

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