""" ============================================================ data_to_rl | 全流程入口脚本 ------------------------------------------------------------ 功能: 串行执行 data_to_rl 模块的全部数据准备流程,包括: 1. 强化学习状态空间范围提取 2. 强化学习 reset 状态先验池生成 设计原则: - 只负责“调度”,不包含任何业务逻辑 - 所有参数均来自 data_to_rl_config.yaml - 工程师只需运行本脚本即可完成全部准备工作 使用方式: python run_data_to_rl_pipeline.py ============================================================ """ from pathlib import Path import time from state_space_bounds import extract_state_space_bounds from get_reset_pool import generate_reset_state_pool THIS_FILE = Path(__file__).resolve() UF_RL_ROOT = THIS_FILE.parents[1] def main(): # -------------------------------------------------------- # 配置文件路径(统一入口) # -------------------------------------------------------- config_path = UF_RL_ROOT / "lankao" / "data_to_rl_config.yaml" print(f" 配置文件: {config_path}") print("======================================================\n") start_time = time.time() # -------------------------------------------------------- # Step 1: 提取状态空间经验范围 # -------------------------------------------------------- print(">>> Step 1 / 2:提取强化学习状态空间范围") step_start = time.time() extract_state_space_bounds(config_path) print( f">>> Step 1 完成,用时 {time.time() - step_start:.2f} 秒\n" ) # -------------------------------------------------------- # Step 2: 生成 reset 状态先验池 # -------------------------------------------------------- print(">>> Step 2 / 2:生成 RL reset 状态先验池") step_start = time.time() generate_reset_state_pool(config_path) print( f">>> Step 2 完成,用时 {time.time() - step_start:.2f} 秒\n" ) # -------------------------------------------------------- # 总结 # -------------------------------------------------------- print("======================================================") print(" data_to_rl 数据准备流水线执行完成 ") print("------------------------------------------------------") print(f" 总耗时: {time.time() - start_time:.2f} 秒") print(" 输出内容包括:") print(" - state_space_bounds.csv (状态空间统计)") print(" - reset_state_pool.csv (reset 初始状态池)") print("======================================================") if __name__ == "__main__": main()