Function 用于导出连续随机数序列的函数

Function 用于导出连续随机数序列的函数,function,random,random-walk,Function,Random,Random Walk,我曾经读过一篇关于函数的文章,我相信它有一个像皮尔森或泊松这样的名字,用来得到与前一个函数相近的随机数。显然,它被用于一些设备,并广泛应用于本文所述的机器人技术中。以下是原始示例: 假设你要建造一个有两个轮子的机器人。你想让这个机器人在房间里沿着一些随机的路径走,不去任何地方,在随机的时间转动随机的数量。如果你给每个轮子输入一个真正的随机数发生器,机器人很可能会在原地猛拉和旋转,而不是沿着某条路径。我们的目标不是让机器人沿着一条直线行走,而是让它看起来在运动背后有某种逻辑 因此存在着这个函数,一

我曾经读过一篇关于函数的文章,我相信它有一个像皮尔森或泊松这样的名字,用来得到与前一个函数相近的随机数。显然,它被用于一些设备,并广泛应用于本文所述的机器人技术中。以下是原始示例:

假设你要建造一个有两个轮子的机器人。你想让这个机器人在房间里沿着一些随机的路径走,不去任何地方,在随机的时间转动随机的数量。如果你给每个轮子输入一个真正的随机数发生器,机器人很可能会在原地猛拉和旋转,而不是沿着某条路径。我们的目标不是让机器人沿着一条直线行走,而是让它看起来在运动背后有某种逻辑

因此存在着这个函数,一个连续但随机变化的函数,可以随意上下弯曲。通过以设定的时间间隔从函数中获取输出(例如,从234.198开始,时间间隔为0.01),可以保证发送到控制盘的每个值都是随机的,但会遵循一些路径以及以前和将来的值。通过选择一个更大或更小的间隔,连续值之间的关系程度可以改变,从而基本上使机器人逐渐或多或少地陶醉

此函数的名称是什么?

我知道泊松分布,但我不确定它是否与此相关

如果你想在大街上随意走动,我建议在当前值上加一个小的增量,以确保小的步幅

def nextValue(n):
    return n + random(7) - 3
类似的东西总是会给你一个当前值+/-3的值,不过你可以使用
random(4)-1
调整表达式的偏差,例如,如果你喜欢随时间向前运动

对于想要平稳向前弯曲的机器人,可以设置总距离,然后在运动的整个生命周期内定期向特定车轮添加额外的向前运动,如:

def meander():
    distance = random(10,25)       # 10-25 units
    skip = distance / random(3,5)  # curve at 33/25/20% points
    direction = random(1,3)        # curve left, right or not at all
    for i = 1 to distance:
        leftdelta = rightdelta = 1 # Default to one unit forward

        if i is multiple of skip:  # Periodically adjust one wheel only
            case direction:
                1: leftdelta--
                3: rightdelta--

        leftwheel += leftdelta     # Turn wheels
        rightwheel += rightdelta

def drunken_monkey():
    while true:
        meander()

在调整下一步的运动曲线之前,这样做可以让你沿着一条平缓但随机的曲线向前运动一段时间。

模型可能就是你想要的。这是一类模型,它使用加权的过去历史和一些漂移/随机性来确定下一个值。

我投票将这个问题作为离题题题来结束,因为它与编程无关。布朗运动(高斯随机游走)@Alexander它与计算机科学的关系大于编程,但是,对于花时间研究新方法的计算机科学家来说,它的名字不太可能为人所知,而对于坚持使用久经考验的真实方法的程序员来说,它的名字不太可能为人所知,因此这个问题属于这里。另外,我对这个理论很熟悉,但在谷歌搜索了几个小时后,我似乎仍然找不到我要找的函数名。