⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mazedemo.def

📁 人工智能中Agent开发包。多 Agent 系统是处理自治 Agent 之间知识层的协作问题
💻 DEF
字号:
BEGIN_GENERATOR
  BEGIN_PREAMBLE
    :system "ZEUS-Agent-Generator"
    :version "1.04"
    :ontology ".:mazedemo.ont"
  END_PREAMBLE

  BEGIN_AGENT_NAME_INDEX
    AgentId1 Environment
    AgentId0 Navigator
  END_AGENT_NAME_INDEX

  BEGIN_AGENT_ICON_INDEX
    AgentId1 ".:gifs:maze.gif"
    AgentId0 ".:gifs:navigator.gif"
  END_AGENT_ICON_INDEX

  BEGIN_TASK_NAME_INDEX
    AbstractTaskId1 Register
    AbstractTaskId14 Navigate
    AbstractTaskId0 respondMove
  END_TASK_NAME_INDEX

  BEGIN_AGENT_LIST
    (:name AgentId1
     :class ZeusAgent
     :planner_width 2
     :planner_length 20
     :doublebook_fraction 0
     :tasks (AbstractTaskId0
            )
     :initial_facts ((:type agentRegistered
                      :id fact195
                      :modifiers 0
                      :attributes ((name Environment)
                                  )
                     )
                    )
    )
    (:name AgentId0
     :class ZeusAgent
     :planner_width 2
     :planner_length 20
     :doublebook_fraction 0
     :tasks (AbstractTaskId1
             AbstractTaskId14
            )
     :initial_facts ((:type thisMove
                      :id fact39
                      :modifiers 0
                      :attributes ((west false)
                                   (east false)
                                   (south false)
                                   (north false)
                                   (id Navigator)
                                  )
                     )
                    )
     :protocols ((:name "zeus.actors.graphs.ContractNetInitiator"
                  :type Initiator
                  :constraints ((:fact (:type ZeusFact
                                        :id var12
                                        :modifiers 1
                                       )
                                 :type 0
                                 :strategy "zeus.actors.graphs.DefaultInitiatorEvaluator"
                                )
                               )
                 )
                )
     :acquaintances ((:name AgentId1
                      :relation peer
                     )
                    )
    )
  END_AGENT_LIST

  BEGIN_TASK_LIST
    (:Rulebase AbstractTaskId1
       (registerWithEnvironment
          ?aN <- (agentsName (name ?var6))
          =>
          (send_message (type inform) (content ?aN) (receiver Environment))
       )
       (exitedMaze9
          ?me <- (mazeExited (id ?var6))
          ?obst <- (obstacle)
          ?aR <- (agentRegistered (name ?var19))
          ?tM <- (thisMove)
          (agentsName (name ?var33))
          =>
          (retract ?me)
          (retract ?obst)
          (retract ?aR)
          (retract ?tM)
          (assert (thisMove (west false) (east false) (south false) (north false) (id ?var33)))
       )
    )
    (:Rulebase AbstractTaskId14
       (start
          ?obs <- (obstacle (west ?var180) (east ?var181) (south ?var182) (north ?var179))
          ?lastMove <- (thisMove (west false) (east false) (south false) (north false))
          ?agentReg <- (agentRegistered (name ?var15))
          ?inMaze <- (inMaze (isInMaze true))
          =>
          (modify ?lastMove (west false) (east false) (south false) (north true))
          (send_message (type inform) (content ?lastMove) (receiver ?var15))
          (retract ?obs)
       )
       (followWall_east9
          ?obst <- (obstacle (east false) (north true))
          ?agentReg <- (agentRegistered (name ?var15))
          ?lastMove <- (thisMove (east true))
          ?inMaze <- (inMaze (isInMaze true))
          =>
          (modify ?lastMove (west false) (east true) (south false) (north false))
          (send_message (type inform) (content ?lastMove) (receiver ?var15))
          (retract ?obst)
       )
       (followWall_north9
          ?obst <- (obstacle (west true) (north false))
          ?agentReg <- (agentRegistered (name ?var15))
          ?lastMove <- (thisMove (north true))
          ?inMaze <- (inMaze (isInMaze true))
          =>
          (modify ?lastMove (west false) (east false) (south false) (north true))
          (send_message (type inform) (content ?lastMove) (receiver ?var15))
          (retract ?obst)
       )
       (followWall_west9
          ?obst <- (obstacle (west false) (south true))
          ?agentReg <- (agentRegistered (name ?var15))
          ?lastMove <- (thisMove (west true))
          ?inMaze <- (inMaze (isInMaze true))
          =>
          (modify ?lastMove (west true) (east false) (south false) (north false))
          (send_message (type inform) (content ?lastMove) (receiver ?var15))
          (retract ?obst)
       )
       (followWall_south9
          ?obst <- (obstacle (east true) (south false))
          ?agentReg <- (agentRegistered (name ?var15))
          ?lastMove <- (thisMove (south true))
          ?inMaze <- (inMaze (isInMaze true))
          =>
          (modify ?lastMove (west false) (east false) (south true) (north false))
          (send_message (type inform) (content ?lastMove) (receiver ?var15))
          (retract ?obst)
       )
       (going_east_blocked_east
          ?obst <- (obstacle (east true) (south true))
          ?agentReg <- (agentRegistered (name ?var15))
          ?lastMove <- (thisMove (east true))
          ?inMaze <- (inMaze (isInMaze true))
          =>
          (modify ?lastMove (west false) (east false) (south false) (north true))
          (send_message (type inform) (content ?lastMove) (receiver ?var15))
          (retract ?obst)
       )
       (going_east_blocked_east_openSouth
          ?obst <- (obstacle (east true) (south false))
          ?agentReg <- (agentRegistered (name ?var15))
          ?lastMove <- (thisMove (east true))
          ?inMaze <- (inMaze (isInMaze true))
          =>
          (modify ?lastMove (west false) (east false) (south true) (north false))
          (send_message (type inform) (content ?lastMove) (receiver ?var15))
          (retract ?obst)
       )
       (going_south_blocked_south
          ?obst <- (obstacle (west true) (south true))
          ?agentReg <- (agentRegistered (name ?var15))
          ?lastMove <- (thisMove (south true))
          ?inMaze <- (inMaze (isInMaze true))
          =>
          (modify ?lastMove (west false) (east true) (south false) (north false))
          (send_message (type inform) (content ?lastMove) (receiver ?var15))
          (retract ?obst)
       )
       (going_south_blocked_south_openWest
          ?obst <- (obstacle (west false) (south true))
          ?agentReg <- (agentRegistered (name ?var15))
          ?lastMove <- (thisMove (south true))
          ?inMaze <- (inMaze (isInMaze true))
          =>
          (modify ?lastMove (west true) (east false) (south false) (north false))
          (send_message (type inform) (content ?lastMove) (receiver ?var15))
          (retract ?obst)
       )
       (going_north_blocked_north
          ?obst <- (obstacle (east true) (north true))
          ?agentReg <- (agentRegistered (name ?var15))
          ?lastMove <- (thisMove (north true))
          ?inMaze <- (inMaze (isInMaze true))
          =>
          (modify ?lastMove (west true) (east false) (south false) (north false))
          (send_message (type inform) (content ?lastMove) (receiver ?var15))
          (retract ?obst)
       )
       (going_north_blocked_north_openEast
          ?obst <- (obstacle (east false) (north true))
          ?agentReg <- (agentRegistered (name ?var15))
          ?lastMove <- (thisMove (north true))
          ?inMaze <- (inMaze (isInMaze true))
          =>
          (modify ?lastMove (west false) (east true) (south false) (north false))
          (send_message (type inform) (content ?lastMove) (receiver ?var15))
          (retract ?obst)
       )
       (going_west_blocked_west
          ?obst <- (obstacle (west true) (north true))
          ?agentReg <- (agentRegistered (name ?var15))
          ?lastMove <- (thisMove (west true))
          ?inMaze <- (inMaze (isInMaze true))
          =>
          (modify ?lastMove (west false) (east false) (south true) (north false))
          (send_message (type inform) (content ?lastMove) (receiver ?var15))
          (retract ?obst)
       )
       (going_west_blocked_west_openNorth
          ?obst <- (obstacle (west true) (north false))
          ?agentReg <- (agentRegistered (name ?var15))
          ?lastMove <- (thisMove (west true))
          ?inMaze <- (inMaze (isInMaze true))
          =>
          (modify ?lastMove (west false) (east false) (south false) (north true))
          (send_message (type inform) (content ?lastMove) (receiver ?var15))
          (retract ?obst)
       )
       (junctionSouth_goingWest
          ?obst <- (obstacle (south false))
          ?agentReg <- (agentRegistered (name ?var15))
          ?lastMove <- (thisMove (west true))
          ?inMaze <- (inMaze (isInMaze true))
          =>
          (modify ?lastMove (west false) (east false) (south true) (north false))
          (send_message (type inform) (content ?lastMove) (receiver ?var15))
          (retract ?obst)
       )
       (junctionNorth_goingEast
          ?obst <- (obstacle (north false))
          ?agentReg <- (agentRegistered (name ?var15))
          ?lastMove <- (thisMove (east true))
          ?inMaze <- (inMaze (isInMaze true))
          =>
          (modify ?lastMove (west false) (east false) (south false) (north true))
          (send_message (type inform) (content ?lastMove) (receiver ?var15))
          (retract ?obst)
       )
       (junctionWest_goingNorth
          ?obst <- (obstacle (west false))
          ?agentReg <- (agentRegistered (name ?var15))
          ?lastMove <- (thisMove (north true))
          ?inMaze <- (inMaze (isInMaze true))
          =>
          (modify ?lastMove (west true) (east false) (south false) (north false))
          (send_message (type inform) (content ?lastMove) (receiver ?var15))
          (retract ?obst)
       )
       (junctionEast_goingSouth
          ?obst <- (obstacle (east false))
          ?agentReg <- (agentRegistered (name ?var15))
          ?lastMove <- (thisMove (south true))
          ?inMaze <- (inMaze (isInMaze true))
          =>
          (modify ?lastMove (west false) (east true) (south false) (north false))
          (send_message (type inform) (content ?lastMove) (receiver ?var15))
          (retract ?obst)
       )
    )
    (:Rulebase AbstractTaskId0
       (firstLegalMove
          ?move <- (moveMade (moved true))
          ?obst <- (obstacle (west ?var177) (east ?var178) (south ?var179) (north ?var176))
          =>
          (send_message (type inform) (content ?obst) (receiver Navigator))
          (retract ?move)
          (retract ?obst)
       )
       (illegalMove
          ?move <- (moveMade (moved false))
          ?obst <- (obstacle (west ?var177) (east ?var178) (south ?var179) (north ?var176))
          =>
          (send_message (type inform) (content ?obst) (receiver Navigator))
          (retract ?move)
          (retract ?obst)
       )
       (respondReg
          (agentsName (name ?var194))
          ?ar <- (agentRegistered (name ?var199))
          =>
          (send_message (type inform) (content ?ar) (receiver ?var194))
          (assert (inMaze (isInMaze true) (name ?var194)))
       )
       (sendInMaze
          ?im <- (inMaze (isInMaze true) (name ?var269))
          =>
          (send_message (type inform) (content ?im) (receiver ?var269))
       )
       (sendExited
          ?ex <- (mazeExited (id ?varH))
          =>
          (send_message (type inform) (content ?ex) (receiver ?varH))
       )
    )
  END_TASK_LIST

  BEGIN_GENERATION_PLAN
    BEGIN_PREAMBLE
      :platform "Windows"
      :directory "."
    END_PREAMBLE
    BEGIN_AGENT_LIST
      (:id AgentId1
       :generate false
       :status Saved
       :has_gui true
       :host "127.0.0.1"
       :zeus_external "mazeControl"
       :dns_file "dns.db"
      )
      (:id AgentId0
       :generate false
       :status Saved
       :has_gui true
       :host "127.0.0.1"
       :zeus_external "navGUI"
       :dns_file "dns.db"
      )
    END_AGENT_LIST
    BEGIN_TASK_LIST
      (:id AbstractTaskId1
       :generate false
       :status Saved
       :external null
      )
      (:id AbstractTaskId14
       :generate false
       :status Saved
       :external null
      )
      (:id AbstractTaskId0
       :generate false
       :status Saved
       :external null
      )
    END_TASK_LIST
    BEGIN_NAMESERVER_LIST
      (:name ANS
       :is_root true
       :has_gui false
       :host "127.0.0.1"
       :address_output_file "dns.db"
       :time_grain 0.1
      )
    END_NAMESERVER_LIST
    BEGIN_VISUALISER_LIST
      (:name Visualiser
       :has_gui false
       :host "127.0.0.1"
       :dns_file "dns.db"
      )
    END_VISUALISER_LIST
  END_GENERATION_PLAN
END_GENERATOR

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -