feat(B05 노선 추천 측점 맞춤): 거리 한도 걷어 내고 직접 잼 · 합친 꼴부터 놓기 · ALGO_VERSION 6 (406-2)

- 큰 R(widen) · 측점 맞춤(Station) — 추천 후보는 이탈 한도(4 m · 6 m) 대신 Guard 직접 잼 · 예상노선 추적 · 새 초기 노선은 그대로
- 측점 맞춤 — 같은 쪽으로 가장 많이 합친 꼴부터 · 자리 = 기울기 → 가까운 측점 → 토공 가늠 나은 곳 · 잼 못 지나면 덜 나쁜 놓기 0 → 1 → 3 %p 단계 · 그래도 못 놓으면 기울기 먼저(그 자리)
- Pool._trace 큰 R 판 뒤 합치기 → 측점 맞춤 · 엔진 grade_excess 걷음
- 검증_sub4 v5 대비: gradeline · earthwork · gentle 측점 밖 0 · 기울기 위반 5/4/4 → 1 · 같은 쪽 짧은 직선 15/17/14 → 8 · 절성토 ±1 % · weighted 곡선 35 → 26 · 측점 밖 1 → 5

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014utrjfoW831Vc5wJUd13kL
This commit is contained in:
2026-10-18 10:00:17 +09:00
co-authored by Claude Opus 5.5
parent 45abce48a3
commit 6b24de2b71
5 changed files with 133 additions and 68 deletions
@@ -32,8 +32,9 @@ from B05_Profile.B05_Profile_Engine_RouteInitial import (
)
from common_util.common_util_json import atomic_write_json
# 3 = 곡선 MC 일반측점(351-2) · 4 = 다투는 곡선 끔(364-5) · 5 = 후보마다 맞춤(383-1)
ALGO_VERSION = 5
# 3 = 곡선 MC 일반측점(351-2) · 4 = 다투는 곡선 끔(364-5) · 5 = 후보마다 맞춤(383-1) ·
# 6 = 같은 쪽 곡선 합치기 · 거리 한도 대신 직접 잼(406)
ALGO_VERSION = 6
STORE_DIR = "B05_Profile/route_recommend"
# 종류(갈래 · 지형) 마다 남길 벌 수 — 꺼낼 때 수정시각을 새로 해 최근에 쓴 것이 남음
KEEP_PER_KIND = 2