copied from
http://forum.xda-developers.com/showthread.php?t=856735
namespace RandomWeighting
{
class Program
{
static void Main(string[] args)
{
char[] Select = new char[10] {'A','B','C','D','E','F','G','H','I','J'};
int[] Weight = new int[10] {10,30,25,60,20,70,10,80,20,30};
int[] WeightSum = new int[10];
int i,j,k;
Random Rnd = new Random();
WeightSum[0]=Weight[0];
for (i = 1; i < 10; i++)
WeightSum[i] = WeightSum[i - 1] + Weight[i];
for (j = 0; j < 70; j++)
{
k = Rnd.Next(WeightSum[9]);
for (i = 0; k > WeightSum[i]; i++) ;
Console.Write(Select[i]);
}
Console.WriteLine();
}
}
}
The most common thought of choose with probability is make the elements to be as many as their probability is.
And then uniformly choose some one from the new range,that will be the answer.
a1 3 -> p1 = 3 / (3 + 6) = ⅓
a2 6 -> p2 = 6 / (3 + 6) = ⅔
if a1 and a2 are of equality probability then make the position 0 denote a1 and position 1 for a2.
0 1
a
1
a
2
use Random will uniformly choose one of them.
Now things got changed.We enlarge the amount of elements by some number ,say 9
0 1 2 3 4 5 6 7 8 9
|<----------- a
1
--------->|<-------------------------- a
2
----------------------->|
(ATTENTION:
The length of a
1
is 3 now , and the length of a
2
is 6.
It’s the length,not the numbers contained in their ranges.)
(Suppose rand() returns both the low bound and upper bound)
if Random.rand() * 9 returns number less or equals than 3, we will choose a
1
,
else choose a
2
.
a1’s length could be calculated through 9 * p
1
= 3;
a2’s length could be calculated through 9 * p
2
= 6;
But the number 3 is the key for choosing. Considering there’s one more element a
3
. when should a
3
be chosen? If random number greater than 9, a
3
will be chosen.(Also the random number is calculated through Random.rand() * N, where N equals to a
1
+ a
2
+ a
3
.)
So the separators are
N * p
1
, N * p
1
+ N * p
2
More generally. there will be more elements like listed below:
S
1
= N * p
1
S
2
= N * p
1
+ N * p
2
S
3
= N * p
1
+ N * p
2
+ N * p
3
S
4
= N * p
1
+ N * p
2
+ N * p
3
+ N * p
4
…....
S
n
= N * p
1
+ N * p
2
+ N * p
3
+ … + N * p
n
R = Random.rand() * N;
So ,the solution will be described as this:
Start from s1, if some Si is greater than R.then the i th element is chosen.
We also noticed both S
i
and R are composed of N,so N could be discard on calculating.
S
i
= Sigma p
i
Here, we would discover that the S
i
is the accumulative probability of discrete elements.
Maybe this can also be used in the continuous situation.
分享到:
相关推荐
统一概率模型旨在集成多种概率分布,如高斯混合模型(GMM)、贝叶斯网络或者马尔可夫随机场(MRF),以适应复杂的人脸数据分布。这种模型的优势在于能够同时考虑局部和全局的信息,提高了对噪声和变异性处理的能力。...
首次穿越问题涉及系统从稳定状态穿越到不稳定状态的概率和过程,而非线性随机最优控制则聚焦于在随机激励下系统的最优控制策略,比如如何最小化振动或最大化稳定度或繁殖度。 非线性随机动力学与控制领域的研究和...
5. 离散型随机变量与连续型随机变量的概率密度的统一:使用单位脉冲函数,能够将离散型随机变量的概率密度与连续型随机变量的概率密度统一起来,这在概率论和数理统计中提供了便利。 6. 和分布的概率密度计算公式:...
无论是离散型还是连续型随机变量,分布函数都能提供一个统一的框架来理解和计算随机变量落在特定区间的概率。本文将深入探讨随机变量的分布函数及其性质,帮助读者更好地理解这一概念。 #### 一、随机变量分布函数...
总结这些知识点,我们可以看到,随机事件与概率是概率论的基础,涉及到了事件的关系、独立性、概率的计算方法以及几何概率模型等概念。在解决实际问题时,我们需要灵活运用这些知识,结合具体情境进行分析和计算。
这篇文档主要讲解了概率论中的基本概念,特别是关于随机事件的概率和互斥事件的理解。首先,文档通过选择题的形式引入了几个例子来帮助理解。例如,第一题指出两个事件如果不能同时发生,它们是互斥的,但不一定是...
总结来说,这部分内容涵盖了概率的基本概念,包括互斥事件、统一事件、独立事件的概率计算,以及随机模拟和概率分布的理解。同时,还涉及到条件概率和概率的加法、减法规则在解决实际问题中的应用。
这里,信号的样本函数虽然具有统一的波形,但锯齿波的起点位置由随机变量\(\tau_0\)决定,而\(\tau_0\)在\((0,T)\)区间内均匀分布。通过求解随机过程\(\xi(t)\)的一维概率密度,展现了随机过程在信号处理领域的重要...
此外,教学还将渗透辩证思想教育,让学生理解随机现象的不确定性与规律性的统一。 教学的重点在于让学生在具体情境中理解概率的意义,而难点则在于对频率与概率关系的初步理解。为了辅助教学,教师会准备一些教具,...
9. **教学难点**:理解大量重复试验后频率稳定值的意义,以及频率与概率之间的对立统一关系,需要逐步深化理解。 10. **教学过程**:情境引入通常以实际问题(如姚明罚篮命中概率)开始,引导学生思考和讨论,然后...
此外,文档中提到的关于非均匀网格的概念,是指在区间[0,1]上划分的子区间不具有统一的长度,而是根据某种规则或随机过程来进行划分。这样的划分方式允许积分过程更加精细地捕捉随机过程的变化特性。 在本研究中,...
例如,它可以用于构建概率模型,如马尔可夫随机场(Markov Random Field)或贝叶斯网络(Bayesian Network),以分析图像中的像素或文本中的单词关系,识别出潜在的模式。通过概率松弛,我们可以找到最有可能的类别...
为了统一对这两类随机变量的描述,引入了分布函数的概念。 随机变量的分布函数是一个实数到实数的函数,表示随机变量X落在任意实数区间内的概率。具体来说,对于任意实数x,分布函数F(x)定义为X的值不超过x的概率,...
条件随机场(Conditional Random Field,简称CRF)是一种用于标注或分析序列数据的概率模型。它在自然语言处理、语音识别、生物信息学等领域有着广泛的应用。 #### 1. 贝叶斯网络与马尔科夫毯 在构建图像像素之间...
"高中数学统计与概率简单随机抽样知识点总结" 总体与样本是统计与概率中最基本的概念。总体是指研究对象的所有个体的集合,而样本是从总体中抽取的一部分个体的集合。简单随机抽样是指从总体中随机抽取一定数量的...
二是计算上,即使是概率假设密度(Probability Hypothesis Density, PHD)滤波——仅传播多目标后验分布的第一矩(即PHD),而非完整的后验分布——也会遇到一般情况下没有闭式解的多重积分问题。 #### 序列...
随机选择流从流中统一选择一个随机值 npm install pick-random-stream用法 var random = require ( 'pick-random-stream' )someStream . pipe ( random ( ) ) . on ( 'data' , function ( data ) { console . log ( ...
这种方法的关键优势在于它能够提供一个完整的概率密度曲线族,而非仅仅局限于二阶矩统计量(即均值和方差)。这种方法通过解耦合状态方程来实现,状态方程描述了结构响应如何随着时间(或其他加载参数)的变化而变化...
2. **同一概率空间**:所有随机变量定义在一个共同的概率空间中,意味着它们共享相同的样本空间、事件结构和概率测度,这确保了对随机现象的统一描述。 3. **连续性随机变量的条件分布问题**:定义连续性随机变量的...