Advertisement
Guest User

Untitled

a guest
May 20th, 2018
125
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.23 KB | None | 0 0
  1. (define
  2.  
  3. (domain mealPlanningPantry)
  4.  
  5. (:requirements
  6. :negative-preconditions :conditional-effects :equality :typing
  7. :fluents :durative-actions :derived-predicates
  8. :disjunctive-preconditions :timed-initial-literals
  9.  
  10. ;; :negative-preconditions :conditional-effects :equality :typing
  11. ;; :fluents :durative-actions :disjunctive-preconditions
  12. )
  13.  
  14. (:types
  15. agent instance product supplier type storageLocation unit - object
  16. )
  17.  
  18. (:predicates
  19. (instanceFn ?product - product ?instance - instance)
  20. (consumed ?instance - instance)
  21. (notConsumed ?instance - instance)
  22. (consumedByAgent ?instance - instance ?agent - agent)
  23. (isReplete ?agent - agent)
  24. (storageLocation ?instance - instance ?storageLocation - storageLocation)
  25. (owns_is ?instance - instance ?supplier - supplier)
  26. (owns_ia ?instance - instance ?agent - agent)
  27. ;; (atLocation_asu ?agent - agent - ?supplier - supplier)
  28. ;; (atLocation_ast ?agent - agent - ?storageLocation - storageLocation)
  29. )
  30.  
  31. (:functions
  32. (nfact ?type - type ?unit - unit ?product - product)
  33. (intake ?type - type ?unit - unit ?agent - agent)
  34. (costs ?product - product ?supplier - supplier)
  35. (funds ?agent - agent)
  36. (actions)
  37. )
  38.  
  39. ;; DURATIVE ACTIONS
  40. (:durative-action purchase
  41. :parameters (?agent - agent ?product - product ?instance - instance ?supplier - supplier)
  42. :duration (= ?duration 0.1)
  43. :condition (and
  44. (at start (owns_is ?instance ?supplier))
  45. (at start (not (owns_ia ?instance ?agent)))
  46. (at start (instanceFn ?product ?instance))
  47. )
  48. :effect (and
  49. (at end (not (owns_is ?instance ?supplier)))
  50. (at end (owns_ia ?instance ?agent))
  51.  
  52. (at end (decrease (funds ?agent) (costs ?product ?supplier)))
  53. )
  54. )
  55.  
  56. (:durative-action consume
  57. :parameters (?agent - agent ?product - product ?instance - instance ?supplier - supplier)
  58. :duration (= ?duration 0.1)
  59. :condition (and
  60. ;; (at start (not (isReplete ?agent)))
  61. (at start (owns_ia ?instance ?agent))
  62. (at start (notConsumed ?instance))
  63. (at start (instanceFn ?product ?instance))
  64. )
  65. :effect (and
  66. (at end (consumed ?instance))
  67. (at end (not (notConsumed ?instance)))
  68. (at end (consumedByAgent ?instance ?agent))
  69.  
  70. (at end (increase (intake total_fat grams ?agent) (nfact total_fat grams ?product)))
  71.  
  72. (at end (increase (intake saturated_fat grams ?agent) (nfact saturated_fat grams ?product)))
  73.  
  74. (at end (increase (intake cholesterol milligrams ?agent) (nfact cholesterol milligrams ?product)))
  75.  
  76. (at end (increase (intake sodium milligrams ?agent) (nfact sodium milligrams ?product)))
  77.  
  78. (at end (increase (intake total_carbohydrate grams ?agent) (nfact total_carbohydrate grams ?product)))
  79.  
  80. (at end (increase (intake dietary_fiber grams ?agent) (nfact dietary_fiber grams ?product)))
  81.  
  82. (at end (increase (intake calories calories_u ?agent) (nfact calories calories_u ?product)))
  83.  
  84. (at end (assign (actions) (+ (actions) 1)))
  85. )
  86. )
  87.  
  88. (:durative-action replete
  89. :parameters (?agent - agent)
  90. :duration (= ?duration 0.1)
  91. :condition (and
  92. ;; daily values mode
  93.  
  94. ;; <= fat 65g
  95. (at end (<= (intake total_fat grams ?agent) 65.0))
  96.  
  97. ;; <= saturated fat 20g
  98. (at end (<= (intake saturated_fat grams ?agent) 20.0))
  99.  
  100. ;; <= cholesterol 300mg
  101. (at end (<= (intake cholesterol milligrams ?agent) 300.0))
  102.  
  103. ;; <= sodium 2400mg
  104. (at end (<= (intake sodium milligrams ?agent) 2400.0))
  105.  
  106. ;; <= carboydrate 300g
  107. (at end (<= (intake total_carbohydrate grams ?agent) 300.0))
  108.  
  109. ;; >= dietary fiber 25g
  110. (at end (>= (intake dietary_fiber grams ?agent) 25.0))
  111.  
  112. (at start (>= (intake calories calories_u ?agent) 1850.0))
  113. (at end (<= (intake calories calories_u ?agent) 2150.0))
  114.  
  115.  
  116. ;; survival mode
  117.  
  118. ;; savings mode
  119.  
  120.  
  121. ;; ;; health mode
  122.  
  123. ;; (at start (>= (intake calories calories_u ?agent) 1500.0))
  124. ;; (at end (<= (intake calories calories_u ?agent) 1900.0))
  125.  
  126. ;; (at end (<= (intake sodium milligrams ?agent) 2400.0))
  127.  
  128. ;; (at end (>= (funds ?agent) 0.0))
  129. )
  130. :effect (and
  131. (at end (isReplete ?agent))
  132. )
  133. )
  134. )
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement