Skip to content

Latest commit

 

History

History
258 lines (196 loc) · 17.1 KB

README.md

File metadata and controls

258 lines (196 loc) · 17.1 KB

지방이상증 증후군 (Lipodystrophy Syndromes) — QSP 모델

Congenital generalised (CGL) · acquired generalised (AGL) · familial partial (FPLD) · acquired partial (APL)

산출물 파일
기계론적 지도 (192 노드 · 290 엣지 · 22 클러스터) lipo_qsp_model.dot · SVG · PNG
mrgsolve 모델 (53 ODE · 28 시나리오 · 7개 반증 검정) lipo_mrgsolve_model.R
Shiny 대시보드 (12 탭) lipo_shiny_app.R
검증 실행 결과 (mrgsolve 2.0.1 실제 실행 로그) lipo_validation_output.txt
참고문헌 (PMID 121건, 전수 검증) lipo_references.md

조직 원리 (The organising thesis)

지방조직은 서로 무관한 두 가지 일을 하나의 조직으로 수행한다.

  • (a) 기계적 완충기(buffer) — 큰 중성지방 유입을 낮은 열역학적 비용으로 에스터화하여 보관할 수 있는 유일한 구획
  • (b) 내분비 기관(endocrine organ) — 그 완충기의 크기를 시상하부에 보고하는 렙틴 신호의 원천

지방이상증은 하나의 병변(지방세포 질량/기능 소실)이지만, 그 결과는 서로 독립적인 두 개의 결손이다.

용량 결손 (capacity deficit) :  J_ov = max(0, J_in − ΣJ_st,i − OX)
신호 결손 (signal deficit)   :  DEF  = 1 − S(L),   S(L) = L²/(L² + 4²)

그리고 신호 결손은 과식을 통해 J_in을 올려버린다. 즉 두 결손은 더해지지 않고 곱해진다. 이 저장소의 다른 모델들과 달리, 이 모델에서 약물은 "적응증"으로 분류되지 않고 두 결손 중 어느 항에 들어가는가로 분류된다.

약물 건드리는 항
메트렐렙틴 신호 S → (그리고 그 결과로) J_in
피오글리타존 (PPARγ) 용량 C_cap — 단, 전지방세포 기질이 남아 있을 때만
볼라네소르센(APOC3) · 에비나쿠맙(ANGPTL3) · 페노피브레이트 · 오메가-3 어느 것도 아님 — 넘침의 부산물인 혈장 TG만 제거
인슐린 · 메트포르민 · SGLT2i 혈당만
초저지방식 J_in을 직접

GL/PL 해리는 이 파일에 적혀 있지 않다 — 유도된다

이 모델에는 "메트렐렙틴은 전신형에서 더 잘 듣는다"는 파라미터가 없다. 포화하는 전달함수 S(L) 하나만 있고, 총 유효 렙틴에 그대로 적용된다. S가 포화하므로 동일 용량은 모든 환자에서 동일한 수용체 점유율을 만들지만, 달성 가능한 S의 변화량은 1 − S(L_baseline) 즉 환자의 속성으로 상한이 정해진다.

실제 실행 결과 (inference1_dose_vs_deficit()):

시나리오 기저 렙틴 결손 24h 점유율 24h 신호 EC50 초과 시간 ΔHbA1c ΔTG ΔHFF
CGL + 0.06 mg/kg 0.64 0.975 0.695 0.867 100% −2.40 −70.8% −86.0%
FPLD 저렙틴 + 0.06 5.40 0.354 0.761 0.895 100% −0.37 −15.9% −17.3%
FPLD 정상렙틴 + 0.06 7.36 0.228 0.782 0.899 100% −0.20 −5.2% −5.6%
FPLD 정상렙틴 + 0.13 (증량) 7.36 0.228 0.855 0.906 100% −0.22 −5.4% −5.8%

점유율은 위로 갈수록 커지는데 효과는 12배 작아진다. 표적 결합은 네 팔 모두 하루 100%다. 용량을 두 배로 올려 점유율을 0.78 → 0.86으로 올려도 HbA1c는 −0.20 → −0.22로 움직이지 않는다. 제약은 용량이 아니라 결손이다.


4개의 구조적 약속 (structural commitments)

  1. 하나의 병변, 두 개의 결손 — 위 표. 약물은 들어가는 항으로 분류된다.
  2. 혈장 TG는 캐스케이드의 5단계일 뿐, 질병이 아니다 — 넘침은 간 → 근육 → 혈장 → 췌장 → 심장 → 신장으로 고정된 순서로 분배된다. 따라서 혈장 TG만 제거하는 약은 간지방과 HbA1c를 거의 움직이지 못해야 한다. 이것은 가정이 아니라 예측이며 시나리오 15/16이 그 검정이다.
  3. 섬유화만 비가역적이다 — 다른 모든 상태는 구동인자를 제거하면 되돌아온다(시나리오 10). FIB의 회귀 속도는 형성 속도의 1/67이므로, 조기 시작은 회복의 속도가 아니라 천장을 바꾼다.
  4. 어디에도 양성 피드백 이중안정성(bistability)을 주장하지 않는다 — 철회 시나리오를 일부러 포함시켜 그 주장을 확인할 수 있게 했다. 스테아토시스 → 인슐린저항성 → 지방신생 고리는 존재하지만 이득(gain)은 1보다 작다(개발 중 이 고리의 이득을 너무 높게 잡아 간지방 68%가 나왔고, 그래서 계수를 낮췄다).

표현형 = 용량 분포 (a capacity distribution, not a label)

표현형은 범주형 스위치가 아니다. 각 구획의 용량 천장(FC1/FC2/FCV), 확장 여력(PREAD), 분비계수(LEPKM)만 지정하고, 렙틴·간지방·TG·HbA1c는 12년 번인(burn-in)을 돌려 얻은 출력이다. 손으로 초기값을 적어 넣으면 표현형이 "유도"가 아니라 "주장"이 되기 때문이다.

실행 결과 (baseline_table(), 각 표현형을 자신의 정상상태까지 돌린 값):

표현형 지방(kg) 용량(kg) 렙틴 결손 섭취 J_in J_ov HFF% TG 혈당 HbA1c 인슐린 IR ALT FIB
건강 대조 14.38 20.0 11.31 0.118 1895 157 27 4.5 116 99 5.43 10.9 1.41 22 0.00
CGL (AGPAT2/BSCL2) 0.62 0.64 0.64 0.975 2762 121 74 24.2 1060 185 8.73 78.8 8.64 90 3.08
AGL (Lawrence) 1.32 1.45 1.12 0.928 2608 115 68 14.5 850 169 8.10 53.4 6.32 55 2.36
FPLD2 저렙틴 8.62 11.04 5.40 0.354 2087 121 39 5.9 234 119 6.17 22.3 2.80 27 0.00
FPLD2 정상렙틴 10.97 14.54 7.36 0.228 1985 132 33 5.4 174 112 5.93 17.4 2.25 25 0.00
APL (Barraquer-Simons) 9.74 13.35 7.83 0.207 1968 129 33 3.6 139 106 5.67 13.5 1.76 20 0.00
PLIN1 FPLD4 (기저 지방분해↑) 7.08 10.25 4.66 0.424 2143 133 43 7.9 336 128 6.53 28.5 3.52 33 0.08
선천 렙틴 결핍(대조) 28.63 32.0 0.63 0.976 2591 186 50 9.0 153 141 7.04 38.3 4.59 37 0.65
단순 비만(대조) 29.84 36.6 23.94 0.095 2294 215 30 9.7 138 117 6.09 20.5 2.61 39 1.05

두 개의 대조 표현형이 질병 표현형만큼 중요하다.

  • 선천 렙틴 결핍 — 지방량은 많고 신호는 0 → 순수 신호결손 팔
  • 단순 비만 — 지방량은 많고 신호도 높음(전달함수가 위에서 포화 + SOCS3 브레이크) → 순수 용량초과 팔

이 두 대조군이 있기 때문에 "두 결손이 실제로 분리 가능하다"는 주장이 검증 가능해진다. 그리고 같은 포화가 위에서 접근되는 것이 비만에서 렙틴이 듣지 않는 이유다.


7개 반증 검정 (falsification tests) — 실제 실행 결과

# 주장 검정 방식 결과
1 효과 = 점유율 × 결손 동일 mg/kg를 두 표현형에, 그리고 고렙틴 PL에서 증량 확인. 점유율 0.695→0.855로 올라가는데 ΔHbA1c는 −2.40→−0.22
2 렙틴에 섭취-비의존적 성분이 있다 섭취를 미치료 값으로 고정(pair-feeding) 확인, 단 부분적. 간지방 효과의 57%, HbA1c 효과의 **35%**가 생존 (ΔHFF −48.6%, ΔHbA1c −0.83, ΔTG −19%)
3 혈장 TG는 5단계 표지자다 APOC3 ASO로 TG만 제거 확인. TG −80%, 간지방 −0.0% (HFF/TG 비 0.000 vs 메트렐렙틴 1.185)
4 PPARγ는 전지방세포 기질을 요구한다 동일 노출(1290 ng/mL)을 CGL과 FPLD에 확인. 용량 0.64→0.64 vs 11.0→12.1, ΔHbA1c −0.02 vs −0.26
5 J_in을 같은 만큼 깎은 식이는 간지방에서 약을 재현해야 한다 식이 지방분율을 적정(uniroot) 해 J_in을 정확히 일치 확인. J_in 84.8 vs 84.7 → ΔHFF −86% vs −81%, 그러나 ΔHbA1c −2.40 vs −1.53. 차이가 곧 렙틴 신호 (약 팔 S=0.502 vs 식이 팔 S=0.018 — 식이 팔은 지방이 더 줄어 신호를 잃는다)
6 섬유화만 비가역적이므로 시작 시점은 천장을 바꾼다 1년차 시작 vs 10년차 시작, 20년 추적 확인. y20 간지방·HbA1c는 동일(3.4%, 5.84)인데 FIB 1.11 vs 1.89, eGFR 65.9 vs 44.6
7 중화항체는 노출을 유지한 채 효과만 없앤다 NEUT 스위치, 철회 팔과 대조 확인. y9 렙틴 검사값 4.2 (정상 팔 4.0과 구별 불가)인데 유효 유리 렙틴 0.79 vs 4.03, HbA1c 8.13 vs 5.84. 순응도 문제와 똑같이 보인다

췌장염은 평균이 아니라 임계 초과 시간의 문제다

시나리오 시작 후 TG>1000 일수 누적 위험도
CGL 미치료 3647 (전 기간) 4.600
+ 메트렐렙틴 49 0.404
+ 볼라네소르센 11 0.107
+ 둘 다 4 0.008
+ 페노피브레이트/오메가-3 9 0.429

볼라네소르센은 간지방을 하나도 못 움직이면서 이 종점에서는 메트렐렙틴을 이긴다. "어떤 종점을 볼 것인가"가 "어떤 약이 더 좋은가"를 결정한다는 뜻이다.

개체간 변이를 넣으면 층화가 반응률로 나타난다

표현형 n 평균 ΔHbA1c 반응자(ΔHbA1c ≤ −1.0%)
CGL 200 −2.01 81.2%
FPLD2 저렙틴 200 −0.42 11.0%
FPLD2 정상렙틴 200 −0.21 4.0%

개발 중 폐기한 구조 (a structure that was broken and discarded)

첫 초안에서는 렙틴이 간 VLDL 분비를 직접 억제하도록 썼다(문헌에 관찰된 사실이므로). 그 구조는 섭취 고정(pair-fed) 조건에서 간지방이 71% 악화된다고 예측했다. 당연하다 — 기질 전달이 그대로인데 가장 큰 간 처분 경로를 억제하면 풀은 커질 수밖에 없다. 관찰되는 방향은 그 반대이므로, 메트렐렙틴에서 보이는 VLDL 분비 감소는 간 중성지방 풀이 줄어든 결과여야 한다 (기질 구동 VLDL, Adiels). 그래서 직접 억제항을 제거하고 (KLVLDL = 0, 코드에 남겨 두어 검정 가능하게 함) 렙틴의 직접 간 작용을 지방산 산화↑ · SREBP-1c/지방신생↓ 로만 남겼다. 이 수정 후 검정 2가 −71%에서 +57% 생존으로 뒤집혔고, Brown 2018(PMID 29723161)의 인체 데이터와 부합한다. 파라미터를 맞추려고 결과를 고친 것이 아니라, 구조를 고쳤더니 결과가 따라왔다.

같은 이유로 $ODE에는 다음 두 수정 흔적이 주석으로 남아 있다.

  • 재순환되는 NEFA 유속을 완충기 수지의 양쪽에 넣지 않으면 무익회로(futile cycle)가 "무료 저장용량"처럼 보인다 (첫 실행에서 지방구획이 텅 비었던 원인).
  • 저장 유속을 인슐린 민감도로만 게이팅하면 잔여 구획이 비어버린다. 실제로는 지방세포가 4–5배 높은 인슐린 농도를 보므로 작용 = 농도 × 민감도로 써야 하고, 그러면 부분지방이상증의 비대한 지방세포가 재현된다. → 신호가 아니라 용량이 제약이라는 주장이 이 한 줄에서 나온다.
  • $TABLE이 $ODE와 다른 게이팅으로 넘침을 재계산하고 있어서, 보고된 J_ov가 실제 미분방정식을 구동한 값과 달랐다(현재는 두 곳의 저장 유속이 정확히 일치하며, 검증 로그에서 JST == JREL로 확인 가능 — 구획 평형의 내부 정합성 검사).

알려진 보정 미달 (honest calibration gaps)

항목 모델 문헌 비고
FPLD2 간지방분율 5.9% 10–18% (PMID 28199729 등) 과소예측. 부분형에서 간지방을 올리는 항은 내장 지방분해의 문맥 전달(FHVIS)과 피하지방 경쟁항(KFLIVA)뿐이며, 둘을 더 올리면 CGL이 40%를 넘어간다. 단일 미하엘리스 처분 곡선으로 정상 3%·부분형 14%·전신형 28%를 동시에 맞출 수 없다
FPLD2 HbA1c 6.17% 7.5–8.5% 위와 같은 원인(간지방↓ → IR↓). FPLD2의 임상 스펙트럼은 IGT부터 명백한 당뇨까지 넓고, 이 표현형은 중등도 사례에 해당
건강인 간지방분율 4.5% 2–4% 약간 과대
CGL 혈장 TG 1060 mg/dL 500–3000+ 범위 내이나 중앙값보다 높은 편
메트렐렙틴 ΔTG (CGL) −70.8% −40 ~ −60% 다소 강함
메트렐렙틴 ΔHFF (CGL) −86.0% −30 ~ −50% (코호트) / −86% (PMID 12021250) Petersen의 직접 측정치와는 일치, 코호트 평균보다는 강함
ANGPTL3 차단의 간지방 +소폭 상승 임상에서 관찰되지 않음 KEVVLDL은 이 파일에서 가장 제약이 약한 계수이며 0.05로 낮춰 두었다. ANGPTL3 기능소실 인체에서 과다 스테아토시스가 없다는 점과 모델이 아직 완전히 일치하지 않음

(struct) 표시가 붙은 파라미터는 관계의 존재는 문헌에 있으나 계수는 맞춰지지 않은 값이다 (예: 넘침의 췌장 분배 분율, 단백뇨의 인슐린 기울기).


실행 방법

# 모델 + 시나리오
setwd("lipodystrophy-syndromes")
source("lipo_mrgsolve_model.R")

baseline_table()                    # 9개 표현형을 각자의 정상상태까지
summarise_all(run_all())            # 28개 시나리오
inference1_dose_vs_deficit()        # 점유율 × 결손
inference2_pairfed()                # 섭취 고정
inference3_decoupling()             # TG / 간지방 해리
inference4_substrate()              # PPARγ 기질 의존성
inference5_diet_equivalence()       # J_in 일치 식이 (적정)
inference6_window()                 # 치료 창
inference7_ada()                    # 중화항체
pancreatitis_burden()               # 임계 초과 시간
responder_rates(n = 200)            # 개체간 변이 → 반응률

# 대시보드 (12 탭)
shiny::runApp("lipo_shiny_app.R")
# 지도 재렌더링
dot -Tsvg lipo_qsp_model.dot -o lipo_qsp_model.svg
dot -Tpng -Gdpi=150 lipo_qsp_model.dot -o lipo_qsp_model.png

전체 검증 로그(mrgsolve 2.0.1에서 실제 실행): lipo_validation_output.txt


모델 구성

53 ODE 구획 (시간 단위 = 일; 4시간 반감기와 20년 섬유화 궤적이 같은 계에 존재)

  • 약물 PK/PD (23): 메트렐렙틴 3구획 + 중화항체 역가 · 피오글리타존 · 볼라네소르센 3구획 + APOC3 간접반응 · 페노피브레이트 · 에비나쿠맙 + ANGPTL3 · 오메가-3 · 메트포르민 · 외인성 인슐린 · GLP-1 RA · SGLT2i
  • 렙틴 축과 섭취 (4): 내인성 렙틴 · SOCS3 브레이크 · 지연 신호 · 섭취 상태
  • 지방 구획과 용량 (5): 대퇴둔부 · 상부체간/안면 · 내장 · 용량 승수 · 적응 산화
  • 넘침이 채우는 이소성 풀 (5): 간 · 근육 · 췌도 · 심근 · 신장
  • 혈장 지질 (3): TG · NEFA · 아디포넥틴
  • 혈당 축 (5): IR 지연상태 · 혈당 · 인슐린 · 베타세포 · HbA1c
  • 장기 손상 (8): ALT · 간 염증 · 섬유화 · 단백뇨 · eGFR · 안드로겐 지수 · TG 임계 초과 누적시간 · 췌장염 누적위험

28개 시나리오 — 모든 주장에 대응하는 짝지은 대조군이 있다. 7/8/9는 동일 mg/kg와 증량, 13/14는 동일 피오글리타존 노출과 다른 기질, 6/11은 동일 용량과 중화항체, 12/12b는 섭취 고정 쌍, 23a/23b는 시작 시점만 다르다.

192 노드 · 290 엣지 · 22 클러스터의 지도는 클러스터 22에 7개 구조적 추론과 그 반증 방법을 명시해 두었고, 모델 실행 결과에 맞추어 노드 텍스트를 갱신했다(예: 고용량 인슐린 노드는 "간지방 상승"이 아니라 실제 결과인 "HbA1c −1.4%, 간지방·TG 불변"으로 적혀 있다).


참고문헌

lipo_references.md — PMID 121건 전수 검증. 모든 식별자를 NCBI E-utilities로 조회해 PubMed가 반환한 제목·제1저자·저널·연도를 기재했다. 초안 작성 시 기억에 의존해 적은 식별자 8건 중 4건이 전혀 무관한 논문(헤르페스바이러스 dihydrofolate reductase, 연관분석 소프트웨어 등)을 가리켰고, 추측으로 고치지 않고 삭제했다. 주석 2건은 모델과 문헌이 불일치하는 지점을 기록한다.


⚠️ 면책

교육 및 연구 목적의 QSP 모델이다. 공개 문헌을 바탕으로 구성했으나 독립적으로 검증·인증되지 않았으며, 임상 의사결정·처방·규제 제출에 사용해서는 안 된다. 파라미터는 설명을 위한 근사치이며 실제 환자 데이터에 대한 적합·검증이 별도로 필요하다.