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

📄 chemfirm.clp

📁 NASA 开发使用的一个专家系统
💻 CLP
📖 第 1 页 / 共 4 页
字号:
   (link1 (multi ?multi1) (time ?time1))
   (link2 (multi ?multi2) (time ?time2))
   (link3 (multi ?multi3) (time ?time3))
   (link5 (multi ?multi5) (time ?time5))
   (link6 (multi ?multi6) (time ?time6))
   (link7 (multi ?multi7) (time ?time7))
   (link8 (multi ?multi8) (time ?time8))
   (link9 (multi ?multi9) (time ?time9))
   (link10 (multi ?multi10) (time ?time10))
   (link11 (multi ?multi11) (time ?time11)) 
   (link12 (multi ?multi12) (time ?time12))
   (link13 (multi ?multi13) (time ?time13))
   (link14 (multi ?multi14) (time ?time14))
   (link15 (multi ?multi15) (time ?time15))
   (link16 (multi ?multi16) (time ?time16))
   (link17 (multi ?multi17) (time ?time17))
   (link18 (multi ?multi18) (time ?time18))
   (link19 (multi ?multi19) (time ?time19))
   (link20 (multi ?multi20) (time ?time20))
   (link21 (multi ?multi21) (time ?time21))
   (link22 (multi ?multi22) (time ?time22))
   (link23 (multi ?multi23) (time ?time23))
   (link24 (multi ?multi24) (time ?time24))
   (link25 (multi ?multi25) (time ?time25))
   (link26 (multi ?multi26) (time ?time26))
   (link27 (multi ?multi27) (time ?time27))
   (link28 (multi ?multi28) (time ?time28))
   (link29 (multi ?multi29) (time ?time29))
   (link30 (multi ?multi30) (time ?time30))
   (link31 (multi ?multi31) (time ?time31))
   (link32 (multi ?multi32) (time ?time32))
?link33 <- (link33 (multi ?multi33) (time ?time33))
?link34 <- (link34 (multi ?multi34) (time ?time34))
?link35 <- (link35 (multi ?multi35) (time ?time35))
?link36 <- (link36 (multi ?multi36) (time ?time36))
?link37 <- (link37 (multi ?multi37) (time ?time37))
?link38 <- (link38 (multi ?multi38) (time ?time38))
?link39 <- (link39 (multi ?multi39) (time ?time39))
   (link40 (multi ?multi40) (time ?time40))
   (link41 (multi ?multi41) (time ?time41))
   (link42 (multi ?multi42) (time ?time42))
   (link43 (multi ?multi43) (time ?time43))
   (link44 (multi ?multi44) (time ?time44))
   (link45 (multi ?multi45) (time ?time45))
   (link46 (multi ?multi46) (time ?time46))
   (link47 (multi ?multi47) (time ?time47))
   (link48 (multi ?multi48) (time ?time48))
   (link49 (multi ?multi49) (time ?time49))
   (link50 (multi ?multi50) (time ?time50))
   (link51 (multi ?multi51) (time ?time51))
   (link52 (multi ?multi52) (time ?time52))
   (link53 (multi ?multi53) (time ?time53))
   (link54 (multi ?multi54) (time ?time54))
   (link55 (multi ?multi55) (time ?time55))
?cashflow <- (cashflow (value ?value))
=> (retract ?start ?link4 ?link33 ?link34 ?link35 ?link36 ?link37 
            ?link38 ?link39 ?cashflow)
(printout t "What is the multiplier effect of chlorine-new-capacity"crlf)
(printout t "to chlorine-industry-capacity?  Enter 1.0 for default." crlf)
(bind ?multi4 (read))
(assert (link4 (multi ?multi4) (time 0)))
(bind ?link33m (+ (* ?multi4 ?multi5) (* ?multi4 ?multi6 ?multi8)))
(bind ?link33t (+ ?time4 ?time5 ?time6))
(printout t "The multiplier effect of chlorine-new-capacity "crlf)
(printout t "to chemfirm-operating profit is " ?link33m crlf)
(printout t " with time lag of " 
                  ?link33t " months." crlf)
(bind ?final (* ?value ?link33m))
(assert (cashflow (value ?final )))
(printout t "The cumulative multiplier effect of all input changes to" crlf)
(printout t "chemfirm-operating profit is " ?final crlf) 
(assert (link33 (multi ?link33m) (time ?link33t))) 
(printout t "The path of the multiplier effect of " crlf)
(printout t "chlor-new-chemfirm-capacity with time lag is as follows:"crlf)
(bind ?link34m (+ ?multi4 0))
(bind ?link34t (+ ?time4 0))
(printout t "The multiplier effect of the path of chlorine-new-capacity" crlf)
(printout t "to chlorine-industry-capacity is " ?link34m  crlf)
(printout t "with time lag of " ?link34t " months." crlf)
(assert (link34 (multi ?link34m) (time ?link34t))) 
(bind ?link35m (+ ?multi4 ?multi5))
(bind ?link35t (+ ?time4 ?time5))
(printout t "The multiplier effect of the path of chlorine-new-capacity"crlf)
(printout t "to chlorine-price with " ?link35t " months" crlf) 
(printout t "time lag is " ?link35m crlf)
(assert (link35 (multi ?link35m) (time ?link35t)))
(bind ?link36m (* ?multi4 ?multi6))
(bind ?link36t (+ ?time4 ?time6))
(printout t "The multiplier effect of the path of chlorine-new-capacity"crlf)
(printout t "to caustic-soda-industry-capacity is " ?link36m crlf)
(printout t "with time lag of " ?link36t " months." crlf)
(assert (link36 (multi ?link36m) (time ?link36t)))
(bind ?link37m (* ?multi4 ?multi6 ?multi8))
(bind ?link37t (+ ?time4 ?time6 ?time8))
(printout t "The multiplier effect of the path of chlorine-new-capacity"crlf)
(printout t "to caustic-soda-price is " ?link37m crlf)
(printout t "with time lag of " ?link37t " months." crlf)
(assert (link37 (multi ?link37m) (time ?link37t)))
(bind ?link38m (* ?multi4 ?multi5))
(bind ?link38t (+ ?time4 ?time5))
(printout t "The multiplier effect of the path of chlorine-new-capacity"crlf)
(printout t "to chemfirm-chlorine-profit is " ?link38m crlf)
(printout t "with time lag of " ?link38t " months." crlf)
(assert (link38 (multi ?link38m) (time ?link38t)))
(bind ?link39m (* ?multi4 ?multi6 ?multi8))
(bind ?link39t (+ ?time4 ?time6 ?time8))
(printout t "The multiplier effect of the path of chlorine-new-capacity"crlf)
(printout t "to chemfirm-caustic-soda-profit is " ?link39m crlf)
(printout t "with time lag of " ?link39t " months." crlf)
(assert (link39 (multi ?link39m) (time ?link39t)))
(assert (continue yes-or-no)))

(defrule start-na-new-capacity
?start <- (start na-new-capacity)
?link7 <- (link7 (multi ?multi7) (time ?time7))
   (link1 (multi ?multi1) (time ?time1))
   (link2 (multi ?multi2) (time ?time2))
   (link3 (multi ?multi3) (time ?time3))
   (link4 (multi ?multi4) (time ?time4))
   (link5 (multi ?multi5) (time ?time5))
   (link6 (multi ?multi6) (time ?time6))
   (link8 (multi ?multi8) (time ?time8))
   (link9 (multi ?multi9) (time ?time9))
   (link10 (multi ?multi10) (time ?time10))
   (link11 (multi ?multi11) (time ?time11)) 
   (link12 (multi ?multi12) (time ?time12))
   (link13 (multi ?multi13) (time ?time13))
   (link14 (multi ?multi14) (time ?time14))
   (link15 (multi ?multi15) (time ?time15))
   (link16 (multi ?multi16) (time ?time16))
   (link17 (multi ?multi17) (time ?time17))
   (link18 (multi ?multi18) (time ?time18))
   (link19 (multi ?multi19) (time ?time19))
   (link20 (multi ?multi20) (time ?time20))
   (link21 (multi ?multi21) (time ?time21))
   (link22 (multi ?multi22) (time ?time22))
   (link23 (multi ?multi23) (time ?time23))
   (link24 (multi ?multi24) (time ?time24))
   (link25 (multi ?multi25) (time ?time25))
   (link26 (multi ?multi26) (time ?time26))
   (link27 (multi ?multi27) (time ?time27))
   (link28 (multi ?multi28) (time ?time28))
   (link29 (multi ?multi29) (time ?time29))
   (link30 (multi ?multi30) (time ?time30))
   (link31 (multi ?multi31) (time ?time31))
   (link32 (multi ?multi32) (time ?time32))
   (link33 (multi ?multi33) (time ?time33))
   (link34 (multi ?multi34) (time ?time34))
   (link35 (multi ?multi35) (time ?time35))
   (link36 (multi ?multi36) (time ?time36))
   (link37 (multi ?multi37) (time ?time37))
   (link38 (multi ?multi38) (time ?time38))
   (link39 (multi ?multi39) (time ?time39))
?link40 <- (link40 (multi ?multi40) (time ?time40))
?link41 <- (link41 (multi ?multi41) (time ?time41))
?link42 <- (link42 (multi ?multi42) (time ?time42))
?link43 <- (link43 (multi ?multi43) (time ?time43))
   (link44 (multi ?multi44) (time ?time44))
   (link45 (multi ?multi45) (time ?time45))
   (link46 (multi ?multi46) (time ?time46))
   (link47 (multi ?multi47) (time ?time47))
   (link48 (multi ?multi48) (time ?time48))
   (link49 (multi ?multi49) (time ?time49))
   (link50 (multi ?multi50) (time ?time50))
   (link51 (multi ?multi51) (time ?time51))
   (link52 (multi ?multi52) (time ?time52))
   (link53 (multi ?multi53) (time ?time53))
   (link54 (multi ?multi54) (time ?time54))
   (link55 (multi ?multi55) (time ?time55))
?cashflow <- (cashflow (value ?value))
?priceoil <- (oilprice ?oilprice)
=> (retract ?start ?link7 ?link40 ?link41 ?link42 ?link43 ?cashflow ?priceoil)
(printout t "What is the multiplier effect of caustic-soda-new-capacity"crlf)
(printout t "to caustic-soda-industry-capacity?  Enter 1.0 for default." crlf)
(if (> ?oilprice 30)
then 
(printout t "Enter 1.0 for the second stage effect of crude oil price above $30"crlf))
(bind ?multi7 (read))
(assert (link7 (multi ?multi7) (time 0)))
(bind ?link40m (* ?multi7 ?multi8))
(bind ?link40t (+ ?time7 ?time8))
(printout t "The multiplier effect of caustic-soda-new-capacity "crlf)
(printout t "to chemfirm-operating profit is "  ?link40m crlf)
(printout t " with time lag of " 
                  ?link40t " months." crlf)
(bind ?final (* ?value ?link40m))
(assert (cashflow (value ?final )))
(printout t "The cumulative multiplier effect of all input changes to" crlf)
(printout t "chemfirm-operating profit is " ?final crlf) 
(assert (link40 (multi ?link40m) (time ?link40t)))
(printout t "The path of the multiplier effect of caustic-soda-new-capacity"crlf)
(printout t "with time lag is as follows:"crlf)
(bind ?link41m (+ ?multi7 0))
(bind ?link41t (+ ?time7 0))
(printout t "The multiplier effect of caustic-soda-new-capacity to"crlf)
(printout t "caustic-soda-industry-capacity is " ?link41m crlf)
(printout t "with time lag of " ?link41t " months." crlf)
(assert (link41 (multi ?link41m) (time ?link41t)))
(bind ?link42m (* ?multi7 ?multi8))
(bind ?link42t (+ ?time7 ?time8))
(printout t "The multiplier effect of the path of caustic-soda-new-capacity"crlf)
(printout t "to caustic-soda-price is " ?link42m crlf)
(printout t "with time lag of " ?link42t " months." crlf)
(assert (link42 (multi ?link42m) (time ?link42t)))
(bind ?link43m (* ?multi7 ?multi8))
(bind ?link43t (+ ?time7 ?time8))
(printout t "The multiplier effect of the path of caustic-soda-new-capacity"crlf)
(printout t "to chemfirm-caustic-soda-profit is " ?link43m crlf)
(printout t "with time lag of " ?link43t " months." crlf)
(assert (link43 (multi ?link43m) (time ?link43t)))
(assert (continue yes-or-no)))

(defrule start-chlor-industry-demand
?start <- (start chlor-industry-demand)
?link2 <- (link2 (multi ?multi2) (time ?time2))
?link3 <- (link3 (multi ?multi3) (time ?time3))
   (link1 (multi ?multi1) (time ?time1))
   (link4 (multi ?multi4) (time ?time4))
   (link5 (multi ?multi5) (time ?time5))
   (link6 (multi ?multi6) (time ?time6))
   (link7 (multi ?multi7) (time ?time7))
   (link8 (multi ?multi8) (time ?time8))
   (link9 (multi ?multi9) (time ?time9))
   (link10 (multi ?multi10) (time ?time10))
   (link11 (multi ?multi11) (time ?time11)) 
   (link12 (multi ?multi12) (time ?time12))
   (link13 (multi ?multi13) (time ?time13))
   (link14 (multi ?multi14) (time ?time14))
   (link15 (multi ?multi15) (time ?time15))
   (link16 (multi ?multi16) (time ?time16))
   (link17 (multi ?multi17) (time ?time17))
   (link18 (multi ?multi18) (time ?time18))
   (link19 (multi ?multi19) (time ?time19))
   (link20 (multi ?multi20) (time ?time20))
   (link21 (multi ?multi21) (time ?time21))
   (link22 (multi ?multi22) (time ?time22))
   (link23 (multi ?multi23) (time ?time23))
   (link24 (multi ?multi24) (time ?time24))
   (link25 (multi ?multi25) (time ?time25))
   (link26 (multi ?multi26) (time ?time26))
   (link27 (multi ?multi27) (time ?time27))
   (link28 (multi ?multi28) (time ?time28))
   (link29 (multi ?multi29) (time ?time29))
   (link30 (multi ?multi30) (time ?time30))
   (link31 (multi ?multi31) (time ?time31))
   (link32 (multi ?multi32) (time ?time32))
   (link33 (multi ?multi33) (time ?time33))
   (link34 (multi ?multi34) (time ?time34))
   (link35 (multi ?multi35) (time ?time35))
   (link36 (multi ?multi36) (time ?time36))
   (link37 (multi ?multi37) (time ?time37))
   (link38 (multi ?multi38) (time ?time38))
   (link39 (multi ?multi39) (time ?time39))
   (link40 (multi ?multi40) (time ?time40))
   (link41 (multi ?multi41) (time ?time41))
   (link42 (multi ?multi42) (time ?time42))
   (link43 (multi ?multi43) (time ?time43))
?link44 <- (link44 (multi ?multi44) (time ?time44))
?link45 <- (link45 (multi ?multi45) (time ?time45))
?link46 <- (link46 (multi ?multi46) (time ?time46))
?link47 <- (link47 (multi ?multi47) (time ?time47))
   (link48 (multi ?multi48) (time ?time48))
   (link49 (multi ?multi49) (time ?time49))
   (link50 (multi ?multi50) (time ?time50))
   (link51 (multi ?multi51) (time ?time51))
   (link52 (multi ?multi52) (time ?time52))
   (link53 (multi ?multi53) (time ?time53))
   (link54 (multi ?multi54) (time ?time54))
   (link55 (multi ?multi55) (time ?time55))
?cashflow <- (cashflow (value ?value))
=> (retract ?start ?link2 ?link3 ?link44 ?link45 ?link46 ?link47)
(printout t "What is the multiplier effect of chlorine-industry-demand"crlf)
(printout t "to chlorine-chemfirm-demand?  Enter 0.13 for default." crlf)

⌨️ 快捷键说明

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