没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
试读
5页
MH算法在参数空间随机取值,作为起始点。按照参数的概率分布生成随机的参数,按照这一系列参数的组合,计算当前点的概率密度。依据当前点和起始点概率密度比值是否大于(0,1)之间的随机数来判断是否保留当前点。若当前点的概率密度大于该随机数,就称这种状态为接受状态,此时,在满足参数概率分布的前提下,继续随机抽取参数的组合,作为下一点,计算下一点的概率密度,并计算下一点概率密度和概率密度的比值,并继续循环。若当前点不能被接受,则继续在满足参数概率分布的前提下,继续生成随机数,作为新的参数组合,直到参数组合能够被接受为止。 文档内有例子和代码以及运行结果
资源推荐
资源详情
资源评论
#计算合法近邻数
nneighb <- function(x,a){
nn <- 1
sum0 <- 0 #要判断的条件的当前值
sumb <- 0
for(i in 1:length(x)){
sum0 <- sum0 + i*x[i]
}
#交换 x[i]和 x[j]的位置看是否符合条件
for(i in 1:(length(x)-1)){
for(j in (i+1):length(x)){
sumb = sum0 - i * x[i] - j * x[j] + i * x[j] + j * x[i]
if(sumb >= a){nn = nn + 1}
}
}
return(nn)
}
demo_permsub <- function(x,nout=10,n=100,a=1000){
sum1 <- 0 #要判断的条件的当前值
for(i in n){
sum1 <- sum1 + i*x[i]
}
## 输出为 nout 行 n 列矩阵
resmat <- matrix(0,nout,n)
nsucc <- 0 #已经成功找到的元素个数
nfail <- 0 #上一次成功后的累计失败次数
ntry <- 0 #总试投次数
nn1 <- nneighb(x,a) #当前合法近邻数
while(nsucc < nout){
ntry <- ntry +1
资源评论
- 牛站长2023-07-27:该文件给出了R语言的具体实现,方便读者快速上手使用,并且代码风格简洁易懂。
- 张景淇2023-07-27:这个文件通过实际案例展示了MH算法在统计计算中的有效性,让读者更加信服于该方法的准确性和可靠性。
- 那你干哈2023-07-27:作者在文件中深入浅出地解释了MH算法的核心思想和关键步骤,帮助读者理解该算法的内在逻辑。
- 梁肖松2023-07-27:这个文件详细说明了MH算法的原理和应用场景,对于学习和研究该算法的人来说非常有帮助。
- 王向庄2023-07-27:这篇文件通过对MH算法的介绍和比较分析,推动了统计计算领域的研究和应用,为相关领域的进一步发展做出了贡献。
愚生久浪
- 粉丝: 33
- 资源: 8
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功