Explorar el Código

Merge remote-tracking branch 'company/dev' into dev

# Conflicts:
#	models/uf-rl/训练/uf_data_process/plot.py
#	models/uf-rl/训练/uf_train/env/reset_plot.py
#	models/uf-rl/训练/uf_train/rl_model/DQN/model/reward.png
junc_WHU hace 1 mes
padre
commit
71a1b3d6bf
Se han modificado 62 ficheros con 6 adiciones y 151 borrados
  1. 6 0
      .idea/misc.xml
  2. 0 0
      models/uf-rl/jianding/__init__.py
  3. 0 0
      models/uf-rl/longting/__init__.py
  4. 0 93
      models/uf-rl/uf_data_process/plot.py
  5. 0 58
      models/uf-rl/uf_train/env/reset_plot.py
  6. 0 0
      models/uf-rl/xishan/__init__.py
  7. 0 0
      models/uf-rl/训练/__init__.py
  8. 0 0
      models/uf-rl/训练/config/dqn_config.yaml
  9. 0 0
      models/uf-rl/训练/config/env_config.yaml
  10. 0 0
      models/uf-rl/训练/config/uf_analyze_config.yaml
  11. 0 0
      models/uf-rl/训练/uf_data_process/calculate.py
  12. 0 0
      models/uf-rl/训练/uf_data_process/filter.py
  13. 0 0
      models/uf-rl/训练/uf_data_process/fit.py
  14. 0 0
      models/uf-rl/训练/uf_data_process/label.py
  15. 0 0
      models/uf-rl/训练/uf_data_process/load.py
  16. 0 0
      models/uf-rl/训练/uf_data_process/pipeline.py
  17. 0 0
      models/uf-rl/训练/uf_data_process/run_ufdata_pipeline.py
  18. 0 0
      models/uf-rl/训练/uf_train/README.md
  19. 0 0
      models/uf-rl/训练/uf_train/UF_RL_架构问题与优化方案.md
  20. 0 0
      models/uf-rl/训练/uf_train/UF_RL_训练与预测流程详解.md
  21. 0 0
      models/uf-rl/训练/uf_train/UF_RL_详细技术文档.md
  22. 0 0
      models/uf-rl/训练/uf_train/__init__.py
  23. 0 0
      models/uf-rl/训练/uf_train/data_to_rl/__init__.py
  24. 0 0
      models/uf-rl/训练/uf_train/data_to_rl/data_splitter.py
  25. 0 0
      models/uf-rl/训练/uf_train/data_to_rl/data_to_rl_config.yaml
  26. 0 0
      models/uf-rl/训练/uf_train/data_to_rl/get_reset_pool.py
  27. 0 0
      models/uf-rl/训练/uf_train/data_to_rl/loader.py
  28. 0 0
      models/uf-rl/训练/uf_train/data_to_rl/run_data_to_rl_pipeline.py
  29. 0 0
      models/uf-rl/训练/uf_train/data_to_rl/state_construction.py
  30. 0 0
      models/uf-rl/训练/uf_train/data_to_rl/state_space_bounds.py
  31. 0 0
      models/uf-rl/训练/uf_train/env/__init__.py
  32. 0 0
      models/uf-rl/训练/uf_train/env/check_initial_state.py
  33. 0 0
      models/uf-rl/训练/uf_train/env/env_params.py
  34. 0 0
      models/uf-rl/训练/uf_train/env/env_reset.py
  35. 0 0
      models/uf-rl/训练/uf_train/env/env_visual.py
  36. 0 0
      models/uf-rl/训练/uf_train/env/resistance_model_bw.pth
  37. 0 0
      models/uf-rl/训练/uf_train/env/resistance_model_fp.pth
  38. 0 0
      models/uf-rl/训练/uf_train/env/uf_env.py
  39. 0 0
      models/uf-rl/训练/uf_train/env/uf_physics.py
  40. 0 0
      models/uf-rl/训练/uf_train/env/uf_resistance_models_define.py
  41. 0 0
      models/uf-rl/训练/uf_train/env/uf_resistance_models_load.py
  42. 0 0
      models/uf-rl/训练/uf_train/rl_model/DQN/__init__.py
  43. 0 0
      models/uf-rl/训练/uf_train/rl_model/DQN/dqn_decider.py
  44. 0 0
      models/uf-rl/训练/uf_train/rl_model/DQN/dqn_params.py
  45. 0 0
      models/uf-rl/训练/uf_train/rl_model/DQN/dqn_statebuilder.py
  46. 0 0
      models/uf-rl/训练/uf_train/rl_model/DQN/dqn_trainer.py
  47. 0 0
      models/uf-rl/训练/uf_train/rl_model/DQN/model/dqn_model.zip
  48. 0 0
      models/uf-rl/训练/uf_train/rl_model/DQN/model/loss.png
  49. 0 0
      models/uf-rl/训练/uf_train/rl_model/DQN/model/reward.png
  50. 0 0
      models/uf-rl/训练/uf_train/rl_model/DQN/online_datasets/UF1_init_cycle.csv
  51. 0 0
      models/uf-rl/训练/uf_train/rl_model/DQN/online_datasets/UF1_prev_cycle.csv
  52. 0 0
      models/uf-rl/训练/uf_train/rl_model/DQN/run_dqn_decide.py
  53. 0 0
      models/uf-rl/训练/uf_train/rl_model/DQN/run_dqn_deicde_totalstate.py
  54. 0 0
      models/uf-rl/训练/uf_train/rl_model/DQN/run_dqn_train.py
  55. 0 0
      models/uf-rl/训练/uf_train/rl_model/__init__.py
  56. 0 0
      models/uf-rl/训练/进水动作版超滤训练源码/UF_resistance_models.py
  57. 0 0
      models/uf-rl/训练/进水动作版超滤训练源码/fixed_DQN_decide.py
  58. 0 0
      models/uf-rl/训练/进水动作版超滤训练源码/fixed_DQN_env.py
  59. 0 0
      models/uf-rl/训练/进水动作版超滤训练源码/fixed_DQN_train.py
  60. 0 0
      models/uf-rl/训练/进水动作版超滤训练源码/model/dqn_model.zip
  61. 0 0
      models/uf-rl/训练/进水动作版超滤训练源码/resistance_model_bw.pth
  62. 0 0
      models/uf-rl/训练/进水动作版超滤训练源码/resistance_model_fp.pth

+ 6 - 0
.idea/misc.xml

@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+  <component name="Black">
+    <option name="sdkName" value="env_gpu" />
+  </component>
+</project>

+ 0 - 0
models/uf-rl/uf_train/__init__.py → models/uf-rl/jianding/__init__.py


+ 0 - 0
models/uf-rl/uf_train/data_to_rl/__init__.py → models/uf-rl/longting/__init__.py


+ 0 - 93
models/uf-rl/uf_data_process/plot.py

@@ -1,93 +0,0 @@
-import os
-import glob
-import pandas as pd
-import numpy as np
-import matplotlib.pyplot as plt
-from matplotlib.font_manager import FontProperties
-
-# ===================== 配置 =====================
-data_dir = r"E:\Greentech\models\uf-rl\datasets\processed\segments"
-target_col = "cycle_long_r2"
-
-# ===================== 中文字体设置 =====================
-# 注意:这里使用 SimHei 字体,可显示中文
-font = FontProperties(fname=r"C:\Windows\Fonts\simhei.ttf", size=12)
-
-# ===================== 读取所有 CSV =====================
-all_files = glob.glob(os.path.join(data_dir, "*.csv"))
-
-values = []
-
-for file in all_files:
-    try:
-        df = pd.read_csv(file)
-        if target_col in df.columns:
-            vals = df[target_col].dropna().values
-            values.append(vals)
-    except Exception as e:
-        print(f"读取失败: {file}, 错误: {e}")
-
-# 合并所有数据
-if len(values) == 0:
-    raise ValueError("未在任何 CSV 中找到有效的 cycle_long_R2 数据")
-
-data = np.concatenate(values)
-total_count = len(data)
-
-# ===================== 定义区间 =====================
-bins = [
-    -np.inf,
-    0.0,
-    0.5,
-    0.6,
-    0.7,
-    0.8,
-    0.9,
-    1.0
-]
-
-labels = [
-    "<0",
-    "0 – 0.5",
-    "0.5 – 0.6",
-    "0.6 – 0.7",
-    "0.7 – 0.8",
-    "0.8 – 0.9",
-    "0.9 – 1.0"
-]
-
-# ===================== 统计分布 =====================
-counts = pd.cut(
-    data,
-    bins=bins,
-    labels=labels,
-    right=True,
-    include_lowest=True
-).value_counts().sort_index()
-
-ratios = counts / total_count * 100
-
-# ===================== 输出结果 =====================
-result = pd.DataFrame({
-    "样本数": counts,
-    "占比 (%)": ratios.round(2)
-})
-
-print(f"\n总样本数: {total_count}\n")
-print(result)
-
-# ===================== 绘制柱状图 =====================
-plt.figure(figsize=(10, 6))
-plt.bar(labels, ratios, color='skyblue', edgecolor='black')
-plt.title("cycle_long_R2 数据分布柱状图", fontproperties=font)
-plt.xlabel("区间", fontproperties=font)
-plt.ylabel("占比 (%)", fontproperties=font)
-plt.ylim(0, 100)
-plt.grid(axis='y', linestyle='--', alpha=0.7)
-
-# 在柱子上显示百分比
-for i, v in enumerate(ratios):
-    plt.text(i, v + 1, f"{v:.1f}%", ha='center', va='bottom', fontsize=10, fontproperties=font)
-
-plt.tight_layout()
-plt.show()

+ 0 - 58
models/uf-rl/uf_train/env/reset_plot.py

@@ -1,58 +0,0 @@
-import numpy as np
-import matplotlib.pyplot as plt
-
-# 训练进度
-progress = np.linspace(0, 1, 200)
-
-# -----------------------------
-# 参数设置(可调)
-# -----------------------------
-alpha = 0.5    # 虚拟工况最终最大占比
-k = 10.0       # Sigmoid 陡峭程度
-p0 = 0.7       # 虚拟工况启动拐点
-beta = 0.5     # 扰动工况线性增长系数
-
-# -----------------------------
-# 权重定义
-# -----------------------------
-# 虚拟工况(非线性,后期快速增长)
-w_virtual = alpha / (1.0 + np.exp(-k * (progress - p0)))
-
-# 扰动工况(线性增长)
-w_perturb = beta * progress
-
-# 真实工况(剩余比例)
-w_real = 1.0 - w_virtual - w_perturb
-w_real = np.clip(w_real, 0.0, 1.0)  # 数值安全
-
-# -----------------------------
-# 扰动幅度
-# -----------------------------
-perturb_scale = 0.02 + 0.04 * progress
-
-# -----------------------------
-# 绘图
-# -----------------------------
-fig, ax1 = plt.subplots(figsize=(8, 5))
-
-ax1.plot(progress, w_real, label="w_real", linewidth=2)
-ax1.plot(progress, w_perturb, label="w_perturb", linewidth=2)
-ax1.plot(progress, w_virtual, label="w_virtual", linewidth=2)
-
-ax1.set_xlabel("Training Progress")
-ax1.set_ylabel("Sampling Weights")
-ax1.set_ylim(0, 1.05)
-ax1.grid(True, linestyle="--", alpha=0.5)
-ax1.legend(loc="upper left")
-
-# 第二纵轴:扰动幅度
-ax2 = ax1.twinx()
-ax2.plot(progress, perturb_scale, label="perturb_scale",
-         linestyle="--", linewidth=2)
-ax2.set_ylabel("Perturb Scale")
-ax2.set_ylim(0, 0.07)
-ax2.legend(loc="upper right")
-
-plt.title("Progressive Reset Sampling Strategy")
-plt.tight_layout()
-plt.show()

+ 0 - 0
models/uf-rl/uf_train/env/__init__.py → models/uf-rl/xishan/__init__.py


+ 0 - 0
models/uf-rl/uf_train/rl_model/DQN/__init__.py → models/uf-rl/训练/__init__.py


+ 0 - 0
models/uf-rl/config/dqn_config.yaml → models/uf-rl/训练/config/dqn_config.yaml


+ 0 - 0
models/uf-rl/config/env_config.yaml → models/uf-rl/训练/config/env_config.yaml


+ 0 - 0
models/uf-rl/config/uf_analyze_config.yaml → models/uf-rl/训练/config/uf_analyze_config.yaml


+ 0 - 0
models/uf-rl/uf_data_process/calculate.py → models/uf-rl/训练/uf_data_process/calculate.py


+ 0 - 0
models/uf-rl/uf_data_process/filter.py → models/uf-rl/训练/uf_data_process/filter.py


+ 0 - 0
models/uf-rl/uf_data_process/fit.py → models/uf-rl/训练/uf_data_process/fit.py


+ 0 - 0
models/uf-rl/uf_data_process/label.py → models/uf-rl/训练/uf_data_process/label.py


+ 0 - 0
models/uf-rl/uf_data_process/load.py → models/uf-rl/训练/uf_data_process/load.py


+ 0 - 0
models/uf-rl/uf_data_process/pipeline.py → models/uf-rl/训练/uf_data_process/pipeline.py


+ 0 - 0
models/uf-rl/uf_data_process/run_ufdata_pipeline.py → models/uf-rl/训练/uf_data_process/run_ufdata_pipeline.py


+ 0 - 0
models/uf-rl/uf_train/README.md → models/uf-rl/训练/uf_train/README.md


+ 0 - 0
models/uf-rl/uf_train/UF_RL_架构问题与优化方案.md → models/uf-rl/训练/uf_train/UF_RL_架构问题与优化方案.md


+ 0 - 0
models/uf-rl/uf_train/UF_RL_训练与预测流程详解.md → models/uf-rl/训练/uf_train/UF_RL_训练与预测流程详解.md


+ 0 - 0
models/uf-rl/uf_train/UF_RL_详细技术文档.md → models/uf-rl/训练/uf_train/UF_RL_详细技术文档.md


+ 0 - 0
models/uf-rl/uf_train/rl_model/__init__.py → models/uf-rl/训练/uf_train/__init__.py


+ 0 - 0
models/uf-rl/训练/uf_train/data_to_rl/__init__.py


+ 0 - 0
models/uf-rl/uf_train/data_to_rl/data_splitter.py → models/uf-rl/训练/uf_train/data_to_rl/data_splitter.py


+ 0 - 0
models/uf-rl/uf_train/data_to_rl/data_to_rl_config.yaml → models/uf-rl/训练/uf_train/data_to_rl/data_to_rl_config.yaml


+ 0 - 0
models/uf-rl/uf_train/data_to_rl/get_reset_pool.py → models/uf-rl/训练/uf_train/data_to_rl/get_reset_pool.py


+ 0 - 0
models/uf-rl/uf_train/data_to_rl/loader.py → models/uf-rl/训练/uf_train/data_to_rl/loader.py


+ 0 - 0
models/uf-rl/uf_train/data_to_rl/run_data_to_rl_pipeline.py → models/uf-rl/训练/uf_train/data_to_rl/run_data_to_rl_pipeline.py


+ 0 - 0
models/uf-rl/uf_train/data_to_rl/state_construction.py → models/uf-rl/训练/uf_train/data_to_rl/state_construction.py


+ 0 - 0
models/uf-rl/uf_train/data_to_rl/state_space_bounds.py → models/uf-rl/训练/uf_train/data_to_rl/state_space_bounds.py


+ 0 - 0
models/uf-rl/训练/uf_train/env/__init__.py


+ 0 - 0
models/uf-rl/uf_train/env/check_initial_state.py → models/uf-rl/训练/uf_train/env/check_initial_state.py


+ 0 - 0
models/uf-rl/uf_train/env/env_params.py → models/uf-rl/训练/uf_train/env/env_params.py


+ 0 - 0
models/uf-rl/uf_train/env/env_reset.py → models/uf-rl/训练/uf_train/env/env_reset.py


+ 0 - 0
models/uf-rl/uf_train/env/env_visual.py → models/uf-rl/训练/uf_train/env/env_visual.py


+ 0 - 0
models/uf-rl/uf_train/env/resistance_model_bw.pth → models/uf-rl/训练/uf_train/env/resistance_model_bw.pth


+ 0 - 0
models/uf-rl/uf_train/env/resistance_model_fp.pth → models/uf-rl/训练/uf_train/env/resistance_model_fp.pth


+ 0 - 0
models/uf-rl/uf_train/env/uf_env.py → models/uf-rl/训练/uf_train/env/uf_env.py


+ 0 - 0
models/uf-rl/uf_train/env/uf_physics.py → models/uf-rl/训练/uf_train/env/uf_physics.py


+ 0 - 0
models/uf-rl/uf_train/env/uf_resistance_models_define.py → models/uf-rl/训练/uf_train/env/uf_resistance_models_define.py


+ 0 - 0
models/uf-rl/uf_train/env/uf_resistance_models_load.py → models/uf-rl/训练/uf_train/env/uf_resistance_models_load.py


+ 0 - 0
models/uf-rl/训练/uf_train/rl_model/DQN/__init__.py


+ 0 - 0
models/uf-rl/uf_train/rl_model/DQN/dqn_decider.py → models/uf-rl/训练/uf_train/rl_model/DQN/dqn_decider.py


+ 0 - 0
models/uf-rl/uf_train/rl_model/DQN/dqn_params.py → models/uf-rl/训练/uf_train/rl_model/DQN/dqn_params.py


+ 0 - 0
models/uf-rl/uf_train/rl_model/DQN/dqn_statebuilder.py → models/uf-rl/训练/uf_train/rl_model/DQN/dqn_statebuilder.py


+ 0 - 0
models/uf-rl/uf_train/rl_model/DQN/dqn_trainer.py → models/uf-rl/训练/uf_train/rl_model/DQN/dqn_trainer.py


+ 0 - 0
models/uf-rl/uf_train/rl_model/DQN/model/dqn_model.zip → models/uf-rl/训练/uf_train/rl_model/DQN/model/dqn_model.zip


+ 0 - 0
models/uf-rl/uf_train/rl_model/DQN/model/loss.png → models/uf-rl/训练/uf_train/rl_model/DQN/model/loss.png


+ 0 - 0
models/uf-rl/uf_train/rl_model/DQN/model/reward.png → models/uf-rl/训练/uf_train/rl_model/DQN/model/reward.png


+ 0 - 0
models/uf-rl/uf_train/rl_model/DQN/online_datasets/UF1_init_cycle.csv → models/uf-rl/训练/uf_train/rl_model/DQN/online_datasets/UF1_init_cycle.csv


+ 0 - 0
models/uf-rl/uf_train/rl_model/DQN/online_datasets/UF1_prev_cycle.csv → models/uf-rl/训练/uf_train/rl_model/DQN/online_datasets/UF1_prev_cycle.csv


+ 0 - 0
models/uf-rl/uf_train/rl_model/DQN/run_dqn_decide.py → models/uf-rl/训练/uf_train/rl_model/DQN/run_dqn_decide.py


+ 0 - 0
models/uf-rl/uf_train/rl_model/DQN/run_dqn_deicde_totalstate.py → models/uf-rl/训练/uf_train/rl_model/DQN/run_dqn_deicde_totalstate.py


+ 0 - 0
models/uf-rl/uf_train/rl_model/DQN/run_dqn_train.py → models/uf-rl/训练/uf_train/rl_model/DQN/run_dqn_train.py


+ 0 - 0
models/uf-rl/训练/uf_train/rl_model/__init__.py


+ 0 - 0
models/uf-rl/进水动作版超滤训练源码/UF_resistance_models.py → models/uf-rl/训练/进水动作版超滤训练源码/UF_resistance_models.py


+ 0 - 0
models/uf-rl/进水动作版超滤训练源码/fixed_DQN_decide.py → models/uf-rl/训练/进水动作版超滤训练源码/fixed_DQN_decide.py


+ 0 - 0
models/uf-rl/进水动作版超滤训练源码/fixed_DQN_env.py → models/uf-rl/训练/进水动作版超滤训练源码/fixed_DQN_env.py


+ 0 - 0
models/uf-rl/进水动作版超滤训练源码/fixed_DQN_train.py → models/uf-rl/训练/进水动作版超滤训练源码/fixed_DQN_train.py


+ 0 - 0
models/uf-rl/进水动作版超滤训练源码/model/dqn_model.zip → models/uf-rl/训练/进水动作版超滤训练源码/model/dqn_model.zip


+ 0 - 0
models/uf-rl/进水动作版超滤训练源码/resistance_model_bw.pth → models/uf-rl/训练/进水动作版超滤训练源码/resistance_model_bw.pth


+ 0 - 0
models/uf-rl/进水动作版超滤训练源码/resistance_model_fp.pth → models/uf-rl/训练/进水动作版超滤训练源码/resistance_model_fp.pth