亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? dilemma2.clp

?? 一個有關專家系統的CLISP 源代碼
?? CLP
字號:
;;;======================================================
;;;   Farmer's Dilemma Problem
;;;
;;;     Another classic AI problem (cannibals and the 
;;;     missionary) in agricultural terms. The point is
;;;     to get the farmer, the fox the cabbage and the
;;;     goat across a stream.
;;;        But the boat only holds 2 items. If left 
;;;     alone with the goat, the fox will eat it. If
;;;     left alone with the cabbage, the goat will eat
;;;     it.
;;;        This example uses COOL classes and 
;;;     message-handlers to solve the problem.
;;;
;;;     CLIPS Version 6.0 Example
;;; 
;;;     To execute, merely load and enter (solve-dilemma).
;;;======================================================

;;;**************
;;;* DEFCLASSES *
;;;**************

(defclass status
   (is-a USER)
   (role concrete)
   (slot farmer
      (create-accessor write)
      (default shore-1))
   (slot fox
      (create-accessor write)
      (default shore-1))
   (slot goat
      (create-accessor write)
      (default shore-1))
   (slot cabbage
      (create-accessor write)
      (default shore-1))
   (slot parent
      (create-accessor write)
      (default no-parent))
   (slot search-depth
      (create-accessor write)
      (default 1))
   (slot last-move
      (create-accessor write)
      (default no-move)))

;;;****************
;;;* DEFFUNCTIONS *
;;;****************

(deffunction contradiction
   (?f ?x ?g ?c ?d)
   (if (or (and (eq ?x ?g) (neq ?f ?x)) (and (eq ?g ?c) (neq ?f ?g)))
      then
      TRUE
      else
      (any-instancep ((?s status))
        (and (eq ?s:farmer ?f) 
          (eq ?s:fox ?x)
          (eq ?s:goat ?g)
          (eq ?s:cabbage ?c)
          (< ?s:search-depth ?d)))))

(deffunction opposite-shore
   (?value)
   (if (eq ?value shore-1)
      then
      shore-2
      else
      shore-1))

(deffunction solve-dilemma ()
   (do-for-all-instances ((?a status))
      TRUE
      (send ?a delete))  
   (make-instance start of status)
   (send [start] generate-moves))

;;;**************
;;;* DEFRULES *
;;;**************

(defrule start-it
  =>
  (solve-dilemma))

;;;***********************
;;;* DEFMESSAGE-HANDLERS *
;;;***********************

(defmessage-handler status move-farmer
   ()
   (if (not (contradiction (opposite-shore ?self:farmer) ?self:fox 
                           ?self:goat ?self:cabbage ?self:search-depth))
      then
      (bind ?x (make-instance (gensym) of status
         (farmer (opposite-shore ?self:farmer))
         (fox ?self:fox)
         (goat ?self:goat)
         (cabbage ?self:cabbage)
         (last-move farmer)
         (parent ?self)
         (search-depth (+ ?self:search-depth 1))))
      (if (not (send ?x solution?))
         then
         (send ?x generate-moves))))

(defmessage-handler status move-goat
   ()
   (if (and (eq ?self:farmer ?self:goat) (not (contradiction 
      (opposite-shore ?self:farmer) ?self:fox (opposite-shore ?self:goat) 
       ?self:cabbage ?self:search-depth)))
      then
      (bind ?x (make-instance (gensym) of status
         (farmer (opposite-shore ?self:farmer))
         (fox ?self:fox)
         (goat (opposite-shore ?self:farmer))
         (cabbage ?self:cabbage)
         (last-move goat)
         (parent ?self)
         (search-depth (+ ?self:search-depth 1))))
      (if (not (send ?x solution?))
         then
         (send ?x generate-moves))))

(defmessage-handler status move-fox
   ()
   (if (and (eq ?self:farmer ?self:fox) 
            (not (contradiction (opposite-shore ?self:farmer) 
                                (opposite-shore ?self:fox) 
                                ?self:goat ?self:cabbage ?self:search-depth)))
      then
      (bind ?x (make-instance (gensym) of status
         (farmer (opposite-shore ?self:farmer))
         (fox (opposite-shore ?self:farmer))
         (goat ?self:goat)
         (cabbage ?self:cabbage)
         (last-move fox)
         (parent ?self)
         (search-depth (+ ?self:search-depth 1))))
      (if (not (send ?x solution?))
         then
         (send ?x generate-moves))))

(defmessage-handler status move-cabbage
   ()
   (if (and (eq ?self:farmer ?self:cabbage) 
            (not (contradiction (opposite-shore ?self:farmer) 
                                ?self:fox ?self:goat 
                                (opposite-shore ?self:cabbage) 
                                ?self:search-depth)))
      then
      (bind ?x (make-instance (gensym) of status
         (farmer (opposite-shore ?self:farmer))
         (fox ?self:fox)
         (goat ?self:goat)
         (cabbage (opposite-shore ?self:farmer))
         (last-move cabbage)
         (parent ?self)
         (search-depth (+ ?self:search-depth 1))))
      (if (not (send ?x solution?))
         then
         (send ?x generate-moves))))

(defmessage-handler status generate-moves
   ()
   (send ?self move-farmer)
   (send ?self move-fox)
   (send ?self move-goat)
   (send ?self move-cabbage))

(defmessage-handler status print-solution
   ()
   (if (neq ?self:parent no-parent)
      then
      (send ?self:parent print-solution)
      (bind ?move-dest (dynamic-get ?self:last-move))
      (if (eq ?self:last-move farmer)
         then
         (printout t "Farmer moves alone to " ?move-dest "." crlf)
         else
         (printout t "Farmer moves with " ?self:last-move " to " ?move-dest "." crlf))))

(defmessage-handler status solution?
   ()
   (if (and (eq ?self:farmer shore-2) (eq ?self:fox shore-2) 
            (eq ?self:goat shore-2) (eq ?self:cabbage shore-2))
      then
      (printout t crlf "Solution found:" crlf crlf)
      (send ?self print-solution)
      TRUE
      else
      FALSE))


?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
中文字幕精品一区二区精品绿巨人| 精品福利一二区| 黄一区二区三区| 亚洲激情中文1区| 国产校园另类小说区| 欧美日韩国产色站一区二区三区| 韩国成人在线视频| 日韩av午夜在线观看| 亚洲精品视频免费观看| 国产欧美一区在线| 欧美一级高清大全免费观看| 色av综合在线| 成人性生交大片免费看中文| 激情av综合网| 男女激情视频一区| 午夜天堂影视香蕉久久| 国产精品国产自产拍在线| 久久久美女艺术照精彩视频福利播放| 欧美少妇xxx| 一本色道久久综合亚洲精品按摩| 国产成人免费在线观看不卡| 日本视频中文字幕一区二区三区| 亚洲一区二区三区小说| 亚洲免费在线看| 亚洲天堂av一区| 国产精品久久久久久户外露出| 久久久久久久av麻豆果冻| 日韩三级免费观看| 欧美一级片免费看| 欧美一区二区二区| 91精品国产福利| 欧美一区二区免费观在线| 9191久久久久久久久久久| 欧美怡红院视频| 91黄视频在线| 欧美在线你懂得| 欧美在线不卡视频| 欧美日韩一本到| 欧美日韩精品欧美日韩精品| 欧美日韩精品二区第二页| 欧美天天综合网| 欧美日韩一区二区三区不卡| 欧美在线你懂得| 欧美精品xxxxbbbb| 欧美一区二区三区婷婷月色| 欧美大肚乱孕交hd孕妇| 精品不卡在线视频| 久久精品一区二区| 国产精品视频一二| 亚洲欧美偷拍三级| 亚洲福利一区二区| 奇米一区二区三区av| 极品尤物av久久免费看| 国产很黄免费观看久久| 99视频一区二区三区| 欧美最新大片在线看| 538在线一区二区精品国产| 日韩午夜在线影院| 国产亚洲自拍一区| 亚洲男人的天堂一区二区| 午夜私人影院久久久久| 久久99久久99小草精品免视看| 国产激情视频一区二区三区欧美| 99视频在线精品| 欧美日韩亚洲综合在线| 日韩午夜激情免费电影| 欧美韩日一区二区三区| 洋洋成人永久网站入口| 免费成人在线观看| 成人午夜免费av| 欧美色综合久久| xvideos.蜜桃一区二区| 中文字幕在线不卡一区二区三区| 一区二区三区视频在线观看| 美美哒免费高清在线观看视频一区二区| 国产综合色精品一区二区三区| 99久久精品国产麻豆演员表| 欧美日韩国产综合视频在线观看 | 国产精品18久久久| 91麻豆国产在线观看| 欧美视频三区在线播放| 久久亚洲影视婷婷| 亚洲激情校园春色| 国内精品免费**视频| 色综合咪咪久久| 日韩精品综合一本久道在线视频| 国产精品久久777777| 男女男精品视频网| 97成人超碰视| 精品国产乱码久久久久久免费| 亚洲激情图片小说视频| 九一九一国产精品| 色哟哟在线观看一区二区三区| 日韩一级片在线播放| 亚洲乱码中文字幕| 国产精品一二一区| 欧美一二三区在线观看| 一区二区三区高清在线| 国产成人午夜精品影院观看视频| 欧美久久婷婷综合色| 国产精品国产自产拍高清av王其| 蜜臀久久99精品久久久画质超高清 | 中文字幕亚洲一区二区av在线| 天天av天天翘天天综合网色鬼国产| 成人久久久精品乱码一区二区三区| 欧美一区二区免费观在线| 亚洲资源中文字幕| 成人av资源在线观看| 日韩精品一区二区三区四区视频| 亚洲综合在线视频| av午夜一区麻豆| 久久夜色精品国产欧美乱极品| 日日骚欧美日韩| 在线视频一区二区免费| 国产精品成人在线观看| 国产1区2区3区精品美女| 精品999久久久| 麻豆91精品91久久久的内涵| 欧美色区777第一页| 亚洲欧美日韩国产综合| 成人亚洲一区二区一| 国产日韩精品久久久| 久久99久久精品欧美| 欧美一区午夜视频在线观看| 天天影视网天天综合色在线播放| 91久久一区二区| 亚洲免费在线电影| 色婷婷av一区| 一二三区精品视频| 欧美午夜电影网| 亚洲成人福利片| 欧美日韩黄色一区二区| 亚洲123区在线观看| 欧美日韩久久久| 日韩在线卡一卡二| 日韩一级精品视频在线观看| 蜜臀av亚洲一区中文字幕| 91精品欧美久久久久久动漫 | 欧美一区二区三区精品| 亚洲一区av在线| 欧美日韩mp4| 亚洲成av人**亚洲成av**| 欧美在线一二三| 日韩av一区二区三区四区| 日韩视频一区二区在线观看| 久久99精品久久久| 久久久www免费人成精品| 岛国精品在线观看| 国产精品免费看片| 91丨九色丨蝌蚪富婆spa| 亚洲一区二区av在线| 在线播放中文字幕一区| 老汉av免费一区二区三区| 久久亚洲影视婷婷| 成人免费观看视频| 亚洲激情图片一区| 欧美一区二区在线免费播放 | 欧美丝袜第三区| 亚洲gay无套男同| 3d动漫精品啪啪| 国产一级精品在线| 国产精品天美传媒| 在线观看免费一区| 精品亚洲porn| 自拍偷拍国产精品| 欧美精品一二三| 激情成人午夜视频| 亚洲免费在线观看| 欧美成人精品3d动漫h| 波多野结衣亚洲| 日欧美一区二区| 久久精品在这里| 欧美视频中文一区二区三区在线观看| 视频一区欧美日韩| 久久久www免费人成精品| 欧洲另类一二三四区| 国产在线视视频有精品| 亚洲精品免费一二三区| 亚洲精品在线电影| 在线亚洲欧美专区二区| 国产在线乱码一区二区三区| 最新国产精品久久精品| 日韩午夜在线播放| 91麻豆精东视频| 精东粉嫩av免费一区二区三区| 亚洲婷婷综合久久一本伊一区| 欧美一级艳片视频免费观看| 91免费看视频| 国产一区欧美一区| 午夜精品一区二区三区电影天堂| 久久蜜桃av一区二区天堂 | 美女网站视频久久| 中文字幕在线播放不卡一区| 日韩丝袜美女视频| 91久久线看在观草草青青| 国产又黄又大久久| 午夜av电影一区| 亚洲欧美色综合| 国产欧美精品日韩区二区麻豆天美| 欧美日韩国产三级|