如何生成具有特定概率密度函数的随机数?

2024-03-08

我正在尝试对移动无线网络的阴影和快速衰落进行建模。对于快速衰落,瑞利衰落是一个合理的模型。信道响应的包络将是瑞利分布的。将该随机变量称为 R,其概率密度函数 (PDF) 为

PR(r) = ((2r)/Ω)*exp(-r^2/Ω), r >= 0, Ω = 2σ^2

http://en.wikipedia.org/wiki/Rayleigh_fading http://en.wikipedia.org/wiki/Rayleigh_fading看看方程写得很好。

所以,我有 PDF,现在我只是想知道如何从中获取随机变量?

我看过这些问题:

在 Ruby 中生成符合概率分布的数字数组? https://stackoverflow.com/questions/4550758/generate-array-of-numbers-that-fit-to-a-probability-distribution-in-ruby

生成具有概率分布的随机数 https://stackoverflow.com/questions/3109670/generate-random-numbers-with-probabilistic-distribution

但我仍然不知道该怎么做。我花了很长时间才理解 PDF,所以如果有人知道 Java 中获取特定 PDF 的随机变量的方法,我将不胜感激!


瑞利分布是一个特例威布尔分布 http://en.wikipedia.org/wiki/Weibull_distribution。如果你谷歌一下,就会发现有很多用 Java 编写的威布尔生成器,例如:

  • http://commons.apache.org/math/apidocs/org/apache/commons/math3/distribution/WeibullDistribution.html http://commons.apache.org/math/apidocs/org/apache/commons/math3/distribution/WeibullDistribution.html
  • http://www.iro.umontreal.ca/~simardr/ssj/doc/html/umontreal/iro/lecuyer/randvar/WeibullGen.html http://www.iro.umontreal.ca/~simardr/ssj/doc/html/umontreal/iro/lecuyer/randvar/WeibullGen.html
  • http://www.icsa.inf.ed.ac.uk/research/groups/hase/simjava/distributions/doc/eduni/distributions/Weibull.html http://www.icsa.inf.ed.ac.uk/research/groups/hase/simjava/distributions/doc/eduni/distributions/Weibull.html
  • http://www.ee.ucl.ac.uk/~mflanaga/java/PsRandom.html http://www.ee.ucl.ac.uk/~mflanaga/java/PsRandom.html

从给定分布生成随机数的一种方法是生成在 0 到 1 之间均匀分布的随机数,并应用目标分布的逆CDF http://en.wikipedia.org/wiki/Cumulative_distribution_function到那个随机数。看维基百科 http://en.wikipedia.org/wiki/Inverse_transform_sampling.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何生成具有特定概率密度函数的随机数? 的相关文章

随机推荐

  • Mysql 查询运行速度更快

    表结构 CREATE TABLE IF NOT EXISTS logs id bigint 20 unsigned NOT NULL AUTO INCREMENT user bigint 20 unsigned NOT NULL type
  • 如何捕获 Android 上的应用流量

    我正在尝试从 Android 手机上的应用程序捕获流量 尽管我已在手机上设置代理并且可以捕获来自手机的所有其他互联网流量 使用 Charles 代理 但我看不到任何流量这一个应用程序 这是如何完成的以及如何捕获流量 UPDATE 如果您需要
  • 将 UTC 时间戳转换为任何其他区域时间戳

    我正在使用 MongoDB 来存储我的数据 Mongo 默认以 UTC 格式存储时间戳 我们在不同时区处理数据 我正在努力将 UTC 时间戳转换为 PDT 或 IST 时间戳 尝试构造一个方法来传递时区 我的时间戳将转换为其中 和时间戳 U
  • 用户配置文件的布局不适用于 asp.net core 3.0

    在 Asp core 3 0 上 当用户单击其个人资料 Areas Identity Pages Account Manage layout cshtml 时 我的布局页面无法正常工作 当我登录后单击默认电子邮件时 我会看到 Manage
  • 重置 R 实例

    是否可以重置 R 实例 例如 如果我使用了命令 x lt 1 10 plot x x 从而用 x 变量污染了系统 在这种状态下 我可以在不关闭 R 并再次启动它的情况下恢复到干净状态吗 您可以使用以下命令从工作区中删除所有变量 rm lis
  • protobuf-net 不比二进制序列化快吗?

    我编写了一个程序 使用 XMLSerializer BinaryFormatter 和 ProtoBuf 序列化 Person 类 我认为 protobuf net 应该比其他两个更快 Protobuf 序列化比 XMLSerializat
  • MVC 4 中的防伪 cookie 令牌和表单字段令牌不匹配

    我在 ASP NET MVC 4 中使用默认登录模块 我没有更改默认应用程序中的任何代码 并将其托管在共享服务器上 我使用默认登录页面登录后 我让浏览器闲置了一段时间 然后 当我尝试执行任何控制器操作时 显然应用程序会重定向到登录页面 Au
  • Python Matplotlib - 未对齐的网格线和颜色填充

    我使用以下代码来生成一种二进制热图 import numpy as np import matplotlib colors as mlc import matplotlib pyplot as mlp states AAAA BBBB CC
  • 使用 Rails 连接到 Web 服务(HTTP 请求)?

    我正在使用 Ruby on Rails 3 并尝试实现 API 以从 Web 服务检索帐户信息 也就是说 我想连接到具有 Account 类的 Web 服务并从show在 URI 处路由的操作http
  • 带有绝对路径的“没有这样的文件或目录”

    我想导入 png 文件 import matplotlib pyplot as plt O plt imread C Users myusername Downloads Mathe Picture png 我有绝对路径 但它仍然给我错误
  • 如何从一个类调用另一个类的方法(iOS)

    这是一个非常基本的问题 但我进行了全面搜索 但无法找到一个足以让我理解的答案 我想要做的是在我的 iOS 应用程序的一个类中创建一个方法 然后从我的应用程序中的其他类调用该方法 有人可以准确解释我需要做什么才能实现这一目标吗 任何帮助将不胜
  • HTML5 拖放在拖动时更改光标(不使用 UI)

    我想改变cursor拖动时 所以我尝试这样 function drag event localStorage setItem no event target data no html css cursor move tr class mem
  • 使 Python 脚本与 xargs 一起工作

    让我的 Python 脚本与 xargs 良好配合的过程是什么 例如 我希望以下命令能够处理文本文件的每一行 并执行任意命令 cat servers txt hardware py m 本质上希望将每一行传递给 hardware py 脚本
  • 从 Java 写入 XML 文档 - 简单

    我知道 stackoverflow 上有很多关于从 Java 编写到 XML 的问题 但它太复杂了 我觉得我有一个非常简单的问题 但我无法弄清楚 因此 我有一个程序需要大量用户输入 并且当前正在创建并附加带有结果的文本文档 我将在这里发布我
  • 具有附加可绑定字段的 ASP.NET Server 控件

    我创建了一个自定义服务器控件 源自System Web Contols CheckBoxList定制如何CheckBoxList被渲染 我还想添加另一个可绑定字段并获取该字段的值CheckBoxList RenderItem 方法 我想要创
  • 构建时 PNG 生成不支持对其他资源的引用

    AndroidStudio 3 0 Android Gradle 插件 3 0
  • TableLayout中表行的索引

    我有一个 TableLayout 和一些未知数量的 TableRows 它们是根据数据库中的内容生成的 每行都附加了一个 OnClick 侦听器 但是 一旦发生单击 我就无法 有意义地 分辨它来自哪一行 有没有一种方法可以获取与 Table
  • lib 依赖项及其顺序

    有时 如果我们没有在 makefile 中按特定顺序列出库 则会失败 原因是 定义应该先于其使用 如何确定正确的顺序 实际上 在链接库时 使用应该在定义之前 在处理提供其定义的库文件之前 需要知道任何未解析的符号 恐怕您必须手动执行此命令
  • Facebook Graph API 返回空数据集

    我正在尝试使用 Graph API Explorer 为我的应用程序创建访问令牌 以使用 me accounts 查看我的页面 但是 每次我尝试此操作时 它都会返回一个空数据集 我已经选择了manage pages作为权限 但它仍然不起作用
  • 如何生成具有特定概率密度函数的随机数?

    我正在尝试对移动无线网络的阴影和快速衰落进行建模 对于快速衰落 瑞利衰落是一个合理的模型 信道响应的包络将是瑞利分布的 将该随机变量称为 R 其概率密度函数 PDF 为 PR r 2r exp r 2 r gt 0 2 2 http en