|
12 | 12 | ; HOWTO: |
13 | 13 | ; ------ |
14 | 14 | ; Run the main loop: |
15 | | -; (behavior-tree-run) |
| 15 | +; (run) |
16 | 16 | ; Pause the main loop: |
17 | | -; (behavior-tree-halt) |
| 17 | +; (halt) |
18 | 18 | ; |
19 | 19 | ; TODO: |
20 | 20 | ; ----- |
21 | | -; XXX This needs a major redesign, to NOT use behavior trees at the top |
22 | | -; level, but instead to provide a library of suitable actions that can |
23 | | -; be searched over, and then performed when a given situation applies. |
24 | | -; That is, given a certain state vector (typically, a subset of the |
25 | | -; current state), the library is searched to see if there is a behavior |
26 | | -; sequence that can be applied to this situation. If there is no such |
27 | | -; explicit match, then the fuzzy matcher should be employed to find |
28 | | -; something that is at least close. If nothing close is found, then |
29 | | -; either the concept blending code, or a hack of the MOSES knob-turning |
30 | | -; and genetic cross-over code should be used to create new quasi-random |
| 21 | +; The current OpenPsi framework allows much more general and flexible |
| 22 | +; rules than what are presented below; this geneality should be made |
| 23 | +; use of. |
| 24 | +; |
| 25 | +; A general OpenPsi rule has the form of if(context) then take(action); |
| 26 | +; these can contain variables, adn can also be classed into different |
| 27 | +; groups based on the demands that they are fulfilling. |
| 28 | +; |
| 29 | +; The content below consits entirely of actions to nbe taken; the |
| 30 | +; contexts are in the `primitives.scm` file. |
| 31 | +; |
| 32 | +; The OpenPsi engine could be (should be?) updated to perform fuzzy |
| 33 | +; matching on the contexts, to find close or similar contexts, if no |
| 34 | +; one exact match can be made. If nothing close is found, then either |
| 35 | +; the concept blending code, or a hack of the MOSES knob-turning and |
| 36 | +; genetic cross-over code should be used to create new quasi-random |
31 | 37 | ; performance sequences from a bag of likely matches. |
32 | 38 | ; |
33 | 39 | ; Unit testing: |
|
719 | 725 | )) |
720 | 726 | (TrueLink) |
721 | 727 | )) |
| 728 | + |
722 | 729 | (DefineLink |
723 | 730 | (DefinedPredicate "Keep alive") |
724 | 731 | (SequentialAnd |
|
0 commit comments