【技术实现步骤摘要】
带约束的随机数的生成方法、系统、电子设备及存储介质
[0001]本专利技术涉及随机数的生成方法,特别涉及一种带约束的随机数的生成方法。
技术介绍
[0002]现有的技术的随机数生成方法一般如下述步骤:
[0003]1)随机生成一个数;
[0004]2)判断生成的数据是否满足约束条件;
[0005]3)若不满足,则重新执行1);
[0006]4)若满足,则把该随机生成的数做为输出结果。
[0007]但是上述的随机数生成方法存在如下问题:在上述过程中,由于“先生成再判断,”如果判断不符合约束条件,则会反复生成随机数,直至生成符合约束条件的随机数为止。这种做法效率不高,特殊情况下需要很多时间才能生成符合约束条件的随机数。
[0008]例如,随机数的约束为:
[0009]a)addr>=0并且addr<64
[0010]b)size>=0并且size<3
[0011]c)当size==1时,(addr%2) ...
【技术保护点】
【技术特征摘要】
1.一种带约束的随机数的生成方法,其特征在于,包括如下步骤:步骤S1:获取各个随机数的独立的集合,同时获取随机数约束之间的联系图;步骤S2:根据联系图,将每一个随机数的约束进行分类,来获取所有的随机数的集合;步骤S3:将最后的随机数的所有集合的个数的总和作为所需要结构的全集S;步骤S4:建立所述全集S中每个元素P和随机数的映射关系;步骤S5:在所述全集S内随机选取一个元素P,将元素P转换为符合约束条件的随机数。2.根据权利要求1所述的带约束的随机数的生成方法,其特征在于,在所述步骤S1中,通过分析随机数的约束条件,得到各个随机数的独立的集合,同时根据约束的影响关系,得到随机数约束之间的联系图。3.根据权利要求2所述的带约束的随机数的生成方法,其特征在于,所述随机数约束之间的联系图为:随机数i的约束
‑
>随机数i+1的约束
‑
>
…‑
>随机数i+n的约束。4.根据权利要求3所述的带约束的随机数的生成方法,其特征在于,所述步骤S2包括如下步骤:步骤S21:根据所述步骤S1的联系图,将每一个随机数的约束进行分类,计算出每个类别的随机数的集合;步骤S22:以计算出的集合作为该随机数的分类,继续计算下一个随机数的集合;步骤S23:依次计算,直到得到最后一个随机数的集合。5.根据权利要求3或4所述的带约束的随机数的生成方法,其特征在于,所述步骤S2包括如下步骤:根据所述步骤S1的联系图,将每一个随机数i+k的约束分类,计算出每个类别的...
【专利技术属性】
技术研发人员:林晗,王飞,姜志颖,
申请(专利权)人:苏州睿芯集成电路科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。