数学建模社区-数学中国

标题: Dijkstra算法用matlab实现遇到问题!! [打印本页]

作者: 莫西莫西    时间: 2013-8-18 16:10
标题: Dijkstra算法用matlab实现遇到问题!!
我碰到一个和Dijkstra算法类似求最短路径的问题,但是有点不同的是我求的路径上的权值不能直接相加,每个相邻节点之间的路径有两个值,一个是长度,一个是人口数,路径上的人口数相加除以长度相加得到人口密度。我想得到一条人口密度最大的路径,也就是说输入两个权值矩阵,不知道怎么编程,求助啊,,那个大神能给出源代码?有起点和终点。

作者: madio    时间: 2013-8-18 16:37
你可以还用最短路的程序,只不过把每条路的人口密度的倒数求出来做为这条路的长度,这样你求的最短路就应该是人口密度最大的路!
作者: 莫西莫西    时间: 2013-8-18 16:40
madio 发表于 2013-8-18 16:37
你可以还用最短路的程序,只不过把每条路的人口密度的倒数求出来做为这条路的长度,这样你求的最短路就应该 ...

额,这倒是可以求出最大密度,可是两条路的人口密度不能直接相加啊,没有意义啊
作者: madio    时间: 2013-8-18 17:52
密度不能相加,那你的找到人口密度最大的路径这个概念如何定义,要不就是人口可以相加,道路长度可以相加,然后再相除得到密度,这也不妨碍我上面说的方法,就是你前期工作多进行一些计算而已!




欢迎光临 数学建模社区-数学中国 (http://www.madio.net/) Powered by Discuz! X2.5