matlab p算法和k算法,请教:蚂蚁择优中P(k)的实现(MATLAB)

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

第一次运行的时间求得的P(k)是,

0.0000119745487820.0004644818594930.0042427296879390.0006561408853980.0015589258814470.0015708230552350.0002846199000170.0000748960121980.0000357626950110.0000194247820890.0058667659009390.0003448476044930.000332897616220.0001546313296690.000004004676920.0032226653684290.0330007093260830.0119241521645930.2040903787522840.4310048039490930.003622235921680.0008336469787750.0284469212503290.2637571989888720.0015169941893350.0005024888787610.0002134611250120.0007551191710210.001311655863250.000174641636634

然后它把每一项都变成前N项的和,Pcum=cumsum(P);

0.0000119745487820.0004764564082750.0047191860962140.0053753269816110.0069342528630590.0085050759182930.008789695818310.0088645918305080.0089003545255190.0089197793076080.0147865452085470.015131392813040.015464290429260.015618921758930.015622926435850.0188455918042790.0518463011303620.0637704532949550.2678608320472390.6988656359963320.7024878719180120.7033215188967870.7317684401471160.9955256391359880.9970426333253220.9975451222040840.9977585833290950.9985137025001160.9998253583633661

然后再Select=find(Pcum>=rand);

Pcum中每个元素都是求和求来的,即使是在第K个城市处P(k)很小,但是在Pcum(k)也一定是大于Pcum(k-1)的,由于rand是随机的,也就导致Select所找到的Pcum中第一个元素的位置是随机的,而不管该元素所对应的P(k)有多小,然后它就按照这个位置走下去了,在这个过程中我看不出P(k)高的城市会有较高的概率被选择

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值