如何得到相对合理的事件发生概率.
我在做ai设计的时候对于npc的ai有这样一种处理.
在条件1的时候 30%概率发生攻击 40%概率发生靠近 30%概率发生退后
在条件2的时候 70%概率发生攻击 10%概率发生靠近 20%概率发生退后.
现处理方式如下
int num = getRand(0,10);//取,0到9之间的随机值
if(条件1) {
if(num < 3)攻击
else if(num < 7)靠近
else 退后
}else
if(条件2) {
if(num < 7)攻击
else if(num < 8)靠近
else 退后
}
但是实际上 这样的概率取得方式并不理想,多数情况下不能体现概率的含义,而num的值总是取得一定范围内浮动.而导致发生的事情是相对情况下是一定的.
请问有其他方式可以得到相对真是的概率么?
------解决方案--------------------概率是一个统计概念
如果对同一个地方测试10000次
则各个事件出现的比例就比较接近于你设定的 3:4:3 或 7:1:2