コード例 #1
0
    def __call__(self, start_vertex, goal_connector):
        assert is_discrete_condition(goal_connector.condition)

        vertex = self.rg.vertex(goal_connector.condition.substate)
        vertex.connect(goal_connector)
        variable, value = list(vertex.substate)[0]

        for operator in self.operators:
            if variable in operator.effects:
                effect = operator.effects[variable]
                if is_discrete_effect(effect) and effect.value == value:
                    self.rg.edge(operator).connect(vertex)
        return []
コード例 #2
0
    def __call__(self, start_vertex, goal_connector):
        assert is_discrete_condition(goal_connector.condition)

        vertex = self.rg.vertex(goal_connector.condition.substate)
        vertex.connect(goal_connector)
        variable, value = list(vertex.substate)[0]

        for operator in self.operators:
            if variable in operator.effects:
                effect = operator.effects[variable]
                if is_discrete_effect(effect) and effect.value == value:
                    self.rg.edge(operator).connect(vertex)
        return []
コード例 #3
0
    def __call__(self, start_vertex, goal_connector):
        assert is_discrete_condition(goal_connector.condition)

        vertex = self.rg.vertex(goal_connector.condition.substate)
        vertex.connect(goal_connector)
        variable, value = list(vertex.substate)[0]

        subplanners = []
        for operator in self.operators:
            if variable in operator.effects:
                effect = operator.effects[variable]
                if is_discrete_effect(effect) and effect.value == value:
                    subplanners.append(DiscreteSubplanner([operator])(start_vertex, goal_connector, self.rg))
        return subplanners
コード例 #4
0
    def __call__(self, start_vertex, goal_connector):
        assert is_discrete_condition(goal_connector.condition)

        vertex = self.rg.vertex(goal_connector.condition.substate)
        vertex.connect(goal_connector)
        variable, value = list(vertex.substate)[0]

        subplanners = []
        for operator in self.operators:
            if variable in operator.effects:
                effect = operator.effects[variable]
                if is_discrete_effect(effect) and effect.value == value:
                    subplanners.append(
                        DiscreteSubplanner([operator])(start_vertex,
                                                       goal_connector,
                                                       self.rg))
        return subplanners