Dự báo nội mùa (S2S) ngày nóng cực đoan EHD/EHDE cho Việt Nam
— Báo cáo kỹ thuật tổng hợp và so sánh 3 phương án đầu vào —
Toàn bộ chuỗi từ xử lý số liệu thô, xây dựng mô hình AI, đánh giá
kiểm chứng (verification) trên tập kiểm định, đến điều kiện vận hành thời gian
thực. So sánh ba nguồn dữ liệu đầu vào:
EC_0.25_org (ECMWF 0.25° gốc),
EC_1.5→SD (ECMWF 1.5° hạ quy mô về 0.25°),
CFSv2 (NCEP CFSv2 gốc).
Người thực hiện: hệ thống AI (Claude) · Chủ trì: remoclic@hus.edu.vn ·
Ngày lập: 05/09/2026 · Kỳ hindcast: 2003–2022 · Miền: Việt Nam, lưới 0.25°, 541 ô đất, 7 vùng khí hậu S1–S7
Tóm tắt điều hành (1 đoạn). Ba hệ dự báo EHD/EHDE độc lập đã được xây dựng
end-to-end với cùng một kiến trúc AI (mô hình gộp toàn quốc, cổng lọc 2 tầng "EXP3/Ope1b"),
chỉ khác nguồn dự báo động lực đầu vào. Kết quả nhất quán trên cả ba: chỉ tuần 1 (W1)
đạt các chỉ tiêu nghiệp vụ; W2–W6 chạm trần thông tin của mô hình động lực, không phải
lỗi kỹ thuật, và chỉ phát hành dạng trường xác suất. Xếp hạng kỹ năng W1:
EC_0.25_org ≈ EC_1.5→SD > CFSv2. Phát hiện quan trọng nhất cho vận hành:
bản 1.5° của ECMWF sau khi hạ quy mô bằng BCSD tái tạo ~98% kỹ năng của bản 0.25° gốc
(W1 CSI 0.553 so với 0.562) ⇒ không cần tải/lưu bộ 0.25° đắt đỏ; tải 1.5° + hạ quy mô là đủ.
Mục tiêu. Dự báo nội mùa (subseasonal-to-seasonal) khả năng xảy ra
ngày nóng cực đoan (Extreme Heat Day — EHD) tại từng ô lưới 0.25° trên lãnh thổ
Việt Nam, hạn tới 45 ngày, từ sản phẩm gốc của các mô hình dự báo động lực toàn cầu.
Định nghĩa
EHD (ngày): Tx ≥ min(Tx90p cục bộ cửa sổ 31 ngày, 35 °C)
— tức hợp của "ngày nóng" (Tx≥35 °C) và "ngày sóng nhiệt" (Tx≥phân vị 90 cục bộ).
EHDE (tuần, tại 1 ô lưới): có ít nhất một ngày EHD trong tuần đó.
EHDE vùng (EXP1): vùng Si được coi là có EHDE nếu tỉ lệ ô báo EHDE
Pi = mi/ni vượt ngưỡng phủ (mặc định 20%).
Chỉ tiêu nghiệp vụ (đã hiệu chỉnh — xem hộp bên dưới)
Chỉ số
POD
FAR
POFD
CSI
FBI
Ngưỡng mục tiêu
> 0.60
< 0.20
< 0.20
> 0.40
~ 0.75
Đính chính bộ chỉ tiêu — một phát hiện then chốt của dự án.
Từ định nghĩa bảng ngẫu nhiên có đẳng thứcFAR = 1 − POD/FBI.
Nếu ép FBI ≈ 1 thì FAR = 1 − POD, nên muốn FAR<0.2 phải có POD>0.8
— bộ chỉ tiêu gốc {POD>0.6, FAR<0.2, FBI≈1} tự mâu thuẫn. Người dùng đã quyết:
giữ POD>0.6, FAR<0.2, CSI>0.4, và nới FBI về ~0.75 (chấp nhận báo thiếu có
chủ đích — phù hợp cảnh báo nắng nóng nghiệp vụ, tránh mất lòng tin do báo động sai).
Cùng lưới đích, cùng target, cùng kiến trúc AI. Cả ba dùng chung: lưới quan trắc
VnGAD 0.25° (541 ô đất, mask Mask_VN_S2S_EC_0.25.nc, 7 vùng Vietnam7.shp);
cùng số liệu quan trắc Tx (Tx_EC_0.25_2002-2023.nc); cùng định nghĩa EHD/EHDE;
cùng kiến trúc mô hình gộp toàn quốc 2 tầng (mục 5). Chỉ khác nguồn dự báo động lực ⇒
là một thí nghiệm có kiểm soát để tách riêng ảnh hưởng của chất lượng & độ phân giải
nguồn.
3. Xử lý số liệu: từ dữ liệu thô đến "cube" huấn luyện
3.1 Tải dữ liệu
EC_1.5→SD (dự án hiện tại)
Tải qua API ECDS (ecds.ecmwf.int), Origin=ECMWF, model version 2023,
control forecast, 00Z, hindcast 2003–2022, hạn tới 1104h, lưới gốc 1.5/1.5.
Hai miền: A (VN) 100–114°E, 6–25°N (toàn bộ biến bề mặt + mực đẳng áp);
B (rộng) 80–150°E, 15°S–45°N (trường quy mô lớn cho EOF/PC).
Bẫy đã xử lý: kho GRIB có file hỏng/cắt cụt ⇒ đọc record theo
danh tính (valid time, biến, mực) chứ không theo vị trí; NAS chỉ mount ở
login node ⇒ trích pgb 2001, 2005–2011 ở login node.
EC_0.25_org dùng lại bộ ECMWF S2S 0.25° đã tải sẵn của dự án
../HW (không phải nội suy của 1.5° — bộ 0.25° mang thêm 5.3% phương sai ở quy mô
<1.5°, RMS ~0.99 K).
3.2 Căn thời gian và gộp về cube
Căn ngày: bucket các bước 06/12/18Z của ngày D + 00Z ngày D+1 → Tx ngày mô hình.
(Đã kiểm chứng cách A vs B chỉ chênh ~0.0002 tương quan.)
Cube EC_1.5→SD: hình dạng (2080 init, 46 hạn, 40 biến, 541 điểm).
mx2t6 = Tx đã hạ quy mô (BCSD "đóng băng"); 39 biến còn lại nội suy song tuyến
1.5°→0.25° (điền ô thô rỗng trước khi nội suy để tránh NaN×0=NaN);
mn2t6 từ trường nhiệt tối thiểu.
Ghi cube bằng tofile tuần tự (tránh ghi strided chậm trên Lustre).
4. Đặc trưng & hai quy tắc bất di bất dịch
Chuẩn hoá vật lý (ec_z)
Mỗi biến được chuyển thành dị thường chuẩn hoá so với khí hậu học của chính mô hình
theo (biến, hạn, ngày-trong-năm, ô lưới). Chính chuẩn hoá này cho phép gộp 541 ô + mọi mùa
vào một mô hình duy nhất mà không để chu kỳ mùa trở thành tín hiệu trội. Khí hậu học (mean/std)
chỉ khớp trên năm huấn luyện để tránh rò rỉ.
Bộ đặc trưng tốt nhất — F3 (81 cột/tuần)
40 biến EC (z-score) gộp từ 46 hạn ngày về cửa sổ tuần (min/mean/max…);
20 PC EOF trường quy mô lớn: H500 (×10) + T850 (×10) — căn theo init; bất biến với độ phân giải;
Đã thử và bị bác: thêm chỉ số toàn cục biến đổi chậm (NINO3.4, MJO/OMI) không cải thiện;
riêng NINO3.4 gây hại cho mô hình cây vì đóng vai "nhãn năm" (R²năm=0.46).
Quy tắc: trước khi thêm biến biến đổi chậm, tính R² theo năm — R²năm > ~0.3 là nguy hiểm.
Hai quy tắc dữ liệu KHÔNG BAO GIỜ vi phạm:
Chỉ dùng control forecast — nạp nhầm ensemble mean thì z-score co về 0 và hệ
thiếu một cách hệ thống mà không báo lỗi.
Quan trắc chỉ làm target, không bao giờ làm feature — kể cả quan trắc tại thời điểm init.
5. Kiến trúc mô hình AI & danh sách cấu hình
Kiến trúc Ope1b (hiện thực của EXP3): mô hình gộp toàn quốc (một bộ cho cả 541 ô)
+ ngưỡng riêng từng ô lưới, gồm 2 tầng cổng. Riêng cho từng cửa sổ tuần W1–W6.
Đặc trưng F3 (81 cột, gộp tuần)
│
├─ TẦNG 1 — CỔNG "có/không sự kiện" (regression Sev + bỏ phiếu)
│ 8 họ hồi quy Sev × 9 mức phân vị (ZQ) = 72 thành viên
│ mỗi thành viên "bật" nếu Sev dự báo ≥ ngưỡng ô → đếm M/72
│ p_gate = M/N ; p_gate < p1(ô) ⇒ KẾT LUẬN nEHDE, DỪNG
│ (p1 chốt riêng từng ô sao cho rò rỉ ngoài mẫu ≤ 5% số sự kiện)
│
└─ TẦNG 2 — PHÂN LOẠI yEHDE (chỉ các mẫu qua cổng)
6 họ phân loại → trung bình xác suất
so với ngưỡng riêng ô = phân vị (1 − r·base_rate(ô))
r theo cửa sổ: W1 = 0.84 ; W2–W6 = 1.00
Sơ đồ hệ Ope1b (chung cho cả 3 phương án). Đánh giá OOF 4-fold theo NĂM (chia theo init, không theo dòng).
5.1 Tầng 1 — 8 họ hồi quy độ nghiêm trọng Sev (zoo_s1)
Tên họ
Loại
Cấu hình chính
Ridge
tuyến tính L2
StandardScaler + Ridge(alpha=10)
ElasticNet
tuyến tính L1+L2
alpha=0.01, l1_ratio=0.5, max_iter=2000
BayesRidge
tuyến tính Bayes
StandardScaler + BayesianRidge (chính quy hoá tự động)
Mỗi họ nhân với NQ=9 phân vị (ZQ = Φ⁻¹ của mức phân vị) ⇒ 72 "phiếu bầu". Đây là cơ chế lượng hoá bất định để tính p_gate = M/N.
5.2 Tầng 2 — 6 họ phân loại yEHDE (zoo_s2)
Tên họ
Loại
Cấu hình chính
LogReg_L2
hồi quy logistic
StandardScaler + LogisticRegression phạt L2
LogReg_EN
logistic ElasticNet
solver=saga, phạt L1+L2
LGBM_clf
cây phân loại
LightGBM, n_estimators=250, num_leaves=15
LGBM_clf_slow
cây học chậm lá nông
n_estimators=400, num_leaves=7, lr thấp
HistGB_clf
histogram GB
HistGradientBoostingClassifier
ANN_16
mạng nơ-ron
1 lớp ẩn 16 nút, ReLU (torch, offset=0)
Đã khảo sát và loại bỏ trong quá trình tuyển: một "vườn thú" (zoo) lớn hơn nhiều —
LGBM_rf, ExtraTrees, RandomForest, MLP(64,32), các ANN 4/8/32-16 nút, offset-LGBM (gbdt/deep/slow),
PLS các bậc khác… Các họ trong bảng 5.1/5.2 là bộ đã chốt cho vận hành sau khi cân bằng
kỹ năng OOF và chi phí tính. Feature importance (standardized tree gain, không dùng dữ liệu năm test)
được xuất cho mọi mô hình cây.
Với hai nguồn thô (EC 1.5°, CFSv2) phải hạ quy mô Tx về lưới 0.25°. BCSD được chọn
làm phương án nền (baseline) sau khi vượt nội suy song tuyến và quantile-mapping.
EC 1.5° → 0.25° — RMSE (°C) trên 541 điểm đất, theo tuần
Phương án
W1
W2
W3
W4
W5
W6
ALL
B0 — nội suy song tuyến
2.36
3.20
3.52
3.61
3.67
3.66
3.29
QM — quantile mapping
giảm ~0.22 °C toàn cục (mạnh nhất W1: −0.44)
3.07
B2 — BCSD (đã chọn)
1.79
2.89
3.25
3.35
3.44
3.40
2.99
Thứ tự BCSD > QM > bilinear giữ nguyên cả về RMSE lẫn điểm sự kiện. BCSD là mốc mọi phương án AI phải vượt. ME của B0 ~ −0.07 °C (gần như không lệch hệ thống).
CFSv2 → 0.25° — thang hạ quy mô (W1)
Thang
Mô tả
MAE
RMSE
CORR
CSI(W1)
D0
nội suy thô
2.05
2.65
0.753
0.427
D1 — BCSD
bias-corrected spatial disagg.
0.97
1.32
0.932
0.515
D2
ML có điều kiện
1.11
1.47
0.913
0.398
D1 (BCSD) tốt nhất; D2 (ML) không vượt được BCSD ⇒ giống kết luận ở EC. Với riêng Tx, không lớp mô hình nào mua thêm kỹ năng đáng kể so với BCSD.
Ba bẫy BCSD đã sửa (dùng chung): (1) trung bình quan trắc về ô thô phải chỉ trên điểm đất;
(2) dị thường lấy so với khí hậu quan trắc thô, không phải khí hậu dự báo chưa hiệu chỉnh
(lỗi này từng cho RMSE 9.89 °C — tệ hơn cả nội suy); (3) NaN×0=NaN trong nội suy —
một ô thô rỗng đầu độc toàn trường ⇒ phải fill_coarse_nan() trước.
7. Đánh giá EHD/EHDE trên toàn tập kiểm định
Đánh giá theo từng ô lưới, gộp toàn quốc trên năm kiểm định (không dùng trong huấn luyện).
Với EC: 416 init × 541 ô = 225 056 quyết định/tuần. Với CFS: 726 init.
7.1 EC_0.25_org (../HW ope1b) — 416 init
Tuần
POD
POFD
FAR
FBI
CSI
SEDI
AUC
W1
0.652
0.102
0.198
0.814
0.562
0.724
0.871
W2
0.580
0.205
0.455
1.065
0.391
0.521
0.766
W3
0.480
0.205
0.505
0.971
0.322
0.399
0.702
W4
0.475
0.228
0.533
1.018
0.308
0.358
0.695
W5
0.474
0.238
0.546
1.042
0.302
0.341
0.677
W6
0.454
0.238
0.555
1.019
0.290
0.315
0.662
W1 đạt trọn bộ chỉ tiêu (POD 0.652>0.6, FAR 0.198<0.2, POFD 0.102<0.2, CSI 0.562>0.4). W2–W6 không có ngưỡng nào cho FAR<0.2.
7.2 EC_1.5→SD (dự án hiện tại) — 416 init, cùng code chấm điểm
Tuần
POD
POFD
FAR
FBI
CSI
SEDI
AUC
W1
0.643
0.102
0.201
0.804
0.553
0.715
0.868
W2
0.574
0.203
0.456
1.056
0.387
0.515
0.764
W3
0.501
0.214
0.506
1.014
0.331
0.412
0.704
W4
0.495
0.237
0.532
1.059
0.317
0.371
0.693
W5
0.472
0.240
0.549
1.046
0.300
0.336
0.677
W6
0.450
0.241
0.560
1.022
0.286
0.305
0.658
Trùng khít EC_0.25_org mọi tuần (|ΔCSI| ≤ 0.010 từ W1 đến W6). W1 đạt 4.5/5 chỉ tiêu —
chỉ FAR 0.201 sát ngưỡng 0.2. Đây là bằng chứng cốt lõi: 1.5° + BCSD tái tạo ~98% kỹ năng
của 0.25° gốc.
7.3 CFSv2 (../HW_CFS_raw) — 726 init
Tuần
POD
FAR
CSI
AUC
W1
0.523
0.274
0.437
0.777
W2
0.310
0.510
0.234
0.627
W3
0.275
0.555
0.205
0.568
W4
0.252
0.567
0.189
0.544
W5
0.250
0.583
0.185
0.539
W6
0.259
0.587
0.190
0.515
Chấm theo từng ô lưới. Ở cấp vùng (EXP1, phủ tối ưu) W1 khá hơn: POD 0.653 / POFD 0.185 / FAR 0.133 / FBI 0.753 / CSI 0.593. CFS kém EC ở mọi hạn, mọi chỉ số; khoảng cách AUC W1 = 0.777 vs 0.871.
Trần thông tin — tính được bằng số. Để đạt POD>0.6 kèm FAR<0.2 ở base rate ~0.30
cần AUC ≈ 0.89. AUC thực có ở W2–W6 chỉ 0.52–0.77 (cả EC lẫn CFS). Đây là giới hạn
lượng thông tin trong dự báo động lực, không phải của lớp mô hình hay của việc dò ngưỡng.
Mọi nỗ lực đổi mô hình/quét ngưỡng đều tác động vào cùng một trục — và trục đó đã cạn ở W2–W6.
8. So sánh trực tiếp 3 phương án
8.1 Kỹ năng EHDE tuần 1 (W1) — hạn có ý nghĩa nghiệp vụ
Phương án
POD
POFD
FAR
FBI
CSI
AUC
Đạt chỉ tiêu
EC_0.25_org
0.652
0.102
0.198
0.814
0.562
0.871
5/5
EC_1.5→SD
0.643
0.102
0.201
0.804
0.553
0.868
4.5/5
CFSv2
0.523
—
0.274
—
0.437
0.777
2/5
CFS cấp ô lưới; CFS cấp vùng đạt tốt hơn (CSI 0.593). Con số CFS trên tập 3 năm khác EC (4 năm), nên so sánh mang tính định hướng, không phải kiểm định thống kê tuyệt đối.
Hai đường EC gần như chồng khít; CFS thấp hơn một bậc rõ rệt.
8.2 Ba nhận định so sánh
EC_0.25_org ≈ EC_1.5→SD. Chênh lệch |ΔCSI| ≤ 0.010 ở mọi tuần — nằm trong nhiễu lấy mẫu.
⇒ Độ phân giải nguồn (0.25 vs 1.5°) không là nút thắt; BCSD phục hồi gần trọn phần
thông tin quy mô nhỏ.
EC > CFSv2 ở mọi hạn, mọi chỉ số. Chênh lệch là do chất lượng mô hình động lực
(ECMWF mạnh hơn CFSv2 về AUC nền), không phải do độ phân giải hay pipeline — cả hai dùng
chung kiến trúc AI và cùng BCSD.
Cả 3 đều chỉ đạt ở W1. Từ W2 trở đi mọi hệ chạm trần thông tin; sản phẩm W2–W6 phát
hành dạng trường xác suất để người dùng tự chọn ngưỡng theo chi phí bỏ sót/báo động sai.
9. Điều kiện vận hành thời gian thực (real-time)
Cả ba đã chạy thử bản tin nghiệp vụ cho init 29/08/2026 00Z (cùng cấu trúc URL), tái sử dụng
đúng mô hình đã huấn luyện trên hindcast.
9.1 Chuỗi vận hành (ví dụ EC_1.5→SD — src/sd/)
download_ec15_rt.py # tải control forecast 1.5° init mới nhất (login node, internet)
→ grib_to_netcdf # convert GRIB → NetCDF
→ build_ec_all_sd_rt.py # EC_all lưới 0.25° đầy đủ: 39 biến nội suy + mn2t6
# + mx2t6 = BCSD "đóng băng" (hệ số học từ hindcast)
→ operational_forecast # nạp model_W1..W6.joblib, chạy cổng 2 tầng, sinh xác suất + nhị phân
→ make_forecast_html # bản đồ W1–W6 + trường xác suất
Builder đã validate trên hindcast 2003-08-03: mọi biến nội suy corr=1.00000; mx2t6 BCSD corr 0.99952. Pipeline idempotent.
9.2 Điều kiện & ràng buộc vận hành (chung)
Hạng mục
Yêu cầu
Bước cần internet
Chỉ khâu tải dữ liệu — chạy ở login node; phần còn lại offline.
Tính nặng
Nộp qua SLURM (workq, 11 node × 20 core). Huấn luyện đã đóng gói sẵn model_W*.joblib ⇒ real-time chỉ inference, nhẹ.
Đầu vào
Chỉ control forecast, 00Z, hạn tới ≥45 ngày.
Hiệu chỉnh
Hệ số BCSD + khí hậu học đóng băng từ hindcast (không khớp lại theo thời gian thực).
Tự động hoá
Watcher setsid sống qua logout; theo dõi qua log. (CFS có run_overnight.sh idempotent + STATUS_AUTO.md tự cập nhật 5′/lần.)
Phát hành
W1: bản đồ nhị phân + xác suất. W2–W6: chỉ trường xác suất.
9.3 Kết quả bản tin 29/08/2026 (W1)
Phương án
Số ô báo EHDE W1
Số vùng EHDE
Ghi chú
EC_0.25_org
437 / 541
—
Phủ rộng W4–W6 (đặc tính init cuối tháng 8)
EC_1.5→SD
429 / 541
—
Đồng thuận với org 91.9% ở W1; 98–100% ở W3–W6
CFSv2
286 / 541 (52.9%)
5 / 7
S1 72.5%, S2/S3 100%…
SD ≈ org cho init 29/8 ở cả 6 tuần và ở 21 bảng contingency từng điểm (3 điểm × 7 vùng), khẳng định lại kết luận mục 7.2 trong điều kiện vận hành thực.
10. Kết luận & khuyến nghị nghiệp vụ
Chọn ECMWF làm nguồn vận hành — kỹ năng cao hơn CFSv2 rõ rệt ở mọi hạn (W1 CSI 0.55–0.56
vs 0.44; AUC 0.87 vs 0.78).
Không cần bộ 0.25° gốc. Tải bản 1.5° (nhẹ, rẻ) rồi hạ quy mô BCSD tái tạo
~98% kỹ năng của 0.25° (W1 CSI 0.553 vs 0.562). Đây là khuyến nghị tiết kiệm hạ tầng quan trọng
nhất của dự án.
Vận hành phát báo nhị phân cho W1; W2–W6 phát trường xác suất — do trần thông tin
(cần AUC≈0.89, thực có 0.52–0.77) chứ không phải mô hình yếu.
Bộ chỉ tiêu đã hiệu chỉnh: POD>0.6, FAR<0.2, POFD<0.2, CSI>0.4, FBI~0.75
(bộ gốc FBI≈1 tự mâu thuẫn về mặt đại số).
Hướng còn mở (chưa đụng hoặc chưa cạn)
Quá tán không gian ở hạn dài (W4–W6 quá phát trạng thái "cả nước cùng bật" ~25 lần) — hai cách
chữa đã thử đều làm mất kỹ năng; chưa có lời giải.
Tổ hợp trễ (lagged ensemble: nhiều init liên tiếp cùng ngày hiệu lực) — nguồn thông tin bất định
duy nhất chưa khai thác.
Nâng hạ quy mô Tx từ BCSD lên AI-LightGBM (kỳ vọng cải thiện nhỏ vì SD đã ≈ native).
Mạng nơ-ron không gian (CNN) thay mô hình gộp điểm — code có sẵn, chưa kiểm thử đầy đủ.
11. Phụ lục
11.1 Định nghĩa chỉ số (từ bảng ngẫu nhiên a,b,c,d)
Chỉ số
Công thức
Ý nghĩa
POD
a/(a+c)
xác suất phát hiện (hit rate)
POFD
b/(b+d)
xác suất báo động sai trên nền không sự kiện
FAR
b/(a+b) = 1 − POD/FBI
tỉ lệ báo động sai trên tổng số lần báo
FBI
(a+b)/(a+c)
tần suất báo / tần suất thực (≈1 là cân bằng)
CSI
a/(a+b+c)
chỉ số thành công tới hạn (threat score)
SEDI
hàm của POD, POFD
chỉ số phân biệt cực trị đối xứng
MAE/RMSE/ME/CORR đánh giá theo giá trị (°C) cho khâu Tx; POD/POFD/FAR/FBI/CSI/SEDI/EDI
đánh giá theo khả năng phát hiện sự kiện EHD/EHDE.
11.2 Các bẫy kỹ thuật đã vấp (tránh lặp)
Chained indexing arr[:,:,a:b][...,idx]=True gán vào bản sao tạm ⇒ mọi metric NaN.
NaN×0=NaN trong matmul nội suy: một ô thô rỗng đầu độc toàn trường ⇒ fill_coarse_nan().
Ngưỡng chặn tuyệt đối lên đại lượng có đơn vị vật lý (sd>1e-3 xoá sạch prate) ⇒ dùng ngưỡng tương đối.
find -type d không đi theo symlink ⇒ đếm sai số năm dữ liệu (dùng find -L).
Mảng prob dùng chung inner-val và test ⇒ fold sau ghi đè fold trước (phải tách 2 mảng).
pkill -f "<script>" khớp cả dòng lệnh của chính nó ⇒ tự giết shell.
EC 0.25° tải trực tiếp (dùng ở ../HW = phương án 1)
EC_1.5_org
EC 1.5° tải trực tiếp (nguồn của phương án 2)
EC_0.25_SD
EC_1.5_org hạ quy mô BCSD về 0.25° (= "EC_1.5→SD" trong báo cáo)
EC_0.25_SD_AI
EC_0.25_SD sau hiệu chỉnh AI (hướng mở, chưa dùng vận hành)
CFSv2_org
CFSv2 gốc (../HW_CFS_raw = phương án 3)
Báo cáo tự sinh từ nhật ký kỹ thuật của ba dự án
(developing.txt, STATUS.md, RESUME.md) và các file kết quả
JSON đã kiểm định. Mọi con số trích trực tiếp từ output đánh giá; khác biệt tập năm kiểm định
giữa EC (4 năm) và CFS (3 năm) đã được ghi chú. Ngày 05/09/2026.