| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 数据结构与算法 -> MSA(Method of Successive Algorithm)算法逻辑及实例 -> 正文阅读 |
|
[数据结构与算法]MSA(Method of Successive Algorithm)算法逻辑及实例 |
文章目录前言????????在城市交通网络配流问题的求解中,MSA(Method of Successive Algorithm)算法作为Frank Wolf算法的变种有非常重要的作用。本文主要介绍了MSA的算法逻辑,最后使用excel来计算一个简单的例子。对上述工作的理解,可以帮助大家将MSA算法转化为matlab代码或者python代码。 一、MSA算法是什么?????????MSA(Method of Successive Algorithm)算法,也叫做连续平均算法,主要思想是将迭代过程中一系列的辅助点进行平均,其中每一个迭代点都是通过求解辅助规划问题得来的 ,而辅助规划问题又是基于前面迭代过程中的辅助。 ? ? ? ? 与Frank Wolf 算法相比,这种方法的优点是在每次迭代的过程中,不需要通过求解线性搜索问题而得到的迭代步长,而迭代步长是预先确定的,因此MSA算法简单,但是由于缺乏在迭代过程中的调整,该算法在大型路网中收敛速度较慢。 二、求解优化问题1.典型优化问题其中,是的矩阵,秩为,是维的列向量,是连续可微函数,可行域记为: PS: 交通分配中常用得到的多项logit模型,可以把出行成本和流量分配的概率结合起来: ?2.求解步骤? ? ? ? 假定在任意点,目标函数的负梯度即为迭代方向,通过求解下面的线性规划问题可以得到从点出发的最优可行下降方向 ? ????????上面这个线性规划问题就是辅助规划问题,通过求解此问题得到原问题的?辅助变量?。 ????????其中,决策变量的的辅助变量,之间的迭代关系是: ? ? ? ? 当前后两次决策变量的?的值小于设定误差,则迭代结束。 ????????备注:交通流量分配的常见logit分配模型,原理就是在出行者选择出行成本低的路径的概率更大,体现在数学形式上就是: 其中,代表在r到s之间的第k条路径被选择的概率。 三、简单案例此案例参考:B站用户: 小魔仙的babala(https://link.zhihu.com/?target=https%3A//www.bilibili.com/video/BV1TK411n77H) 案例:给定初始条件,,总流量为10。下图代表的是两条路径的出行成本 ,求解最后两条路径的均衡流量。 迭代过程如下:
我们看到第6次迭代和第7次迭代之后,两条路径的流量已经趋于稳定,因此我们认为达到了UE状态。 总结? ? ? ? MSA算法是交通流分配问题中的常见算法,在论文中也常见,掌握它的计算逻辑,能够更好的理解MSA算法的python和matlab代码,也是帮助我自己理解:) |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/25 23:42:46- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |