zoukankan      html  css  js  c++  java
  • 女朋友走丢数学模型

    知乎问题

    和女朋友在商场走丢了,随机乱逛和守在特定地点等候,哪个相遇的概率更高?

    高赞答主的整理以及部分代码

    刘天任

    提出了整点离散模型,两个人一起时间减半(代码留最后

    假设你和女朋友都是(完美的)无头苍蝇,且商场空间有对称性的话,两个人都随机乱逛比其中一个蹰着更好。

    张雨萌

    都是随机游走的话,两个人一起走相当于(积累方差的)速度*2。然而与之相对的,两个人一起走对应的图更复杂,有可能出现很多岔路,消耗在岔路的时间也可能更多。

    Mather King

    将两人的运动看作布朗运动,建立连续模型

    都是随机游走的话,两个人一起走相当于(积累方差的)速度*2。然而与之相对的,两个人一起走对应的图更复杂,有可能出现很多岔路,消耗在岔路的时间也可能更多。

    代码

    刘天任

    #!/usr/bin/python3
    __author__ = 'Tianren Liu'
    
    import numpy as np
    import random
    
    step = np.array(((0,1),(0,-1),(1,0),(-1,0)));
    
    def meettime1 (Y, cap=2000):
        X = np.array((0,0));
        Y = np.array(Y);
        for i in range(cap):
            if np.array_equal(X,Y):
                return i
            Y += random.choice(step)
        else:
            return cap
    
    def meettime2 (Y, cap=1000):
        X = np.array((0,0));
        Y = np.array(Y);
        for i in range(cap):
            if np.array_equal(X,Y):
                return i
            X += random.choice(step)
            Y += random.choice(step)
        else:
            return cap
    
    if __name__ == "__main__":
        samplenum = 10000
    
        T1 = np.array([meettime1((2,4)) for i in range(samplenum)])
        T1.sort()
        print (T1)
    
        T2 = np.array([meettime2((2,4)) for i in range(samplenum)])
        T2.sort()
        print (T2)
    
        import matplotlib.pyplot as plt
        fig, ax = plt.subplots()
        ax.plot(np.arange(samplenum)/samplenum,T1)
        ax.plot(np.arange(samplenum)/samplenum,T1/2)
        ax.plot(np.arange(samplenum)/samplenum,T2)
        plt.show()
    
  • 相关阅读:
    .net core webapi发布到linux中
    封装EF,使用仓储模式所遇到的问题
    oracle取分组的前N条数据
    20141124
    搭建discuz论坛(2)
    安装apache mysql 论坛(一)
    L13 DNS
    L10 PUtty+SSH 访问vncviewer
    L12 samba服务器搭建
    L10 数据入站、转发、出站流程
  • 原文地址:https://www.cnblogs.com/Math-Nav/p/13479764.html
Copyright © 2011-2022 走看看