一种基于人工智能的模糊逻辑技术实现AI行为判断方法与流程

文档序号:12864238阅读:2052来源:国知局

本发明涉及一种基于人工智能的模糊逻辑技术实现ai行为判断方法,属于游戏算法技术领域。



背景技术:

模糊逻辑是建立在多值逻辑基础上,运用模糊集合的方法来研究模糊性思维,模糊逻辑指在模仿人脑的不确定性概念判断、推理思维方式,对于模型未知或不能确定的描述系统,以及强非线性、大滞后的控制对象,应用模糊集合和模糊规则进行推理,表达过渡性界限或定性知识经验,模拟人脑方式,实行模糊综合判断,推理解决常规方法难于对付的规则型模糊信息问题。模糊逻辑善于表达界限不清晰的定性知识与经验,它借助于隶属度函数概念,区分模糊集合,处理模糊关系,模拟人脑实施规则型推理,解决因“排中律”的逻辑破缺产生的种种不确定问题。

在一般的游戏中,ai行为的转换都是精准的条件判断,比如对方离我方100个像素,我方攻击,如果我方生命值小于10%,我方逃跑。但是这样的精准条件判断会使得ai的行为非常生硬,表现奇怪,违背玩家的心理预期。举个例子,假设对方离我方100个像素,这时我方选择攻击,但是这个时候我方的生命值又小于10%,我方也应该选择逃跑,那么这样就造成了逻辑冲突,在游戏中我方ai的行为会在攻击和逃跑两个状态间来回切换,造成人物抖动的奇怪表现。为了解决精准判断导致的逻辑冲突问题,有必要使用了模糊逻辑技术。



技术实现要素:

本发明的目的在于提供一种基于人工智能的模糊逻辑技术实现ai行为判断方法,以便更好地实现游戏模糊逻辑判断,改善其使用效果。

为了实现上述目的,本发明的技术方案如下。

一种基于人工智能的模糊逻辑技术实现ai行为判断方法,其具体实现过程如下:

(1)输入:在游戏中,将攻击距离、攻击者生命值、攻击者攻击力、攻击者防御力、攻击者当前装备、被攻击者攻击力、被攻击者防御力、被攻击者当前装备、相距距离作为了模糊变量的输入。

(2)构建模糊规则:

(2a)构建流程具体为:

(s1)设计期望值模糊变量:这是表示后果集合期望值所需要的;模糊变量期望值需要去表示从0到100的所有分数的域,因此,其成员集合必须恰当的分布在这个域内;选择使用三个成员集合:一个左肩集合、一个三角集合和一个右肩集合,让它们代表语言术语“undesirable不希望”、“desirable希望”、“verydesirable非常希望”;

(s2)设计击杀概率模糊变量:这是表示前提条件。选择使用三个成员集合:killprobability_low击杀概率低、killprobability_medium击杀概率有可能、killprobability_veryhigh击杀概率非常大;概率值的范围在0到1之间;给模糊集合killprobability_low设置0.3的峰值;选择0.5作为killprobability_medium的峰值,选择0.8作为killprobability_veryhigh的峰值,然后稳步上升到0.9;

(s3)设计与目标距离模糊变量:这是表示前提条件。选择使用三个成员集合:target_close与目标距离近、target_ok与目标距离合适、target_far与目标距离远;给模糊集合target_close设置距离为25个像素的峰值;选择150个像素作为target_ok的峰值,选择300像素为target_far的峰值,然后稳步上升到400;

(s4)设计规则集:模糊变量击杀概率和与目标距离,它们每个都包含三个成员集合。为了覆盖每种可能的组合,使用“与运算”方法,定义出了9种规则,每种规则得出一个期望值后果:规则1:如果killprobability_low与target_close,那么undesirable;规则2:如果killprobability_low与target_ok,那么desirable;规则3:如果killprobability_low与target_far,那么undesirable;规则4:如果killprobability_medium与target_close,那么undesirable;规则5:如果killprobability_medium与target_ok,那么verydesirable;规则6:如果killprobability_medium与target_far,那么desirable;规则7:如果killprobability_veryhigh与target_close,那么undesirable;规则8:如果killprobability_veryhigh与target_ok,那么verydesirable;规则9:如果killprobability_veryhigh与target_far,那么desirable;

(2b)计算方法:

(n1)依次通过以下计算公式计算出击杀概率:

a、攻击力=当前装备+基础攻击力;

b、防御力=当前装备+基础防御力;

c、击杀对方需要的攻击回合=对方生命值/(我方攻击力-对方防御力);

d、对方击杀我方需要的攻击回合=我方生命值/(对方方攻击力-我方防御力);

e、击杀对方的概率=击杀对方需要的攻击回合/对方击杀我方需要的攻击回合;

(n2)通过使用向量vector计算与目标距离;

(3)去模糊化并得出结果:根据模糊规则,使用了平均最大值的方法去模糊化得到最后是否进攻的最终期望值;

平均最大值的计算公式:

平均最大值=(不希望的中心值*不希望隶属度+希望的中心值*希望隶属度+非常希望的中心值*非常希望隶属度)/(不希望隶属度+希望隶属度+非常希望隶属度);

最后判断计算出来的平均最大值是否超过当前行为的平均最大值,如果超过就执行,如果没有超过就不执行。

进一步地,上述判断方法基于编程语言实现。

进一步地,上述判断方法基于手机、智能电脑、网络游戏平台运行。

该发明的有益效果在于:本发明方法能有效地判断ai行为,实现其模糊化,改善了游戏运行效果,使用效果好。

具体实施方式

下面结合实施例对本发明的具体实施方式进行描述,以便更好的理解本发明。

实施例

本实施例中的基于人工智能的模糊逻辑技术实现ai行为判断方法,其具体实现过程如下:

(1)输入:在游戏中,将攻击距离、攻击者生命值、攻击者攻击力、攻击者防御力、攻击者当前装备、被攻击者攻击力、被攻击者防御力、被攻击者当前装备、相距距离作为了模糊变量的输入。

(2)构建模糊规则:

(2a)构建流程具体为:

(s1)设计期望值模糊变量:这是表示后果集合期望值所需要的;模糊变量期望值需要去表示从0到100的所有分数的域,因此,其成员集合必须恰当的分布在这个域内;选择使用三个成员集合:一个左肩集合、一个三角集合和一个右肩集合,让它们代表语言术语“undesirable不希望”、“desirable希望”、“verydesirable非常希望”;

(s2)设计击杀概率模糊变量:这是表示前提条件。选择使用三个成员集合:killprobability_low击杀概率低、killprobability_medium击杀概率有可能、killprobability_veryhigh击杀概率非常大;概率值的范围在0到1之间;给模糊集合killprobability_low设置0.3的峰值;选择0.5作为killprobability_medium的峰值,选择0.8作为killprobability_veryhigh的峰值,然后稳步上升到0.9;

(s3)设计与目标距离模糊变量:这是表示前提条件。选择使用三个成员集合:target_close与目标距离近、target_ok与目标距离合适、target_far与目标距离远;给模糊集合target_close设置距离为25个像素的峰值;选择150个像素作为target_ok的峰值,选择300像素为target_far的峰值,然后稳步上升到400;

(s4)设计规则集:模糊变量击杀概率和与目标距离,它们每个都包含三个成员集合。为了覆盖每种可能的组合,使用“与运算”方法,定义出了9种规则,每种规则得出一个期望值后果:规则1:如果killprobability_low与target_close,那么undesirable;规则2:如果killprobability_low与target_ok,那么desirable;规则3:如果killprobability_low与target_far,那么undesirable;规则4:如果killprobability_medium与target_close,那么undesirable;规则5:如果killprobability_medium与target_ok,那么verydesirable;规则6:如果killprobability_medium与target_far,那么desirable;规则7:如果killprobability_veryhigh与target_close,那么undesirable;规则8:如果killprobability_veryhigh与target_ok,那么verydesirable;规则9:如果killprobability_veryhigh与target_far,那么desirable;

(2b)计算方法:

(n1)依次通过以下计算公式计算出击杀概率:

a、攻击力=当前装备+基础攻击力;

b、防御力=当前装备+基础防御力;

c、击杀对方需要的攻击回合=对方生命值/(我方攻击力-对方防御力);

d、对方击杀我方需要的攻击回合=我方生命值/(对方方攻击力-我方防御力);

e、击杀对方的概率=击杀对方需要的攻击回合/对方击杀我方需要的攻击回合;

(n2)通过使用向量vector计算与目标距离;

(3)去模糊化并得出结果:根据模糊规则,使用了平均最大值的方法去模糊化得到最后是否进攻的最终期望值;

平均最大值的计算公式:

平均最大值=(不希望的中心值*不希望隶属度+希望的中心值*希望隶属度+非常希望的中心值*非常希望隶属度)/(不希望隶属度+希望隶属度+非常希望隶属度);

最后判断计算出来的平均最大值是否超过当前行为的平均最大值,如果超过就执行,如果没有超过就不执行。

上述判断方法基于编程语言实现。

上述判断方法基于手机、智能电脑、网络游戏平台运行。

以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1