seagate 发表于 2010-1-27 09:11:16

A*算法是什么东东?说说啊?

superxx 发表于 2010-1-27 09:58:53

找本人工智能的书看看就知道了,有点儿申奥

hba 发表于 2010-1-27 12:30:29

高手越来越多了,等俺猫在旁边好好的偷师。
是不是这个博客呢?
http://blog.csdn.net/suxiaojack/archive/2008/09/14/2928714.aspx
http://blog.csdn.net/suxiaojack/archive/2008/10/10/3042706.aspx

[ 本帖最后由 hba 于 2010-1-27 12:33 PM 编辑 ]

seagate 发表于 2010-1-27 23:56:42

人工智能???太偏了,不懂!

superxx 发表于 2010-1-28 20:50:55

人工智能不偏啊,你做机器人,不就是人工智能吗?

sauron 发表于 2010-2-4 20:47:13

基于A*算法的房间寻路过程,地图格式如前面。
--city城市表,sid起始房间编号,did目的房间编号
local openlist={}
local closedlist={}

--主函数
function getroompath(city,sid,did)
local bestroom,temproom
if sid==did then return "" end
table.insert(openlist,createnode(sid,0,"",nil,nil))
while table.getn(openlist)~=0 do
table.sort(openlist,function(a,b) return a.g<b.g end)
bestroom=openlist
if bestroom.key==0 then
   print("房间"..bestroom.prevnode.."有出口指向0,请查证")
   return ""
end
table.remove(openlist,1)
if not checkclosedlist(bestroom.key) then closedlist=bestroom end
if bestroom.key==did then return getpathfromlist(sid,did) end
for k,v in pairs(city.roomexists) do
   if not checkopenlist(v) then
    if not checkclosedlist(v) then table.insert(openlist,createnode(v,bestroom.g+1,k,bestroom.key,nil)) end
   end
end
end
end

--创建节点
function createnode(key,g,path,prevnode,nextnode)
return {key=key,g=g,path=path,prevnode=prevnode,nextnode=nextnode}
end

--检查
function checkopenlist(key)
for k,v in pairs(openlist) do
if key==v.key then return true end
end
return false
end

--检查
function checkclosedlist(key)
if closedlist~=nil then
return true
else
return false
end
end

--获取路径
function getpathfromlist(sid,did)
local tmp
local path=""
tmp=closedlist
path=tmp.path
while tmp.prevnode~=sid do
tmp=closedlist
path=tmp.path..";"..path
end
return path
end

[ 本帖最后由 sauron 于 2010-2-4 09:18 PM 编辑 ]

yuerr 发表于 2010-3-22 10:21:54

有了框架还是很方便
玩别的mud也可以利用起来
可以参考helllua
或则我的钓鱼机器人
http://pkuxkx.com/forum/viewthread.php?tid=6399&extra=page%3D&page=1

hxyokokok 发表于 2010-4-11 11:08:31

不懂LUA。。。路过说下

LZ用java不?看过heritrix的代码?那个叫帅气呀。
你里面有个责任链模式
一个处理过程划分为:筛选、预处理、处理、后处理、过滤。。。。。等等一个完整的生命周期
所有的处理步骤都实现某个约定的借口。把这些处理器配置好后,总的处理器遍历处理器链。

至于处理器的配置,完全使用反射机制就可以实现,这样LZ提供C之后,我们直接写M然后用文本配置就行了。。

就行jsp里面web。xml配置的那样

lzkd 发表于 2010-6-14 18:55:24

感慨一下,写文章需要这篇的资料,翻出来看看,有些感慨

cyezy 发表于 2011-4-30 11:42:00

框架用来通配所有游戏和id吗
页: 1 2 3 4 [5] 6
查看完整版本: mush机器人框架设想