| 180 | |
| 181 | @add_perf_timing_func() |
| 182 | def _load_start_preds(self, episode): |
| 183 | if self._start_template is None: |
| 184 | # Load form the episode data. |
| 185 | for pred in episode.start_preds: |
| 186 | pred = self.pddl.parse_predicate(pred, self.pddl.all_entities) |
| 187 | pred.set_state(self.pddl.sim_info) |
| 188 | else: |
| 189 | # Load from the config. |
| 190 | start_preds = self._start_template[:] |
| 191 | for pred in start_preds: |
| 192 | for k, entity in self.new_entities.items(): |
| 193 | pred = pred.replace(k, entity.name) |
| 194 | pred = self.pddl.parse_predicate(pred, self.pddl.all_entities) |
| 195 | pred.set_state(self.pddl.sim_info) |
| 196 | |
| 197 | @property |
| 198 | def goal_expr(self) -> LogicalExpr: |