---
id: wiki-2026-0508-neuropharmacology-of-substance-use
title: Neuropharmacology of Substance Use Disorders
category: 10_Wiki/Topics
status: verified
canonical_id: self
aliases: [SUD Pharmacology, Addiction Pharmacology, Substance Use Disorder Treatment]
duplicate_of: none
source_trust_level: A
confidence_score: 0.9
verification_status: applied
tags: [neuropharmacology, addiction, dopamine, naltrexone, methadone, ai-drug-discovery]
raw_sources: []
last_reinforced: 2026-05-10
github_commit: pending
tech_stack: { language: python, framework: rdkit-pytorch }
---

# Neuropharmacology of Substance Use Disorders

## 매 한 줄
- 약물중독은 mesolimbic dopamine 회로(VTA→NAc) hijacking이 핵심이며, 치료는 대체(MAT)·길항(naltrexone)·혐오·인지행동을 조합하고 AI는 신약 후보 탐색을 가속한다.

## 매 핵심
- **공통 회로**: VTA dopamine → nucleus accumbens (보상), prefrontal cortex (충동조절), amygdala (cue craving).
- **물질별 메커니즘**:
  - 알코올 → GABA-A↑, NMDA↓; 치료 disulfiram(ALDH↓), naltrexone(μ-opioid 길항), acamprosate(NMDA modulator).
  - 오피오이드 → μ 수용체; 치료 methadone(full agonist), buprenorphine(partial agonist + naloxone), naltrexone XR.
  - 니코틴 → α4β2 nAChR; 치료 varenicline(partial agonist), bupropion(DAT/NET 억제), NRT.
  - 코카인/암페타민 → DAT 차단/역수송; FDA 승인 약물 부재(modafinil, topiramate, contingency mgmt).
  - 대마(THC) → CB1; 승인 약물 없음, CBT 중심.
- **AI 신약 발굴**: GNN/transformer로 G-protein-biased μ agonist(저호흡억제) 탐색, AlphaFold2/3로 GPCR 구조 → docking.
- **임상 척도**: DSM-5 SUD severity (≥6 = severe), AUDIT, ASSIST.

## 💻 패턴
```python
# Dopamine reward prediction error (RPE) — TD learning toy
import numpy as np
def td_update(V, r, V_next, alpha=0.1, gamma=0.95):
    rpe = r + gamma * V_next - V
    return V + alpha * rpe, rpe
```

```python
# RDKit: filter μ-opioid candidates by Lipinski + logP
from rdkit import Chem
from rdkit.Chem import Descriptors

def lipinski(smiles):
    m = Chem.MolFromSmiles(smiles)
    if m is None:
        return False
    return (Descriptors.MolWt(m) < 500
            and Descriptors.MolLogP(m) < 5
            and Descriptors.NumHDonors(m) <= 5
            and Descriptors.NumHAcceptors(m) <= 10)
```

```python
# Buprenorphine partial agonist effect (Hill equation)
def receptor_response(L, EC50=2.0, Emax=0.6, n=1):
    return Emax * L**n / (EC50**n + L**n)
```

```python
# Methadone PK: 1-compartment with long t1/2
import numpy as np
def methadone_conc(dose_mg, t_hr, ka=0.5, ke=0.029, vd=4.0):
    return (dose_mg * ka) / (vd * (ka - ke)) * (np.exp(-ke * t_hr) - np.exp(-ka * t_hr))
```

```python
# Naltrexone XR adherence model (28-day depot)
def naltrexone_active(day, last_inj_day=0, half_life_d=5.0):
    import math
    elapsed = day - last_inj_day
    return math.exp(-elapsed * math.log(2) / half_life_d) if 0 <= elapsed <= 28 else 0
```

```python
# GNN scaffold for ligand binding prediction (PyTorch Geometric sketch)
import torch
import torch.nn as nn
from torch_geometric.nn import GCNConv, global_add_pool

class LigandGNN(nn.Module):
    def __init__(self, in_dim=78, hidden=128):
        super().__init__()
        self.c1 = GCNConv(in_dim, hidden)
        self.c2 = GCNConv(hidden, hidden)
        self.head = nn.Linear(hidden, 1)  # pIC50

    def forward(self, x, edge_index, batch):
        x = torch.relu(self.c1(x, edge_index))
        x = torch.relu(self.c2(x, edge_index))
        return self.head(global_add_pool(x, batch))
```

```python
# AUDIT-C scoring (alcohol screening)
def audit_c(q1_freq, q2_amount, q3_binge):
    score = q1_freq + q2_amount + q3_binge
    return score, score >= 4  # men ≥ 4, women ≥ 3
```

```python
# Contingency management: voucher schedule with escalation + reset
def voucher(neg_uds_streak):
    base = 2.5
    return base * neg_uds_streak  # capped + reset on positive UDS
```

## 매 결정 기준
- **OUD**: methadone(가장 강한 evidence) > buprenorphine(외래 선호) > naltrexone XR(detox 후, motivation 높음).
- **AUD**: naltrexone(craving 중심) vs acamprosate(abstinence 유지). 간기능 고려.
- **흡연**: varenicline > combination NRT > bupropion. 정신과 동반질환 시 주의.
- **자극제(코카인/메스암페타민)**: 약물 1차 증거 부족 → CM + CBT 우선.
- **AI 신약**: in silico hits → in vitro binding → animal → IND. 단일 모델 prediction을 임상 결정에 사용 금지.

## 🔗 Graph
- 관련: [[Neuroplasticity]], [[Neurodevelopmental-Disorders]], [[Neurorehabilitation-Post-Stroke]], [[Drug-Discovery-AI]], [[GPCR-Modeling]]
- 도구: [[RDKit]], [[AlphaFold-3]], [[PyTorch-Geometric]]

## 🤖 LLM 활용
- 환자 약물력 정리(다제 병용 위험 식별).
- 임상시험 protocol literature review.
- 의사 처방 결정 대체 금지.

## ❌ 안티패턴
- methadone/buprenorphine을 "한 약물을 다른 약물로 바꾸는 것"이라며 stigma.
- 단일 GNN 점수로 candidate 우선순위 단정.
- naltrexone 사용자에게 opioid analgesic 응급 처치 누락(precipitated withdrawal 위험 vs 수술 통증).

## 🧪 검증
- 임상: UDS(소변검사) 음성률, 자가보고 사용량, retention rate.
- AI: docking ΔG, in vitro IC50과의 상관(R² ≥ 0.5 reasonable for early screen).

## 🕓 Changelog
- 2026-05-08 Phase 1: 초안 자동 생성.
- 2026-05-10 Manual cleanup: 본문 보강, MAT 표준 정리, AlphaFold-3/GNN 코드 추가.
