(in-package "RDX")
;; DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN"
( create-goal "Design the Pick-Up Head (PUH)")
( make-root-goal "Product-Manager" "Design the Pick-Up Head (PUH)")
;; Neeraj - the very first time you see a anywhere
;; then do a create-goal and a make-root-goal.
;; But do this only for the very first goal.
;; After this, don't use create-goal or make-root-goal again.
( create-make-decision
"Design the Pick-Up Head (PUH)" ;;Goal
"Product-Manager" ;;Agent
nil ;;Assignments
( list ;;Sub goals
"design mirror optics"
"design the integrated optics"
"design the actuator"
"design a base"
)
nil ;;Contingencies
nil ;;Reasons
nil ;;Inputs
) ;;Decision Name - omitted
( create-make-decision
"design mirror optics" ;;Goal
"Mirror-Designer" ;;Agent
nil ;;Assignments
( list ;;Sub goals
"choose parts lists"
"choose mirror layout"
"choose objective lens."
)
nil ;;Contingencies
nil ;;Reasons
nil ;;Inputs
) ;;Decision Name - omitted
( create-make-decision
"choose mirror layout" ;;Goal
"Mirror-Designer" ;;Agent
( list ;;Assignments
( list "" "" "1 mirror with a cost of $1.00 and a weight of 1.0g.")
)
nil ;;Sub goals
nil ;;Contingencies
nil ;;Reasons
nil ;;Inputs
) ;;Decision Name - omitted
( create-make-decision
"choose objective lens." ;;Goal
"Mirror-Designer" ;;Agent
( list ;;Assignments
( list "" "" "objective lens has a weight of 1.0g and a cost of $10.00.")
)
nil ;;Sub goals
nil ;;Contingencies
nil ;;Reasons
nil ;;Inputs
) ;;Decision Name - omitted
( create-make-decision
"choose parts lists" ;;Goal
"Mirror-Designer" ;;Agent
( list ;;Assignments
( list "" "" "parts list that is compatable with an IOU.")
)
nil ;;Sub goals
nil ;;Contingencies
nil ;;Reasons
nil ;;Inputs
) ;;Decision Name - omitted
;; Need FACT icon - will also need ERASE-FACT icon.
(tell-fact "Inventory" "IOU-2 is unavailable" )
;; Need CONTINGENCY icon
( create-make-decision
"design the integrated optics" ;;Goal
"IOD" ;;Agent
( list ;;Assignments
( list "" "" "IOU-2. This has a cost of $5.00 and a weight of 2.0g.")
)
nil ;;Sub goals
( list ;;Contingencies
"IOU-2 is unavailable"
)
nil ;;Reasons
nil ;;Inputs
) ;;Decision Name - omitted
( create-make-decision
"design the integrated optics" ;;Goal
"IOD" ;;Agent
( list ;;Assignments
( list "" "" "IOU-1. This has a cost of $15.00 and a weight of 1.0g.")
)
nil ;;Sub goals
( list ;;Contingencies
"IOU-1 is unavailable"
)
( list ;;Reasons
"IOU-2 wasn't available."
)
nil ;;Inputs
) ;;Decision Name - omitted
( create-make-decision
"design the actuator" ;;Goal
"Actuator-Designer" ;;Agent
( list ;;Assignments
( list "" "" "a bobbin with a cost of $4.00 and a weight of 4.0g.")
)
nil ;;Sub goals
nil ;;Contingencies
nil ;;Reasons
nil ;;Inputs
) ;;Decision Name - omitted
( create-make-decision
"design a base" ;;Goal
"Base-Designer" ;;Agent
( list ;;Assignments
( list "" "" "PUH base: cost of $4.00 and a weight of 10g.")
)
nil ;;Sub goals
nil ;;Contingencies
nil ;;Reasons
( list ;;Inputs
"IOU-1. This has a cost of $15.00 and a weight of 1.0g."
)
) ;;Decision Name - omitted
;; Neeraj - more new stuff. READ CAREFULLY!!
;; This needs to be typed very carefully.
;; After the tag, there is a list of strings.
;; Each string must correspond exactly to an assignment above.
;; No carriage returns.
;; The final string after the list is just an arbitrary name.
(create-constraint "Product-Manager" ;;agent
( list ;;List of string assignments
"objective lens has a weight of 1.0g and a cost of $10.00."
"IOU-1. This has a cost of $15.00 and a weight of 1.0g."
"PUH base: cost of $4.00 and a weight of 10g."
"parts list that is compatable with an IOU."
"a bobbin with a cost of $4.00 and a weight of 4.0g."
"1 mirror with a cost of $1.00 and a weight of 1.0g."
)"Total Cost" ;;Constraint Name
)
;;INSERTED
(resolve-constraint-violation
"IOD"
`constraint-violation-1 `A-5)
( create-make-decision
"design the integrated optics" ;;Goal
"IOD" ;;Agent
( list ;;Assignments
( list "" "" "DOU cost will be $5.00 and the weight 5.0g.")
)
( list ;;Sub goals
"develop a frame for discrete optics"
)
nil ;;Contingencies
nil ;;Reasons
nil ;;Inputs
) ;;Decision Name - omitted
(create-constraint "Product-Manager" ;;agent
( list ;;List of string assignments
"DOU cost will be $5.00 and the weight 5.0g."
"parts list that is compatable with an IOU.")
"DOU Parts" ;;Constraint Name
)
;;INSERTED
(resolve-constraint-violation
"IOD"
`constraint-violation-2 `A-3)
;;INSERTED
(resolve-constraint-violation
"Mirror-Designer"
`constraint-violation-2 `A-3)
( create-make-decision
"choose parts lists" ;;Goal
"Mirror-Designer" ;;Agent
( list ;;Assignments
( list "" "" "parts list compatible with the DOU.")
)
nil ;;Sub goals
nil ;;Contingencies
nil ;;Reasons
nil ;;Inputs
) ;;Decision Name - omitted
(create-constraint "Mirror-Designer" ;;agent
( list ;;List of string assignments
"parts list compatible with the DOU."
"1 mirror with a cost of $1.00 and a weight of 1.0g.")
"Parts Layout" ;;Constraint Name
)
;;INSERTED
(resolve-constraint-violation
"Mirror-Designer"
`constraint-violation-3 'A-1)
( create-make-decision
"choose mirror layout" ;;Goal
"Mirror-Designer" ;;Agent
( list ;;Assignments
( list "" "" "fifth layout: same cost and weight.")
)
nil ;;Sub goals
nil ;;Contingencies
nil ;;Reasons
nil ;;Inputs
) ;;Decision Name - omitted
( create-make-decision
"design a base" ;;Goal
"Base-Designer" ;;Agent
( list ;;Assignments
( list "" "" "Base-2: cost of $6.00 and a weight of 15g.")
)
nil ;;Sub goals
nil ;;Contingencies
nil ;;Reasons
nil ;;Inputs
) ;;Decision Name - omitted
( create-make-decision
"develop a frame for discrete optics" ;;Goal
"Base-Designer" ;;Agent
( list ;;Assignments
( list "" "" "D-frame: cost of $1.00 and a weight of .5g")
)
nil ;;Sub goals
nil ;;Contingencies
nil ;;Reasons
nil ;;Inputs
) ;;Decision Name - omitted
(create-constraint "Product-Manager" ;;agent
( list ;;List of string assignments
"Base-2: cost of $6.00 and a weight of 15g."
"fifth layout: same cost and weight."
"parts list compatible with the DOU."
"DOU cost will be $5.00 and the weight 5.0g."
"a bobbin with a cost of $4.00 and a weight of 4.0g."
"objective lens has a weight of 1.0g and a cost of $10.00.")
"Light Weight" ;;Constraint Name
)
;;INSERTED
(resolve-constraint-violation
"Base-Designer"
`constraint-violation-4 'A-11)
;;INSERTED
(make-decision 'd-9)
(erase-fact "Inventory" "IOU-2 is unavailable")
;;INSERTED
(reject-old-for-new "IOD" 'd-10 'd-6)
;;INSERTED
(reject-old-for-new "mirror-designer" 'd-11 'd-5)
;;INSERTED
(reject-old-for-new "mirror-designer" 'd-12 'd-3)
( create-make-decision
"design a base" ;;Goal
"Base-Designer" ;;Agent
( list ;;Assignments
( list "" "" "IOU-2 base: cost of $3.00 and a weight of 8g.")
)
nil ;;Sub goals
nil ;;Contingencies
nil ;;Reasons
(list ;;Inputs
"IOU-2. This has a cost of $5.00 and a weight of 2.0g.")
) ;;Decision Name - omitted
;;INSERTED
(reject-decision "base-designer"'d-14 )