--- title: 증분형 갱신 알고리즘 (Labeled Property Graph, LPG) tags: [incremental, LPG, graph-transformation, Speckle, CDE, concurrency] sources: - raw/ai-research/비(非)패밀리 조립 단위, 증분형 갱신 알고리즘 및 선형·GIS 통합 좌표계의 기술적 패러다임 전환.md updated: 2026-04-14 principles: [증분] --- # 증분형 갱신 알고리즘 (Labeled Property Graph, LPG) ## 요약 전통 파라메트릭은 매개변수 변경 시 **종속성 그래프 전체를 재계산(Full Regeneration)**. 토목 대규모 모델에서는 시스템 프리징 초래. 해법은 BIM 모델을 **레이블 지정 속성 그래프(LPG)**로 표현하고 **그래프 변환(Graph Transformation)**으로 증분(Δ)만 적용하는 방식. Sebastian Esser et al. 연구. ## 사실 (Facts) ### 전체 재생성의 한계 - 선형의 미세 변화가 수천 개 거더 세그먼트·교각·기초를 동시 변경해야 하면 **시스템 프리징**. - 즉각적 결과 확인·대안 검토(인터랙티브) 불가. ### LPG 기반 증분 수식 $$G_{new} = G_{old} \oplus \Delta G$$ - BIM 모델 = **노드(객체) + 엣지(관계)** 집합. - 설계 변경 = **그래프 변환 (Addition / Deletion / Modification).** ### 알고리즘 3단계 1. **객체 식별·매핑 (Object Identification & Mapping):** 전역 고유 식별자(**GUID**) 기반으로 두 버전 간 객체 1:1 매칭. 2. **차이점 분석 (Diffing):** 노드 속성값 변화 + 엣지 연결 구조 변화 식별. 3. **그래프 변환 규칙 적용:** 변경 부분만 타겟 모델에 적용. 전체 모델 무결성 유지하며 갱신. ### 정량 효과 - 모놀리식(Monolithic) 파일 기반 전송 대비 **데이터 전송량 90% 이상 감소.** - 객체 수준 동기화로 **동시성 제어(Concurrency Control)** 해결 — 복수 설계자가 다른 파트를 동시 수정 가능. ### 분산 협업 플랫폼 맥락 - **Speckle** 등 오픈소스 협업 환경은 계층적 데이터 구조로 객체 단위 관리. - 계층 구조의 한계(복잡한 객체 간 관계 표현 약함)를 극복하기 위해 **그래프 기반 데이터 구조 접목** 추세. ### 사용자 체감 - 10분 대기 → 0.1초 즉시 반응. **설계자의 창의성·의사결정 질에 결정적 차이.** ## 해석 (Interpretation) - LPG 기반 증분은 [[PCE 파라메트릭 변경 엔진|Revit PCE의 직렬화 병목]]을 정면 돌파하는 접근. Revit은 전체 DAG 재평가 → LPG는 변경 부분집합(ΔG)만 적용. - 우리 엔진(Rust 재설계 검토)은 처음부터 **LPG를 내부 모델로 채택**하는 것이 유력. 이는 메모리 배치·캐시 효율·분산 아키텍처와 자연스럽게 맞물림. - GUID 기반 객체 식별은 **저장소·시공 생애주기 전체**(IFC GlobalId 등)와 정합 → 외부 표준과의 연동도 용이. - Speckle류 플랫폼 조사는 우선순위: `raw/tools/` 에 Speckle 문서·API 레퍼런스 편입 필요. - **공통 데이터 환경(CDE)·BIM 레벨 3** 진입 조건과 직결 — 단순 성능 개선이 아니라 협업 모델의 전제 기술. ## 주요 인물·문헌 - **Sebastian Esser et al.** — LPG 기반 BIM 증분 업데이트 연구. (구체 논문은 `raw/papers/` 로 후속 수집 대상.) ## 관련 페이지 - [[PCE 파라메트릭 변경 엔진]] - [[특징 형상 기반 모델링 FBM]] - [[선형 GIS 기반 좌표계]]