HomeOrgan Donation & Allocation LogisticsLiving Donor Kidney Paired Exchange Matching

🫀 Living Donor Kidney Paired Exchange Matching

This simulation demonstrates the process of kidney paired donation (KPD) between living donors to overcome compatibility issues.

Organ Donation & Allocation Logistics2DModerate60 FPS
kidney-paired-exchange-matching ↗ Open standalone

Несумісна пара донор-реципієнт — глухий кут прямої трансплантації

Понад третина потенційних живих донорів нирки виявляються медично несумісними зі своїм близьким — членом родини чи другом, якому вони хотіли б допомогти. Обмінна донація нирки (Kidney Paired Donation, KPD) перетворює цю особисту трагедію на системне рішення: замість того щоб чекати на донора з листа очікування, пара "обмінюється" через реєстр з іншими такими ж парами.

  • ~35%: Несумісні пари серед охочих (за групою крові або HLA)
  • 1986: Перша задокументована KPD (Республіка Корея)
  • >10 000: США: пар у національних реєстрах (з моменту заснування програм)
  • ~90%: Виживання трансплантата за 5 р. (живий донор vs ~70% трупний)

Чому сумісний за бажанням донор виявляється медично несумісним

Готовність віддати нирку — необхідна, але не достатня умова. Трансплантаційна команда перевіряє кілька незалежних бар'єрів:

• Несумісність за групою крові (ABO): якщо донор має групу A, а реципієнт — O, у реципієнта є природні антитіла проти антигену A. Пересаджена нирка буде миттєво атакована — гіпергостре відторгнення протягом хвилин-годин.

• Позитивний перехресний тест (crossmatch): якщо реципієнт вже має попередньо сформовані антитіла проти HLA-антигенів донора (через попередню вагітність, переливання крові чи попередню трансплантацію), змішування сироватки реципієнта з лімфоцитами донора викликає видиму реакцію цитотоксичності — сигнал, що трансплантація призведе до негайного відторгнення.

• Високий рівень PRA (Panel Reactive Antibody): деякі реципієнти "сенсибілізовані" — їхня імунна система реагує на велику частку населення. Для них знайти будь-якого сумісного донора вкрай складно навіть у великому пулі.

• Анатомічні або медичні протипоказання донора не пов'язані з реципієнтом (наприклад, аномалії судин), які не забороняють донорство взагалі, але роблять конкретну пару незручною для прямої операції.

Раніше єдиним виходом для такої пари було або десензибілізаційне лікування (дороге, ризиковане, не завжди ефективне), або відмова від живого донора на користь листа очікування трупних органів — де час очікування вимірюється роками.

Ключова ідея обмінної донації: несумісність — це властивість конкретної ПАРИ, а не окремої людини. Донор пари A цілком може бути ідеально сумісним із реципієнтом пари B. Проблема не в людях, а в неправильному "сполученні".

Реєстровий пул — коли десятки несумісних пар стають ресурсом

Замість розгляду однієї пари ізольовано, національні та регіональні реєстри (National Kidney Registry, UNOS Kidney Paired Donation Pilot Program, NHS Living Kidney Sharing Scheme) об'єднують сотні активних несумісних пар одночасно. Кожна пара стає вузлом у величезному графі можливостей — і що більший пул, то вища ймовірність знайти ланцюжок сумісностей.

  • >15 000: National Kidney Registry (США) (трансплантацій з 2008 р.)
  • 100–800: Пар одночасно в активному пулі (залежно від реєстру та сезону)
  • ~45%: Частота "циклічних" збігів (2-way) (від усіх знайдених матчів)
  • >10^60: Комбінацій пар у пулі з 50 пар (теоретичний простір пошуку)

Архітектура реєстрового пулу як графа сумісності

Кожна несумісна пара (донор Dᵢ, реципієнт Rᵢ) вноситься в реєстр разом із повним імунологічним профілем: група крові ABO, HLA-типування (локуси A, B, C, DR, DQ), рівень PRA, віртуальний crossmatch (обчислюваний за допомогою бази даних невидимих антигенів).

Реєстр будує орієнтований граф сумісності: • Вузол = кожен донор і кожен реципієнт • Ребро Dᵢ → Rⱼ додається, якщо донор пари i медично сумісний із реципієнтом пари j (за групою крові ТА віртуальним crossmatch) • Власне ребро Dᵢ → Rᵢ відсутнє за визначенням (це і є вихідна несумісність)

Мета алгоритму — знайти набір ребер, що утворюють замкнені цикли (кожен донор у циклі віддає нирку наступному реципієнту в тому ж циклі), максимізуючи загальну кількість трансплантацій.

Чим більший пул, тим щільніший граф і тим більше шансів, що для "важкої" сенсибілізованої пари знайдеться відповідний партнер десь у мережі. Це чиста мережева економіка: цінність участі в пулі зростає нелінійно з розміром пулу.

Хто адмініструє пули обмінної донації

• National Kidney Registry (NKR, США) — найбільша приватна мережа, понад 100 трансплантаційних центрів-учасників, використовує власний оптимізаційний алгоритм щотижня. • UNOS Kidney Paired Donation Pilot Program — національна програма при об'єднаній мережі розподілу органів США. • NHS Blood and Transplant Living Kidney Sharing Scheme (Велика Британія) — квартальні цикли зіставлення по всій країні. • Швейцарія, Нідерланди (Dutch KPD programme, з 2004 р. — найдовше діюча в Європі), Австралія (Australian Paired Kidney Exchange) — національні реєстри з регулярними циклами.

Частина реєстрів об'єднує зусилля міжнародно: "global kidney exchange" з'єднує пари з різних країн, коли фінансовий бар'єр (а не медична несумісність) заважає трансплантації в країні походження.

Алгоритм графового зіставлення — пошук 2-way обмінів і багатосторонніх циклів

Серце системи — комбінаторний оптимізаційний алгоритм, що працює на графі сумісності всього пулу. Задача еквівалентна пошуку максимальної ваги в задачі "packing" неперетинних циклів обмеженої довжини в орієнтованому графі — NP-важка задача, яку розв'язують за допомогою цілочисельного лінійного програмування (ILP) або спеціалізованих евристик. Змінюйте розмір пулу та дозволену довжину ланцюга, щоб побачити, як зростає кількість знайдених трансплантацій.

  • 2-way: Найпоширеніший тип обміну (~45% усіх KPD трансплантацій у США)
  • >30-way: Рекордний зафіксований цикл (NKR, багатоденний ланцюг 2015 р.)
  • ILP: Метод оптимізації (ціле-числове лінійне програмування)
  • +25–35%: Типовий приріст матчів 2→4-way (при тому ж розмірі пулу)

Від 2-way обміну до багатостороннього циклу

Найпростіший випадок — 2-way обмін: донор пари A підходить реципієнту пари B, а донор пари B підходить реципієнту пари A. Дві операції нефректомії й дві трансплантації відбуваються одночасно (докладніше — етап 5).

Але обмеження лише двома парами різко звужує простір рішень. Дозволивши цикли з 3, 4 чи навіть 10 пар (multi-way exchange), алгоритм може "розплутати" набагато складніші конфігурації сумісності — особливо для важко сумісних (highly sensitized) пацієнтів, чий єдиний шлях до трансплантації може пролягати через ланцюг із 6–8 проміжних пар.

Компроміс: довші цикли складніші логістично (більше операційних одночасно, більше лікарень-учасників, більше можливостей для зриву, якщо один донор передумає) — тому реєстри зазвичай обмежують максимальну довжину циклу (параметр "max chain length"), балансуючи між математичною оптимальністю та операційною здійсненністю.

Алгоритм щоразу перераховує оптимальне розв'язання під час чергового "циклу зіставлення" (matching run) — щотижня або навіть щодня, — оскільки пул постійно змінюється: нові пари приєднуються, деякі знаходять матч і вибувають, дані оновлюються.

Математична постановка задачі

Формально: дано орієнтований граф G=(V,E), де кожен донор-реципієнтський вузол пари i має ребра до сумісних реципієнтів інших пар. Потрібно знайти набір вершинно-неперетинних циклів довжиною від 2 до L (максимальна дозволена довжина), що максимізує:

• Загальну кількість трансплантацій (найпростіша ціль) • Або зважену суму з пріоритетом для складних пар (сенсибілізовані пацієнти, педіатричні реципієнти, пари, що довго чекають)

Стандартний підхід — цілочисельне лінійне програмування (ILP) із бінарними змінними для кожного можливого циклу довжиною ≤L, розв'язане за допомогою branch-and-cut солверів (CPLEX, Gurobi). Для L=2 задача зводиться до максимального паросполучення в загальному графі (розв'язується за поліноміальний час алгоритмом Едмондса). Але вже для L≥3 задача NP-важка — кількість можливих циклів зростає комбінаторно з розміром пулу, тому практичні системи використовують обмеження часу розв'язання та евристичне відсікання гілок.

Ланцюги від невизначеного донора (NDD) — доміно-ефект одного альтруїзму

Non-Directed Donor (NDD), або альтруїстичний "good Samaritan" донор — людина, що жертвує нирку без конкретного призначеного реципієнта. NDD не потребує "повернення" нирки собі — тому він може ініціювати відкритий ланцюг (chain), а не замкнений цикл: він віддає донору з першої пари, чий реципієнт отримує нирку, а донор ЦІЄЇ пари "передає далі" наступній парі — і так по ланцюгу, іноді десятки трансплантацій поспіль.

  • 128 нирок: Найдовший задокументований ланцюг (NKR, ланцюг тривав 3+ роки)
  • ~5–8: Трансплантацій на 1 NDD (в середньому) (через ланцюгову реакцію)
  • ~250–300: NDD у пулах США щорічно (ініціюють нові ланцюги)
  • 2007: Перший опублікований "chain" (Mayo Clinic / Johns Hopkins)

Механіка доміно-ланцюга і "міст-донори"

Ланцюг починається з NDD, який жертвує нирку реципієнту пари 1. Донор пари 1 (тепер "вільний" — його близький вже отримав нирку) стає наступною ланкою: він жертвує нирку реципієнту пари 2. Донор пари 2 продовжує до пари 3 — і так далі.

Ключова відмінність від замкненого циклу: ланцюг не обов'язково закривається одразу. Останній донор у ланцюзі часто стає "мостовим донором" (bridge donor) — він чекає, доки в пулі з'явиться підходящий реципієнт, і завершує свою частину пізніше, іноді через місяці. Це дозволяє ланцюгу тривати роками, каскадно активуючи нові пари в міру їх надходження в реєстр.

Чому ланцюги настільки ефективні: на відміну від циклу фіксованої довжини L, відкритий ланцюг не обмежений одночасністю всіх операцій — кожен крок можна виконувати послідовно з часовим інтервалом, що знімає значну частину логістичного навантаження (хоча кожен окремий крок класично виконують одночасно для пари донор-реципієнт, про що етап 5).

У 2012 році ланцюг, ініційований одним альтруїстичним донором у мережі National Kidney Registry, зрештою з'єднав 30 пар і призвів до 60 трансплантацій за кілька місяців — станом на сьогодні подібні "супер-ланцюги" перевищили позначку у понад 100 послідовних трансплантацій від єдиного початкового акту альтруїзму.

Соціальна й економічна цінність ланцюгів

Один NDD у циклічній системі дає щонайбільше одну додаткову трансплантацію (замінюючи відсутню ланку 2-way обміну). Той самий NDD у ланцюговій системі в середньому дає 5-8 трансплантацій — тому сучасні реєстри активно розробляють інфраструктуру саме для довгих відкритих ланцюгів, а не лише замкнених циклів.

Економічний ефект значний: кожна трансплантація від живого донора замінює в середньому 5-10 років діалізу (~90 000 $ на пацієнта щорічно в США), тому довгий ланцюг на 20+ трансплантацій економічно еквівалентний сотням пацієнто-років заощадженого діалізу — не кажучи про якість життя й виживаність пацієнтів.

Синхронізація одночасних операцій — логістика, що тримає всю систему разом

Знайти математично оптимальний обмін — це лише половина роботи. Кожна ланка циклу (і, як правило, кожен окремий крок ланцюга) вимагає одночасного виконання нефректомії донора та трансплантації реципієнту в іншому місці — часто в іншій лікарні, іншому місті чи навіть країні — щоб жоден учасник не міг відмовитися вже після того, як "його" пара отримала нирку, залишивши партнера по обміну ні з чим.

  • 8: Операційних одночасно (4-way обмін) (4 нефректомії + 4 трансплантації)
  • <8 год: Транспортування нирки між центрами (холодова ішемія, часто авіа)
  • 2–3 год: Типова тривалість нефректомії (лапароскопічно)
  • >20 фахівців: Координаційна команда на обмін (хірурги, координатори, логісти)

Чому одночасність — це залізне правило

Основний ризик будь-якого обміну — недотримання зобов'язань (reneging): донор погоджується віддати нирку в обмін на те, що його близький отримає іншу нирку. Але що, якщо реципієнт УЖЕ отримав нирку від чужого донора, а потім "їхній" донор передумав чи не пройшов останній медичний огляд?

Щоб унеможливити цей сценарій, стандартна практика (обов'язкова в більшості національних програм) — виконувати ВСІ нефректомії циклу практично одночасно, зазвичай з різницею в кілька годин, а найчастіше — паралельно в один день у різних операційних. Реципієнт отримує нирку лише після того, як донор його близького вже незворотно віддав свою (операція вже почалася чи завершена) — це усуває стимул і можливість для односторонньої відмови в останню мить.

Для циклів, що охоплюють кілька лікарень, це означає військову синхронізацію: команди анестезіологів, хірургів-трансплантологів, операційних сестер та кур'єрів з переносними холодильниками для нирок координують час "початку розрізу" з точністю до хвилин через спільний координаційний центр реєстру.

Логістика транспортування нирки та часове вікно

Коли донор і реципієнт перебувають у різних лікарнях (типово для національних пулів), вилучену нирку транспортують — часто комерційними або чартерними авіарейсами — у стерильному холодовому контейнері (0-4°C, розчин UW або HTK).

Критичне вікно — час холодової ішемії (від моменту вилучення до відновлення кровопостачання в реципієнті): для нирки прийнятним вважається до ~24-36 годин, але результати помітно кращі при <8-12 годин. Це накладає жорсткі часові рамки на весь ланцюг логістики: час операції, час доставки в аеропорт, час польоту, час доставки до операційної реципієнта.

Координаційний центр реєстру (наприклад, NKR Logistics Team) керує розкладом як диспетчерська: призначає точний час початку кожної операції в кожній лікарні-учасниці, бронює кур'єрські рейси нирок, і має протоколи на випадок відхилень (затримка рейсу, медичне ускладнення) — включно з резервними варіантами перепризначення частини ланцюга.

Кожен цикл чи крок ланцюга обмінної донації — це, по суті, мультилокаційна хірургічна операція, синхронізована між незалежними лікарнями, що не мають спільного адміністративного підпорядкування. Це один з небагатьох прикладів у медицині, де успіх операції залежить не лише від хірургічної майстерності, а й від точності логістичного оркестрування у реальному часі.
⚙ Under the hood

This simulation demonstrates the process of kidney paired donation (KPD) between living donors to overcome compatibility issues.

CanvasBiomedicine

2D · HTML5 Canvas 2D · 60 FPS target · runs fully client-side, no install

What did you find?

Add reproduction steps (optional)