Files
2nd/10_Wiki/Topics/Domain_Programming/AI_and_ML/SCM (Supply Chain Management).md
T
Antigravity Agent c24165b8bc refactor(topics): 멀티 에이전트용 지식 재편 — _Common(공통 기본기) + Domain_* 구조
에이전트 8종(대화형/프로그래머 C·S/디자이너/설계자/기획자/QA/PD/PM)에게
[공통 기본 능력 + 롤별 Specialty] 2층으로 지식을 주입하기 위한 재분류.
문서 내용·포맷은 무수정, 폴더 이동만 (6,372개 문서 수 보존 확인).

- Topic_Programming → Domain_Programming (내부 구조 보존)
- Topic_Graphic → Domain_Design
- Topic_Business → Domain_Product
- Topic_General → Domain_General
- _Common 신설: Math(구 Topic_Math_Specialty), Reasoning(구 General/From_Thinking & Reasoning),
  Reasoning_Creativity(구 General/From_창의성), Communication(Poetic_Blog_Writing + From_writing)
- 타 도메인의 From_* 폴더는 유지 (출처 표기일 뿐, 이미 도메인에 맞게 분류된 문서)
- 빈 폴더 정리 (memory/procedures)
- 에이전트→폴더 매핑은 workspace의 .astra/agent-knowledge-map.json (9개 에이전트)

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-11 11:05:56 +09:00

6.3 KiB

id, title, category, status, canonical_id, aliases, duplicate_of, source_trust_level, confidence_score, verification_status, tags, raw_sources, last_reinforced, github_commit, tech_stack
id title category status canonical_id aliases duplicate_of source_trust_level confidence_score verification_status tags raw_sources last_reinforced github_commit tech_stack
wiki-2026-0508-scm-supply-chain-management SCM (Supply Chain Management) 10_Wiki/Topics verified self
Supply Chain Management
Supply Chain
none A 0.9 applied
scm
supply-chain
logistics
optimization
operations-research
2026-05-10 pending
language framework
Python OR-Tools / Pyomo

SCM (Supply Chain Management)

매 한 줄

"매 plan → source → make → deliver → return 의 end-to-end flow 최적화". 매 SCOR 모델 (1996) 의 frame 위에서 매 ERP/APS (SAP IBP, Oracle, o9, Kinaxis) 가 운영. 매 2020 COVID, 2022 우크라이나, 2024 홍해 등 매 black-swan 연쇄 이후 매 resilience + AI-driven autonomous SCM 이 핵심 의제 (Gartner: 50%+ 기업 by 2026).

매 핵심

매 SCOR 5단계

  • Plan: demand forecast, S&OP, inventory policy.
  • Source: supplier selection, procurement, contracts.
  • Make: production scheduling, MRP, capacity.
  • Deliver: warehousing, transportation, last-mile.
  • Return: reverse logistics, refurb, recycling.

매 KPI

  • OTIF (On-Time-In-Full): delivery reliability.
  • Cash-to-Cash cycle: working capital efficiency.
  • Forecast accuracy (MAPE/WAPE).
  • Perfect Order Rate: error-free fulfillment.
  • Inventory turnover = COGS / avg inventory.

매 응용

  1. Demand forecasting (TFT, N-BEATS, Chronos foundation model).
  2. VRP / route optimization (last-mile, mid-mile).
  3. Supplier risk monitoring (Resilinc, Everstream).
  4. Inventory optimization (multi-echelon, newsvendor).
  5. Digital twin of supply network.

💻 패턴

Demand forecast (Chronos foundation model, 2026)

from chronos import ChronosPipeline
import torch, pandas as pd

pipeline = ChronosPipeline.from_pretrained(
    "amazon/chronos-bolt-base", torch_dtype=torch.bfloat16
)
history = pd.read_csv("sales.csv")["units"].values
forecast = pipeline.predict(
    context=torch.tensor(history),
    prediction_length=28,  # 28-day horizon
    num_samples=100,
)  # quantile-aware probabilistic

Multi-echelon inventory (newsvendor + safety stock)

from scipy.stats import norm
import numpy as np

def reorder_point(mu_d, sigma_d, lead_time, service_level=0.95):
    z = norm.ppf(service_level)
    mean_lt_demand = mu_d * lead_time
    sigma_lt = sigma_d * np.sqrt(lead_time)
    safety_stock = z * sigma_lt
    return mean_lt_demand + safety_stock, safety_stock

rop, ss = reorder_point(mu_d=120, sigma_d=30, lead_time=7)

VRP (OR-Tools)

from ortools.constraint_solver import pywrapcp, routing_enums_pb2

def solve_vrp(distance_matrix, demands, vehicle_capacities, depot=0):
    mgr = pywrapcp.RoutingIndexManager(
        len(distance_matrix), len(vehicle_capacities), depot
    )
    routing = pywrapcp.RoutingModel(mgr)

    def dist_cb(i, j):
        return distance_matrix[mgr.IndexToNode(i)][mgr.IndexToNode(j)]
    routing.SetArcCostEvaluatorOfAllVehicles(
        routing.RegisterTransitCallback(dist_cb)
    )

    def demand_cb(i):
        return demands[mgr.IndexToNode(i)]
    routing.AddDimensionWithVehicleCapacity(
        routing.RegisterUnaryTransitCallback(demand_cb),
        0, vehicle_capacities, True, "Capacity"
    )
    params = pywrapcp.DefaultRoutingSearchParameters()
    params.first_solution_strategy = (
        routing_enums_pb2.FirstSolutionStrategy.PATH_CHEAPEST_ARC
    )
    return routing.SolveWithParameters(params)

Supplier risk score (LLM + structured)

import anthropic, json

client = anthropic.Anthropic()
news = fetch_news(supplier="Foxconn Zhengzhou", days=7)

resp = client.messages.create(
    model="claude-opus-4-7",
    max_tokens=512,
    messages=[{"role": "user", "content": f"""
Score supplier risk 0-100 based on news. Output JSON.
News: {news}
Schema: {{"score": int, "drivers": [str], "recommended_action": str}}
"""}],
)
risk = json.loads(resp.content[0].text)

Bullwhip effect simulation

# Beer game style — order amplification upstream
def bullwhip(retail_demand, smoothing=0.3, levels=4):
    orders = [retail_demand]
    for _ in range(levels):
        prev = orders[-1]
        next_orders = [prev[0]]
        for d in prev[1:]:
            next_orders.append(
                smoothing * d + (1 - smoothing) * next_orders[-1] + 0.5 * (d - next_orders[-1])
            )
        orders.append(next_orders)
    return orders  # variance grows upstream

Digital twin (NetworkX flow)

import networkx as nx

G = nx.DiGraph()
G.add_edge("Supplier_TW", "Port_Kaohsiung", capacity=500, cost=10)
G.add_edge("Port_Kaohsiung", "Port_LA", capacity=400, cost=80, lead=14)
G.add_edge("Port_LA", "DC_Dallas", capacity=350, cost=20)
flow_cost, flow_dict = nx.network_simplex(G, demand={"DC_Dallas": 300, "Supplier_TW": -300})

매 결정 기준

상황 Approach
New SKU, no history Foundation model (Chronos, TimeGPT) zero-shot
Mature SKU, seasonal TFT / Prophet + holiday regressors
Sub-day routing OR-Tools VRP / Hexaly
Supplier disruption Multi-source + safety stock + risk score
Network redesign MILP (Pyomo + Gurobi)

기본값: Chronos-bolt forecasting + multi-echelon safety stock + OR-Tools VRP.

🔗 Graph

🤖 LLM 활용

언제: supplier risk synthesis from news, RFP analysis, procurement copilot, demand sensing from external signals (weather, social). 언제 X: numerical optimization (VRP, MILP) — use OR solvers, not LLM.

안티패턴

  • Spreadsheet hell: critical S&OP in Excel without version control.
  • Single forecast number: ignore quantiles → systematic stockouts or overstocks.
  • Bullwhip ignored: each tier optimizes locally, variance amplifies upstream.
  • Supplier concentration: 80% volume from one country/factory.

🧪 검증 / 중복

  • Verified (APICS SCOR, Gartner Magic Quadrant 2025, MIT CTL research).
  • 신뢰도 A.

🕓 Changelog

날짜 변경
2026-05-08 Phase 1
2026-05-10 Manual cleanup — SCM SCOR, forecasting, VRP, risk patterns