随机模型--北太天元学习21
现实生活中的许多现象都有不确定因素。随机模型是一个考虑到这种随机性影响的模型。
例如,预测天气或谁将赢得足球比赛的预测包含了不确定性。
首先,我们将定义随机变量,并讨论如何在北太天元中生成随机数。随机变量X是一个具有未知值的变量,该值取决于偶然性。X可以取的所有可能值的集合称为样本空间。随机变量由概率分布定义,该概率分布描述了样本空间给出的可能结果的概率。
随机变量可以是离散的,也可以是连续的,这取决于样本空间的性质。离散随机变量具有可数或有限的样本空间,连续随机变量具有不可数的无限样本空间。要在北太天元中生成随机数可以使用rand。这将在区间[0,1]中生成一个随机数。
您也可以使用rand(n)生成nxn个随机数组成的矩阵,或者使用rand(n,m)生成随机数组成的n×m矩阵。
要在[0,1]以外的区间生成随机数,只需通过乘法和/或加法进行缩放。例如,要在区间[a,b]中生成一个随机数,可以使用(b-a)*rand+a。我们可以把生成随机数的过程看作是从一个均匀分布的随机变量中取样(sampling)。
均匀分布的随机变量是连续随机变量的一个简单例子,如果变量在一个区间内以相等的概率取值。我们将X~U(a,b)表示为区间[a,b]上的一致随机变量。要在区间[8,10]中生成均匀分布的随机值,请使用2*rand+8。
在实践中,我们通常会对仅仅取有限个值的的随机变量做取样,例如,一个普通的六面体色子掷一次面朝上的点数取值X仅仅只有1,2,3,4,5,6留个数值, 此时我们称样本空间S={1,2,3,4,5,6}。 我们可以使用[0,1]上的均匀分布和rand函数来模拟掷色子得到点数。
使用这种分布,区间[0,1]的所有值都有同样的可能被选择,因此将区间划分为长度为1/6的6个相等的子区间, n个子区间和色子面朝上的随机量X的n个离散值之间产生一对一的对应关系。
为了随机选择X的六个值中的一个,首先让u∈[0,1]是区间[0,1]上均匀分布的随机值。将区间[0,1]划分为六个子区间[0,1/6),[1/6,2/6),..., [5/6,1],我们注意到区间u包含在哪个区间中,并赋予x∈S的值。对于u∈[0],1/6),设x=1;对于u∈[1/6,2/6],设x=2;
..., 并且对于u∈[5/6,1],设x=6。
我们回顾一下离散模型,态(state)是随着时刻t变换的,给出了两个时刻t, t+1 之间的关系, 例如
x_{t+1} = f( x_{t} ),
其中 f 是一个给出 x_{t} 到 x_{t+1} 的确定性关系的映射。 在这一节,我们将学习的是, x_{t+1}和x_{t}的关系不完全是确定性的, 而是增加了一些随机因素。 例如,一个醉汉在t时刻的位置是 x_t, 那么下一个时刻他的位置是随机的向前或者向后的,
x_{t+1} = x_t + X(t)
其中X(t) = 1 表示t时刻掷硬币出现正面向上的事件,X(t) = -1 表示t时刻掷硬币出现背面向上的事件。 也就是说,在t时刻 X(t)的取值是随机的,可能是+1, 可能是-1. 这样的随机模型也是有很多应用的。例如我们要去找这个醉汉,在去找之前,我们先计算醉汉出现在哪些点的概率最大, 我们就多次模拟计算醉汉走的路径,然后统计醉汉出现在哪些点的概率最高。
醉汉走丢的例子, 我用视频来说吧, 用的是下面的脚本.
%北太天元模拟随机游走
clc;
clear all;
clf;
close all;
hold off
load_plugin("time") %
N = 100; % 每一次出发后走的总步数,每一步x方向和y方向上走+1或者-1的距离
总次数 = 200; % 走的总次数
x_t(1) = 0; %初始位置的x坐标
y_t(1) = 0; %初始位置的y坐标
for m=1:总次数
plot(-25:25,-25:25)
hold on
for n = 1:N % 随机确定每一步走到哪个位置
% rand生成[0,1]之间的均匀分布, rand-0.5 的符号为正负的概率都是0.5
%根据 rand-0.5的符号来确定是走+1或者-1,
% rand-0.5 的符号可能取为0,这个概率是0,可以忽略。
sx = sign(rand-0.5);
x_t(n+1) = x_t(n) + sx;
sy = sign(rand-0.5); % 和 sx 一样
y_t(n+1) = y_t(n) + sy;
plot(x_t(n:n+1), y_t(n:n+1),'LineWidth', 10);
str = sprintf("第%d次出发, 第%d步",m,n)
title(str)
pause(0.2)
end
clf;
plot(-25:25,-25:25)
hold on
plot(x_t, y_t,'LineWidth',10);
pause(1)
hold off
end
还可以参考两个趣味应用:
【电脑算卦简洁版-filmage】 https://www.bilibili.com/video/BV18s4y1f7vc/?share_source=copy_web&vd_source=2adc5aa7a702b808eb8b31dbd210f954
【如何找到合适的另一半:一个数学解决方案】 https://www.bilibili.com/video/BV1Mk4y1M7Lu/?share_source=copy_web&vd_source=2adc5aa7a702b808eb8b31dbd210f954