- 博客(65)
- 收藏
- 关注
原创 统一建模语言UML之类图(Class Diagram)(表示|关系|举例)
UML是软件设计和面向对象编程中常用的一种标准化建模语言,对于可视化系统结构和功能非常有用,类图有多种不同类型的图:用例图,类图,时序图,活动图和状态图,每类图都有规范的表示,不局限于语言,本文介绍以下内容(1)UML的图分类(2)类图的表示(3)类图的关系(4)类图的作用。
2024-09-08 23:16:43
3620
1
原创 Python数据类模块DataClasses总结
> DataClasses从python3.7开始加入,是一种用来高效存储数据的工具,本文介绍以下内容> (1)dataclass的基本定义和功能> (2)dataclass+优先队列的排序> (3)dataclass的字段设置
2024-09-05 18:31:49
2855
1
原创 Python数据结构类型总结
数据结构是构建程序的基本结构,每个数据结构都提供了一种组织数据的特定方式,以便能更高效的访问数据,Python 在其标准库中附带了一组广泛的数据结构,本文主要介绍以下内容:(1)Python 标准库中内置了哪些常见的抽象数据类型(2)最常见的抽象数据类型在Python中如何映射到具体的命名(3)如何在各种算法中将抽象数据类型付诸实际使用本文为Python数据结构指引,对于每类具体的数据结构细节没有详细阐述,可根据功能需求自行查找相关内容
2024-09-04 21:45:33
832
原创 库存优化之随机性供应链
来源:《Inventory Optimization:Models and Simulations》的Part II: Stochastic Supply Chains,主要介绍需求和提前期随机条件下的库存优化
2024-08-24 21:52:01
1055
1
原创 库存优化之确定性供应链
来源:《Inventory Optimization:Models and Simulations》的Part I:Deterministic Supply Chains,主要介绍需求和提前期确定条件下的供应链库存管理。
2024-08-22 22:35:31
799
原创 核密度估计KDE原理及Python实现(PDF|CDF|Kernel|KDE)
一些情况下,数据分布是没有规律的,不能直接对应上常见的概率密度函数PDFs上。这种情况下,Kernel Density Estimator (KDE) 提供了一种对数据分布比较合理和乐观的表达。
2024-08-11 17:21:01
2346
1
原创 Operations Research (2): Optimization Algorithms课程作业代码及结果(调度|选址)
来源:Coursera课程Operations Research课程是National Taiwan University开设的运筹优化课程,共分成三个系列:Models and Applications;Optimization Algorithms和Theory,其中Part2主要介绍了一些求解算法,比如单纯形法,梯度下降,分支定界和启发式等,本文记录了该课程的结课小作业。
2024-07-27 17:48:37
403
原创 Operations Research课程之带约束的非线性规划(凸分析|Lagrange松弛|Lagrange对偶|KKT条件)
凸规划(凸函数,凸集,单变量和多变量NLP分析),拉格朗日松弛函数,拉格朗日对偶性质,KKT条件,带约束的非线性规划问题
2024-07-04 13:07:02
1142
原创 Operations Research课程之线性规划对偶(对偶理论|影子价格|单纯形法|对偶单纯形法)
原始和对偶问题模型的确定,对偶定理的证明,为什么需要对偶?敏感性分析,影子价格和对偶,单纯形法,对偶单纯形法
2024-06-27 21:01:25
1526
原创 Operations Research课程之非线性规划(梯度下降|牛顿法|Gurobi+Python)
用于求解无约束非线性优化问题的方法:梯度下降和牛顿法,算法原理和举例说明,使用Python+Gurobi求解二次规划问题:农产品定价问题
2024-05-13 17:43:49
1712
1
原创 网络流问题求解及Gurobi+Python代码(最大流/最小成本网络流/多商品网络流)
最大流问题,最小成本网络流,多商品网络流,Gurobi+python代码
2024-02-07 21:06:19
2741
1
原创 路径规划问题数学模型及Python+Gurobi求解(旅行商TSP/容量约束CVRP/时间窗约束VRPTW/取送货PDPTW)
对路径规划四大类问题进行建模求解:(1)TSP旅行商问题(2)CVRP带容量约束(3)VRPTW带时间窗约束(4)PDPTW带取送货约束,分别给出数学模型和Guro bi求解代码
2023-09-16 16:40:43
4551
5
原创 Git基础知识:常见功能和命令行
版本控制系统Git 是一个开源的分布式版本控制系统,能敏捷高效地处理任何或小或大的项目,通常用于团队开发项目过程中对源码协同编辑和管理。Git 是 Linus Torvalds 在2005年为了帮助管理 Linux 内核开发,基于C开发的一个开源版本控制软件,方便其它内核开发者提交贡献和修改。主要介绍文件管理,远程仓库和分支管理
2023-08-03 13:36:17
1057
2
原创 非线性规划求解方法:序列线性规划(Sequential linear programming)
Sequential linear programming (SLP)序列线性规划也叫successive linear programming,是一个用于解决非线性规划问题non-linear programming (NLP)的数学规划方法。SLP能通过泰勒级数展开将NLP转化为一系列线性规划问题linear programming(LP),LP可以通过单纯形法或求解器求得解。
2023-06-09 16:26:12
5821
原创 多目标优化算法评价指标(performance metrics)
单目标优化问题比较各种算法的性能可以直接通过目标值比较,但是多目标优化算法找到的往往是帕累托解,需要一些合适的评价指标来比较这些算法的性能。本文主要介绍hypervolume (HV),generational distance(GD),inverted generational distance(IGD)和set coverage(C),基本文献里用到的都是这几种方法。
2023-04-14 21:50:34
20292
6
原创 Genetic Programming遗传规划python库教程(gplearn和DEAP)
gplearn库和DEAP库的官方教程,gplearn以实现遗传规划为主,DEAP提供了多种进化算法框架
2023-03-31 21:40:25
9754
1
原创 多智能体强化学习(MARL)训练环境总结
目前开源的多智能体强化学习项目都是需要在特定多智能体环境下交互运行,为了更好的学习MARL code,需要先大致了解一些常见的MARL环境以及库。比如petting zoo, SMAC,MPE等
2023-03-24 16:14:34
6722
原创 强化学习稀疏奖励问题(sparse reward)及解决方法
通常在训练智能体时,我们希望每一步动作都有相应的奖励。但是某些情况下,智能体并不能立刻获得奖励,比如全局奖励的围棋,最终获胜会得到奖励,但是人们很难去设定中间每步的奖励,这会导致学习缓慢甚至无法进行学习的问题。稀疏奖励,奖励塑型,课程学习,好奇心模块,分层强化学习
2023-03-22 16:59:08
7267
原创 用迭代局部搜索求解TSP问题(python)
ILS的核心思想:找到一个局部最优解后,对当前解增加一个扰动,得到新解,从新解基础上再进行局部搜索找到新的局部最优。通过迭代不停的找到新的局部最优比较从而找到全局最优,避免的局部搜索容易陷入局部最优的缺点。实现迭代局部搜索只需要写四个函数,生成初始解`GenerateInitialSolution`,局部搜索`LocalSearch`,扰动函数`Perturbation`,判断接收新解`AcceptanceCriterion`。这四个函数的设计方法都会影响最后的搜索解,不同的问题要针对性设计
2023-01-10 21:46:39
2799
2
原创 NSGA-II:快速精英多目标遗传算法(论文+代码解读)
NSGA-II有三个重点的改进:快速非支配排序(fast nondominated sorting),精英保留策略(elitist-preserving),无参数的小生境算子(parameterless niching operator)。NSGA-II的算法流程和算法实现
2023-01-02 20:40:58
67893
26
原创 Discrete Optimization课程笔记(5)—混合整数规划
MIP模型,分支定界,割平面法,切割类型,分支割平面,big-M,覆盖切割,最大独立集
2022-12-20 17:04:45
4225
原创 用Gurobi+python求解设施选址问题(facility location)
用Gurobi+python求解设施选址问题(facility location),MIP模型
2022-12-16 21:21:32
6100
原创 Discrete Optimization课程笔记(4)—线性规划
线性规划模型,几何性质,矩阵性质,代数性质,单纯形法,对偶模型,互补松弛定理
2022-12-14 20:30:38
1535
原创 Discrete Optimization课程笔记(3)—局部搜索
局部搜索,如何交换邻域,启发式算法,元启发式算法如迭代局部搜索,禁忌搜索,模拟退火,常见的局部搜索案例如旅行商问题,图着色问题,
2022-12-02 14:24:56
3405
原创 多智能体强化学习MARL的概念和框架
多智能体包括完全合作,完全竞争,合作和竞争已经利己主义。有三种框架:完全中心化,完全去中心化,中心化学习和去中心化执行
2022-11-23 21:50:40
4628
原创 python复杂网络分析库NetworkX
NetworkX 是一个Python包,用于创建、操作和研究复杂网络的结构和功能。提供以下内容: - 图、有向图和多重图的数据结构 - 许多标准图算法(最短路,最大流等) - 网络结构及分析方法 - 经典图、随机图和合成网络的生成器 - .........用Networks求解图着色问题
2022-11-21 21:26:26
9528
原创 Discrete Optimization课程笔记(2)—约束规划
约束规划使用约束减少每个变量取值集合移除不可能出现在任何解的值精确解而非启发式解:足够时间,能找到满意解和最优解怎么使用约束缩小搜索空间,排除不可能出现在任何解的取值;约束传播,元素约束,全局约束,对称性破缺,冗余约束,搜索策略,图着色问题编程代码
2022-11-11 20:03:58
3379
原创 Gurobi求解器基础入门官方教程
Gurobi是一种数学规划(线性和凸二次规划)优化器。支持多种语言接口,本文以python+gurobi为主。
2022-10-31 16:06:59
35852
6
原创 Discrete Optimization课程笔记(1)—背包问题
背包问题(Knapsack problem)是一种组合优化的NP完全问题。问题可以描述为:给定一组物品,每种物品都有自己的重量和价格,在限定的总重量内,我们如何选择,才能使得物品的总价格最高。分别用动态规划和gurobi求解器解决背包问题
2022-10-21 18:12:29
1933
原创 python数据分析库pandas官方教程
10个知识点: - pandas库处理什么类型的数据 - 怎么读取和存储数据 - 如何选择DataFrame子集 - 如何在pandas里绘图 - 如何从已有的列创建新列 - 如何计算统计值 - 如何重新设计表格的布局 - 如何从多个表格连接数据 - 如何处理时间序列数据 - 如何处理文本数据
2022-10-07 20:51:02
1560
1
原创 PyTorch实现PPO代码
actor网络即策略网络,输入state,输出action概率,使用Categorical生成动作分布。critic网络即值网络,输入state,输出state-value。(4)更新估计状态值函数得到critic loss。(2)获取每个mini batch更新后的新策略。(3)执行clip操作得到actor loss。(1)计算GAE优势函数。(5)反向传播更新参数。......
2022-08-28 20:19:58
12810
26
原创 python实现电影院仿真(SimPy)
仿真环境:电影院仿真目标:减少顾客的平均等待时间,少于10分钟在开始仿真前,先思考这个仿真过程,顾客在坐下来看电影前需要经过哪些步骤这些步骤中又一些是可以控制的,比如有多少雇员在卖票或者卖小零食,有一些步骤需要依赖之前的数据进行预测,比如有多少顾客到达,接下来开始仿真过程,首先导入需要的库记录优化目标:找到雇员的最佳数量,使所有顾客的平均等待时间小于10分钟,使用列表存储顾客等待时间。
2022-08-24 23:23:16
2377
1
RCPSP-gurobi-J30-master
2023-07-26
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人