18 Matching Annotations
  1. Jul 2025
    1. NEGATIVE_CONDITIONS_REMOVING

      消除否定条件

      如: Action enter_room(person): Pre: not locked(door) ===> ``` Fluent door_unlocked = not locked(door) # 新建辅助流变量

      Action enter_room(person): Pre: door_unlocked ```

    2. DISJUNCTIVE_CONDITIONS_REMOVING

      消除析取条件:拆解为纯合取范式

      如? Action board(vehicle): Pre: at(vehicle) in {dock1 or dock2} ===> ``` Action board_at_dock1(vehicle): Pre: at(vehicle)=dock1

      Action board_at_dock2(vehicle): Pre: at(vehicle)=dock2 ```

    3. CONDITIONAL_EFFECTS_REMOVING

      消除条件化效果

      如? Action repair(robot): if has_tool(robot): then: status(robot) = operational else: status(robot) = broken ===> ``` Action repair_with_tool(robot): Pre: has_tool(robot) Effect: status(robot)=operational

      Action repair_without_tool(robot): Pre: not has_tool(robot) Effect: status(robot)=broken ```

    4. GROUNDING

      实例化

      如? Action move(vehicle: Vehicle, from: Location, to: Location) ===> Action move_truckA_loc1_loc2 Action move_truckA_loc1_loc3 Action move_truckB_loc2_loc4

    5. The “Compiler” OM defines a transformation of an AbstractProblem into another one.

      将抽象规划问题(AbstractProblem)​形式化重构为逻辑等价的另一种表达,消除特定复杂性以便高效求解

    6. SequentialSimulator

      序列化模拟器。为给定规划问题提供交互式状态空间探索工具,支持动作可行性验证、状态跳转及为过程可视化提供可能。

    7. warm_start_plan

      热启动:提供给规划器的一个初始可行解(或部分解)。规划器利用这个初始解来引导搜索过程,通常能够显著减少搜索时间或得到更高质量的解。

    8. OneshotPlanner

      单次规划器,给定规划问题,返回解决方案路径(solution plan),或声明该问题不可解(unsolvable)​。

    9. plug-in system

      可拔插的功能扩展槽​.。主程序提供基础框架(插槽),开发者编写独立模块(插件),无需修改主程序即可动态添加新功能。

      本质解耦​:主程序只关心 ​«做什么»​(接口标准),插件负责 ​«怎么做»​(具体实现),通过插件管理器完成动态组装。

    10. Factory class

      工厂类,一个专门负责创建对象的“代工厂”​,你告诉它“要什么”(条件),它负责造出对应对象。 如下: ```

      工厂类(封装创建逻辑)

      class ShapeFactory: def create_shape(self, name): if name == "circle": return Circle() elif name == "square": return Square() # 新增只需扩展工厂内部 elif name == "triangle":<br /> return Triangle()

      客户端调用

      factory = ShapeFactory() shape = factory.create_shape("circle") # 无需知道Circle类细节 shape.draw() # 画出一个圆 ```

    11. mixin

      即“混入”,是一种编程模式,在 Python 等面向对象语言中,通常它是实现了某种功能单元的类,用于被其他子类继承,将功能组合到子类中。

      如 继承下面的类(MappingMixin)的 子类可以具有使用字典一样调用属性的功能。 ``` class MappingMixin: def getitem(self, key): return self.dict.get(key)

      def __setitem__(self, key, value):
          return self.__dict__.set(key, value)
      

      ```