Commit 67fd2e7
committed
Simplify and speed up relevance analysis and relaxation heuristics
Grounding relevance analysis:
- Test whether an operator has a relevant effect with set.isdisjoint
instead of building the throwaway union (add | del) and its
intersection with the relevant facts on every operator and round.
- Detect the fixpoint by comparing the size of the relevant-fact set
before and after each pass (the set only grows) instead of copying the
whole set each round to compare it.
Relaxation heuristics (evaluated once per generated node):
- Use the node's state set directly instead of copying it; it is only
read, never mutated.
- Pass generators to the sum/max evaluator instead of materializing
intermediate lists of precondition/goal distances.
All changes preserve behavior (identical grounded operators and plans;
full test suite still passes).1 parent ce3de70 commit 67fd2e7
2 files changed
Lines changed: 16 additions & 11 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
112 | 112 | | |
113 | 113 | | |
114 | 114 | | |
115 | | - | |
116 | | - | |
117 | | - | |
| 115 | + | |
| 116 | + | |
| 117 | + | |
| 118 | + | |
| 119 | + | |
118 | 120 | | |
119 | | - | |
| 121 | + | |
| 122 | + | |
| 123 | + | |
| 124 | + | |
| 125 | + | |
120 | 126 | | |
121 | | - | |
| 127 | + | |
| 128 | + | |
122 | 129 | | |
123 | 130 | | |
124 | 131 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
111 | 111 | | |
112 | 112 | | |
113 | 113 | | |
114 | | - | |
| 114 | + | |
115 | 115 | | |
116 | 116 | | |
117 | 117 | | |
| |||
169 | 169 | | |
170 | 170 | | |
171 | 171 | | |
172 | | - | |
173 | | - | |
174 | | - | |
| 172 | + | |
175 | 173 | | |
176 | 174 | | |
177 | 175 | | |
| |||
187 | 185 | | |
188 | 186 | | |
189 | 187 | | |
190 | | - | |
| 188 | + | |
191 | 189 | | |
192 | 190 | | |
193 | 191 | | |
| |||
328 | 326 | | |
329 | 327 | | |
330 | 328 | | |
331 | | - | |
| 329 | + | |
332 | 330 | | |
333 | 331 | | |
334 | 332 | | |
| |||
0 commit comments