翔鹰帝国网|帝国时代论坛|帝国时代系列|神话时代
 找回密码
 注册翔鹰会员(昵称)
搜索
查看: 6282|回复: 11

[交流] [求助]逻辑运算符and,or,not的具体使用方法

 关闭 [复制链接]

3

主题

0

精华

-4

积分

奴隶

耕战
-2
鹰币
5
天龙币
0
回帖
6
附庸关系0
发表于 2004-12-11 17:19:48 | 显示全部楼层 |阅读模式
在所有AI教程中均未看到逻辑运算符and,or,not的具体使用方法,求高手赐教!
卧龙先生将这个帖子固顶,让大家都学学。
[此贴子已经被卧龙先生于2004-12-11 22:35:10编辑过]

回复

使用道具 举报

105

主题

9

精华

2万

积分

圣徒

耕战
4516
鹰币
2080
天龙币
0
回帖
1143

一级皇家勋章翔鹰建站十周年纪念章一级翔鹰勋章特级嘉禾勋章特级帝国勋章鹰之智者蛟龙勋章

附庸关系0
发表于 2004-12-11 20:15:34 | 显示全部楼层
【and】操作符号好像AI里不用到。我自己就没有看到过。  【not】符号的使用就是对一个事实的取反。   记得我们有一个检测城镇中心是否被攻击的事实 (town-under-attack),这  时,当我们需要检测城镇中心不被攻击而进行的动作的时候就可以是使用not符号了:  例如:(not(town-under-attack))。  【or】符号的使用。  我懒得重新写一次了,从AOKAISB上复制来的内容:  符号“or”是一个标识,只用在“规测”的“事实”部分,它的用途很广。
请直接看下面的例子,就能理解它的作用了:  (defrule
  (or                             ;“or”的开始
     (game-time >60)              ;游戏时间大于60秒
     (defend-soldier-count > 20)  ;士兵人口大于20人
  )                               ;“or”的结束
=>
  (attack-now)                    ;发起进攻
)  这个“规测”的执行过程是这样的:如果游戏时间大于60秒或者士兵人口大于20人
时就发起进攻。  就是说从“(or”到它后面的“)”中间的内容都可选的,只要其中有一个“事实”
成立了,就执行所在的“动作”。 [em02][em02][em01][em06][em08][em14][em14][em14][em14]
忽见天上一火链,好像玉皇要抽烟。
如果玉皇不抽烟,为何又是一火链。
回复

使用道具 举报

3

主题

0

精华

-4

积分

奴隶

耕战
-2
鹰币
5
天龙币
0
回帖
6
附庸关系0
 楼主| 发表于 2004-12-11 20:56:09 | 显示全部楼层
<P 0cm 0pt?>我个人的理解:




<P 0cm 0pt?>  <FONT face="Times New Roman">1</FONT>、逻辑运算符:与(<FONT face="Times New Roman">and</FONT>)、或(<FONT face="Times New Roman">or</FONT>)、非(<FONT face="Times New Roman">not</FONT>),用于同一条规则的多个事实间的逻辑运算。



<P 0cm 0pt?>  <FONT face="Times New Roman">2</FONT>、无需任何逻辑运算符,同一条规则的多个事实之间的连接方式天然解释为<FONT face="Times New Roman">"and"</FONT>。



<P 0cm 0pt?>  <FONT face="Times New Roman">3</FONT>、<FONT face="Times New Roman">and</FONT>使用格式为:



<P 0cm 0pt?>   (<FONT face="Times New Roman">and

</FONT>

<P 0cm 0pt?><FONT face="Times New Roman">                    (facts 1)

</FONT>

<P 0cm 0pt?><FONT face="Times New Roman">                    (facst 2)

</FONT>

<P 0cm 0pt?><FONT face="Times New Roman">       </FONT><FONT face="Times New Roman">      )

</FONT>

<P 0cm 0pt; TEXT-INDENT: 37.5pt?>解释:<FONT face="Times New Roman">facts 1</FONT>至<FONT face="Times New Roman">facst 2 </FONT>必须同时为<FONT face="Times New Roman">true</FONT>时,本事实才为<FONT face="Times New Roman">true,</FONT>否则本事实为<FONT face="Times New Roman">false</FONT>。
<P 0cm 0pt?><FONT face="Times New Roman">       4</FONT>、<FONT face="Times New Roman">or</FONT>使用格式为:



<P 0cm 0pt?>   (<FONT face="Times New Roman">or

</FONT>

<P 0cm 0pt?><FONT face="Times New Roman">                   (facts 1)

</FONT>

<P 0cm 0pt?><FONT face="Times New Roman">                   (facst 2)

</FONT>

<P 0cm 0pt?><FONT face="Times New Roman">       </FONT><FONT face="Times New Roman">      )

</FONT>

<P 0cm 0pt; TEXT-INDENT: 37.5pt?>解释:<FONT face="Times New Roman">facts 1</FONT>至<FONT face="Times New Roman">facst 2 </FONT>必须同时为<FONT face="Times New Roman">false</FONT>时,本事实才为<FONT face="Times New Roman">false,</FONT>否则本事实为<FONT face="Times New Roman">true</FONT>。
<P 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0; mso-char-indent-size: 10.5pt?>        5、<FONT face="Times New Roman">not</FONT>使用格式为:



<P 0cm 0pt; TEXT-INDENT: 37.5pt?><FONT face="Times New Roman">(not </FONT>
<P 0cm 0pt; TEXT-INDENT: mso-char-indent-count: mso-char-indent-size: 10.5pt? 69pt; 6.57;><FONT face="Times New Roman">       ( facts )

</FONT>

<P 0cm 0pt; TEXT-INDENT: 37.5pt?><FONT face="Times New Roman">)</FONT>
<P 0cm 0pt; TEXT-INDENT: 37.5pt?>解释:             <FONT face="Times New Roman">(not(true))=false</FONT>
                        (not(false))=true
<B>介绍AI脚本技术,加精华。按第四等耕战之功论,奖励魅力100,最后结果:魅力200——操作人:无知者</B>
[此贴子已经被作者于2004-12-12 13:07:12编辑过]

回复

使用道具 举报

3

主题

0

精华

-4

积分

奴隶

耕战
-2
鹰币
5
天龙币
0
回帖
6
附庸关系0
 楼主| 发表于 2004-12-11 21:03:20 | 显示全部楼层
附件:必须使用到and的例子(摘自Azking.per)  (defrule
(current-age &gt;= castle-age)
(or
  (dropsite-min-distance wood &gt; 4)
  (and (wood-amount &gt; 300) (building-type-count-total lumber-camp &lt; 5))
)
(building-type-count-total lumber-camp &lt; 20)
(can-build lumber-camp)
=&gt;
(chat-local-to-self "build lumber camp")
(build lumber-camp)
)
回复

使用道具 举报

105

主题

9

精华

2万

积分

圣徒

耕战
4516
鹰币
2080
天龙币
0
回帖
1143

一级皇家勋章翔鹰建站十周年纪念章一级翔鹰勋章特级嘉禾勋章特级帝国勋章鹰之智者蛟龙勋章

附庸关系0
发表于 2004-12-11 21:55:24 | 显示全部楼层
是的,and还是有用的。兄弟知道的还真多是否写过程序?
忽见天上一火链,好像玉皇要抽烟。
如果玉皇不抽烟,为何又是一火链。
回复

使用道具 举报

3

主题

0

精华

-4

积分

奴隶

耕战
-2
鹰币
5
天龙币
0
回帖
6
附庸关系0
 楼主| 发表于 2004-12-11 22:01:27 | 显示全部楼层
卧龙先生缪奖了。未写程序12年了!
回复

使用道具 举报

319

主题

5

精华

2万

积分

圣徒

耕战
4708
鹰币
0
天龙币
0
回帖
1336

特级翔鹰勋章特级嘉禾勋章特级帝国勋章雄鹰勋章鹰之智者

附庸关系0
发表于 2004-12-11 22:05:14 | 显示全部楼层
看来bearaboc是个高手,欢迎光临。
天生我才必有用, 唯独是情弄不懂! 某日王帝托梦来, 明早八点起床后, 吃完蛋糕就会懂。 (试读每句第三字会有惊喜) ——火箭筒大哥作
回复

使用道具 举报

105

主题

9

精华

2万

积分

圣徒

耕战
4516
鹰币
2080
天龙币
0
回帖
1143

一级皇家勋章翔鹰建站十周年纪念章一级翔鹰勋章特级嘉禾勋章特级帝国勋章鹰之智者蛟龙勋章

附庸关系0
发表于 2004-12-11 22:10:15 | 显示全部楼层
呵呵,兄弟一下子写了12年的程序呀,厉害。
我是用Delphi的,不过还没有12个月,料兄应该是用VC++的。
其实一下子就看出来了,只有写过程序的人才能怎么快理解的。
欢迎大哥你加入我们的帝国大军团。呵呵
[此贴子已经被作者于2004-12-11 22:26:20编辑过]

忽见天上一火链,好像玉皇要抽烟。
如果玉皇不抽烟,为何又是一火链。
回复

使用道具 举报

126

主题

3

精华

1万

积分

圣徒

耕战
2437
鹰币
252
天龙币
0
回帖
2918

一级嘉禾勋章特级帝国勋章十字军勋章

附庸关系0
发表于 2004-12-12 15:57:37 | 显示全部楼层
12年……老一代电脑人啊
回复

使用道具 举报

313

主题

19

精华

3万

积分

圣徒

耕战
4847
鹰币
80
天龙币
0
回帖
6213

特级翔鹰勋章一级嘉禾勋章一级帝国勋章第一届火箭筒杯最佳战役第一届火箭筒杯最佳平衡第一届火箭筒杯最佳娱乐雄鹰勋章

附庸关系0
发表于 2004-12-12 19:15:27 | 显示全部楼层
未不会是主语吧?……  是不是 NOT ……
天行健,君子以自强不息   
    地势坤,君子以厚德载物
回复

使用道具 举报

203

主题

3

精华

1万

积分

圣徒

耕战
2004
鹰币
82
天龙币
0
回帖
1362

特级嘉禾勋章一级帝国勋章鹰之智者

附庸关系0
发表于 2004-12-12 19:24:33 | 显示全部楼层
呵呵,如果<FONT color=#000066><B>bearaboc</B></FONT><FONT color=#000000>兄進步很快的話,可以考慮讓他也擔任AI區的版主。</FONT>
以前有位dreamcn,也是MPS進步得很快,但是好久沒來了,哎,可惜。
[此贴子已经被作者于2005-1-26 23:09:35编辑过]

我宁以顷刻短暂的繁华,换取千年无尽的落寞。
回复

使用道具 举报

132

主题

12

精华

5万

积分

圣徒

耕战
10009
鹰币
1090
天龙币
0
回帖
4763

特级翔鹰勋章一级帝国勋章第二届火箭筒杯最佳战役第三届火箭筒杯最佳战役雄鹰勋章

附庸关系0
发表于 2004-12-13 19:46:34 | 显示全部楼层
我記得他..............他沒來也有很多月啦
You'll never walk alone!
回复

使用道具 举报

本版积分规则

排行榜|小黑屋|翔鹰帝国

GMT+8, 2024-11-22 01:47 , Processed in 0.159607 second(s), 137 queries , File On.

Powered by Hawk Studio  QS Security Corp.® Licensed

Copyright © 2001-2023, Hawkaoe.net All Rights Reserved

快速回复 返回顶部 返回列表