From 3092be96d31ba175f5534c30c2ff7f36b6c1dc6c Mon Sep 17 00:00:00 2001 From: Hgq <2757430053@qq.com> Date: Tue, 9 Dec 2025 17:47:05 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A1=A8=E8=BF=B0=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- data_structures.py | 4 ++-- visualizer.py | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/data_structures.py b/data_structures.py index a51a0cc..4f5d113 100644 --- a/data_structures.py +++ b/data_structures.py @@ -95,8 +95,8 @@ class Config: # 惩罚系数 self.delta = 1.3 # 变更惩罚系数 # 早停参数 - self.early_stop_patience = 30 # 连续多少代无改进则早停 - self.early_stop_threshold = 0.1 # 目标值变化阈值 + self.early_stop_patience = 50 # 连续多少代无改进则早停 + self.early_stop_threshold = 0.05 # 目标值变化阈值 # 目标函数数量 self.objective_num = 2 # 双目标(成本+延期) self.duplicate_threshold = 0.01 # 重复解保留数量比例 diff --git a/visualizer.py b/visualizer.py index d11044c..8891ce8 100644 --- a/visualizer.py +++ b/visualizer.py @@ -91,7 +91,7 @@ class ResultVisualizer: q_segment = quantity_layer[start:end].astype(int) # 数量(整数) demand_q = self.utils.order.Q[i] # 需求数量(整数) allocated_q = np.sum(q_segment[e_segment == 1]) # 分配的总数量(整数) - print(f"物料 {i} - 需求数量: {demand_q}, 分配总量: {allocated_q}") + print(f"物料 {i+1} - 需求数量: {demand_q}, 分配总量: {allocated_q}") total_q_check.append(allocated_q == demand_q) # 整数相等检查 print(f" 选择的企业及其分配:") for idx, ent in enumerate(ents): @@ -104,7 +104,7 @@ class ResultVisualizer: print("-" * 80) # 验证数量约束是否满足 if all(total_q_check): - print("✅ 所有物料数量满足需求约束(整数匹配)") + print("✅ 所有物料数量满足需求约束") else: print("❌ 部分物料数量未满足需求约束")