* 一、有趣的蒙提霍尔问题 蒙提霍尔问题(Monty Hall problem),也称为三门问题,是一个源自博弈论的数学游戏问题,问题的名字来自美国的电视游戏节目:Let's Make a Deal,该节目的主持人名叫蒙提?霍尔(Monty Hall)。 这个游戏的玩法是:参赛者面前有三扇关闭的门,其中一扇门的后面藏有一辆汽车,而另外两扇门的后面则各藏有一只山羊。参赛者从三扇门中随机选取一扇,若选中后面有车的那扇门就可以赢得该汽车。当参赛者选定了一扇门,但尚未开启它的时候,节目主持人会从剩下两扇门中打开一扇藏有山羊的门,然后问参赛者要不要更换自己的选择,选取另一扇仍然关上的门。这个游戏涉及到的问题是:参赛者更换自己的选择是否会增加赢得汽车的概率? 生成随机数 ? 谢中华, 天津科技大学数学系. * * 华文行楷,字号88,颜色红,位于每一章的第一节的最前面。 不使用动画 * 生成随机数 教 材 * * 主要内容 生成一元分布随机数 生成多元分布随机数 蒙特卡洛方法 * 第一节 生成一元分布随机数 * 一、均匀分布随机数和标准正态分布随机数 调用格式: Y = rand Y = rand(n) Y = rand(m,n) Y = rand([m n]) Y = rand(m,n,p, …) Y = rand([m n p …]) Y = rand(size(A)) 1. rand函数 * 在MATLAB7.7以前的版本中,rand函数还可以这样调用: rand(method, s) s = rand(method) 其中method是字符串变量,它的可能取值如下表所列: * 调用格式: 与rand函数类似 2. randn函数 * % 设置随机数生成器的算法为Mersenne Twister算法,初始种子为1 >> rand('twister',1); % 生成2行6列的随机数矩阵,其元素服从[0,1]上均匀分布 >> x1 = rand(2,6) 【例4.1-1】设置随机数生成器的算法为Mersenne Twister算法,生成均匀分布随机数矩阵 * 二、RandStream类 MATLAB 7.7及以后的版本中,依然支持rand函数的上述两种调用方式,但已经是过时的调用方式了,因为MATLAB 7.7中对生成随机数作了重大调整,给出了RandStream(随机数流)类,通过调用类的构造函数并传递合适的参数可以创建类对象,然后调用类对象的rand,randn,randi,randperm方法生成随机数。 * RandStream类方法列表 1. 创建RandStream类对象 * 调用格式: s = RandStream('gentype') […] = RandStream('gentype','param1',val1,'param2',val2,…) 2. RandStream函数的调用方法 gentype有6个可能的取值:mcg16807、mlfg6331_64、mrg32k3a、mt19937ar、shr3cong和swb2712,对应随机数生成器的6个不同算法,默认值为mt19937ar * % 创建一个RandStream类对象s,其随机数生成器的算法为‘mlfg6331_64’,初始种子为10,对象s的randn方法的算法为'Inversion' >> s = RandStream('mlfg6331_64', 'seed', 10, 'RandnAlg', 'Inversion'); % 调用对象s的randn方法生成10行10列的随机数矩阵x,其元素服从标准正态分布 >> x = s.randn(10) >> y = x(:); % 将x按列拉长成一个列向量 >> hist(y) % 绘制频数直方图 >> xlabel('标准正态分布随机数'); % 为X轴加标签 >> ylabel(‘频数’); % 为Y轴加标签 【例4.1-2】调用RandStream函数创建一个指定随机数生成算法的RandStream类对象,然后利用对象的randn方法生成10×10的标准正态分布随机数矩阵,并将矩阵按列拉长,画出频数直方图 * 三、常见一元分布随机数 MATLAB统计工具箱中函数名以rnd三个字符结尾的函数用来生成常见分布的随机数。例如: betarndBeta分布 exprnd指数分布 gamrndGamma分布 lognrnd对数正态分布 normrnd正态分布 poissrnd泊松分布 randsample从有限总体中随机抽样 random指定分布 * % 调用normrnd函数生成1000行3列的随机数矩阵x,其元素服

MATLAB随机数的应用ppt,Matlab生成随机数.ppt相关推荐

  1. 利用计算机可产生随机数,一种利用计算机生成随机数的方法

    一种利用计算机生成随机数的方法 (2012-07-16 23:22:33) 标签: 随机数 函数 数值 计数器 程序运行 杂谈 这里介绍一种利用计算机生成随机数的方法,微机都有系统计数器记录自运行开始 ...

  2. 梅森旋转产生随机数c语言实现,C++生成随机数的实现代码

    C风格 C为随机数提供的工具是rand.srand和RAND_MAX,定义在中. srand为rand设置种子,如果不设置,相当于调用过srand(1).rand产生伪随机数,其范围为0到RAND_M ...

  3. css随机数,在LESS CSS中生成随机数?

    通过LESS Mixin for Variation 通过使用LESS mixin生成随机数,您可以根据需要在每个位置调用它,更容易控制输出.此代码部分是在this SO answer的帮助下构建的, ...

  4. python生成随机数random操作_Python random生成随机数示例

    代码中经常有一些生成随机数的需求.特意整理了一下Python中random模块的一些相关使用方法示例. python生成随机数 随机整数: >>> import random > ...

  5. python生成随机数列表并排序_python_生成随机数与列表排序

    1.  列表排序可采用两种方法 sorted(list) 直接改变list 调用list的方法 list.sort 2. random.randint(a,b) 生成大于等于a小于等于b的整数 ran ...

  6. JavaScript 随机数 – 如何在 JS 中生成随机数

    在使用 JavaScript 程序时,有时您可能需要生成一个随机数. 例如,您可能希望在开发 JavaScript 游戏(例如猜数字游戏)时生成一个随机数. JavaScript 有许多用于处理数字和 ...

  7. python基本随机数生成函数有_Python中生成随机数的常用方法

    注意:random模块中的方法是不能直接访问的,需要导入 random 模块,然后通过 random 静态对象调用方法. random.random() random()方法返回随机生成的一个实数(浮 ...

  8. java怎么把随机数放入数组_JAVA 生成随机数数组 | 学步园

    一.JAVA获取随机数的方法 //使用java.lang.Math类的random()方法 double a = Math.random(); System.out.println("0.0 ...

  9. golang 字符串随机数_在Go中生成随机数和字符串

    golang 字符串随机数 While completely random is not really possible, we still can have pseudorandom numbers ...

  10. php生成指定范围随机数两位小数_PHP生成随机数的几种方法

    第一种方法用mt_rand() function GetRandStr($length){ $str='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUV ...

最新文章

  1. CPU Cache原理与示例
  2. python分隔符的使用,在python中使用分隔符“\”拆分字符串
  3. 如何利用 C# 爬取带 Token 验证的网站数据?
  4. 五十九、如何求N个数的最大公约数和最小公倍数
  5. (技能篇)双机热备之Oracle切换故障处理
  6. 销售探讨_让我们一起探讨编程资源的领域
  7. 前端学习(2714):重读vue电商网站34之侧边栏路由改造
  8. 事务的特性和隔离级别
  9. 【java】字符串和基本数据类型之间的转换
  10. 查找出现次数 oracle,ORACLE计算某个列中出现次数最多的值
  11. Flask 的 数据库连接 与 DBUtils 数据库连接池
  12. vue的一些坑(第二天)
  13. ElasticSearch5.1 基本概念和配置
  14. java通过反射调用matlab生成的jar包中的方法(1)--java调用matlab的参数个数和类型问题
  15. 学习笔记(1):2020软考数据库系统工程师-基础知识培训视频-计算机系统--体系结构概述...
  16. 马斯克:未来将尝试打造超级高铁运输系统 时速是飞机的2倍
  17. BPSK_QPSK_16QAM _64QAM _MATLAB
  18. 微商城搭建教程,手把手教你开通自己的线上/定制微商城!
  19. poi操作word替换模板向指定位置添加图表
  20. 大数据平台架构的层次划分

热门文章

  1. shader效果————镜子效果
  2. 互联网公司的技术体系
  3. amazon linux ami root 密码,Amazon Linux AMI 常见问题
  4. 【算法java版09】:利用java实现对二进制数进行AMI编码
  5. 高性能科学计算、工程计算仿真用电脑装机经验
  6. CreatePipe、CreateProcess函数
  7. 微型计算机接口技术论文,微机原理与接口技术课程论文
  8. Java Date总结
  9. 打开客户端出现 sorry this application cannot run under a virtual machine错误
  10. Wunderlist 安装不了,提示要求更新window版本问题