The paper addresses the problem of automatic selection of an optimal payment provider in a payment aggregation system. The problem is formalized as a Multi-Armed Bandit problem. An adaptive routing method based on the Thompson Sampling algorithm with a multi-criteria scoring function is proposed, taking into account the probability of successful transaction processing, latency, and processing cost. The architecture of a microservice platform implementing the proposed method is described. It is shown that the application of the Thompson Sampling algorithm provides an automatic balance between exploitation of the provider with the best performance and exploration of alternative providers to update statistics. An experimental simulation evaluation confirms the superiority of the proposed approach over alternative routing methods in terms of transaction success and accumulated regret.
Keywords: payment gateway, transaction routing, multi-armed bandit, Thompson Sampling, microservice architecture, adaptive routing, payment aggregator.
Введение
Компании электронной коммерции вынуждены поддерживать интеграции с множественными платёжными провайдерами для обеспечения приемлемого уровня конверсии платежей и географического охвата аудитории [1]. Эволюция архитектур платёжных шлюзов рассмотрена в [5]. При использовании нескольких провайдеров возникает задача маршрутизации: для каждой входящей транзакции необходимо выбрать провайдера, который с наибольшей вероятностью успешно её обработает при минимальных затратах и задержке.
Статическая маршрутизация на основе фиксированных правил (например, распределение по типу карты или географическому признаку) не учитывает динамическое изменение характеристик провайдеров: показатель успешности (success rate), время отклика и доступность провайдера могут существенно варьироваться во времени [2]. Ручная корректировка правил маршрутизации требует постоянного мониторинга и не обеспечивает оперативного реагирования на деградацию провайдера.
В настоящей работе задача выбора оптимального провайдера формализована как задача многорукого бандита (Multi-Armed Bandit, MAB) [3] и предложен метод адаптивной маршрутизации на основе алгоритма Thompson Sampling с мультикритериальной функцией оценки.
1. Формализация задачи
Пусть имеется множество платёжных провайдеров P = {p₁, p₂,..., pₖ} . На каждом временном шаге t система получает транзакцию и должна выбрать провайдера pᵢ ∈ P для её обработки. После обработки наблюдается результат: успех ( r = 1 ) или неудача ( r = 0 ).
Задача состоит в максимизации суммарного числа успешных транзакций за период T :
|
|
(1) |
где r_t ∈ {0, 1} — результат транзакции на шаге t (1 — успех, 0 — неудача).
Данная постановка соответствует классической задаче многорукого бандита [3], где каждый провайдер аналогичен «руке» автомата с неизвестной вероятностью выигрыша. Ключевой проблемой является дилемма «исследование — эксплуатация»: необходимо балансировать между выбором провайдера с наилучшей текущей статистикой (эксплуатация) и проверкой альтернативных провайдеров для актуализации информации об их характеристиках (исследование).
В отличие от классической постановки, в задаче маршрутизации платежей вероятности успеха провайдеров не являются стационарными: они могут изменяться вследствие технических сбоев, изменения правил антифрод-систем провайдера или перегрузки. Это требует применения алгоритма, способного адаптироваться к изменяющимся условиям.
Платёжные провайдеры различаются по паттерну доставки результата транзакции. Провайдеры первого класса возвращают окончательный статус синхронно в HTTP-ответе — это характерно для большинства карточных эквайеров. Провайдеры второго класса подтверждают приём запроса немедленно, а окончательный статус доставляют асинхронно через механизм webhook.
Предложенный алгоритм в базовой конфигурации ориентирован на провайдеров первого класса, для которых выполняется допущение о немедленной обратной связи. Для провайдеров второго класса задержка между принятием решения и получением r нарушает данное допущение: за период ожидания webhook алгоритм продолжает маршрутизацию без учёта актуального статуса провайдера. Частичной компенсацией служит механизм Circuit Breaker, который реагирует на накопленные ошибки таймаутов. Полноценная обработка отложенной обратной связи рассматривается как направление дальнейших исследований.
Характеристики транзакции (валюта, тип платёжного метода) учитываются на этапе жёсткой фильтрации множества кандидатов, что позволяет применить базовую MAB-постановку без усложнения до контекстуального бандита при сохранении практической применимости метода.
2. Алгоритм Thompson Sampling
Алгоритм Thompson Sampling [4] — байесовский подход к решению задачи многорукого бандита. Для каждого провайдера pᵢ поддерживается модель вероятности успеха в виде бета-распределения:
|
|
(2) |
где
Процедура выбора провайдера на шаге t :
- Для каждого провайдера pᵢ сгенерировать случайный сэмпл θᵢ из распределения Beta(aᵢ, bᵢ) .
- Для каждого провайдера вычислить score(p_i) по формуле (7), используя сэмпл θᵢ. Выбрать провайдера с максимальным score.
- Направить транзакцию выбранному провайдеру, наблюдать результат.
- Обновить параметры выбранного провайдера с учетом результата и коэффициента затухания γ.
Математическое ожидание бета-распределения:
|
|
(3) |
представляет собой оценку вероятности успеха, взвешенную по времени. Дисперсия характеризует неопределенность оценки и убывает с ростом числа наблюдений:
|
|
(4) |
Таким образом, провайдер с малым числом обработанных транзакций имеет широкое распределение, и его сэмпл может оказаться выше, чем у провайдера с лучшей, но точно известной статистикой. Это обеспечивает естественный механизм исследования без явного параметра (в отличие от алгоритма ε-greedy).
После каждой транзакции исторические параметры обновляются с учетом результата
|
|
(5) |
|
|
(6) |
где
Применение ограничения max(1, …) гарантирует, что параметры не опускаются ниже априорных значений (1, 1), сохраняя математическую корректность бета-распределения. Данный подход (Discounted TS) обеспечивает вычислительную сложность O(1) по времени и памяти, избавляя от необходимости хранить массивы исторических транзакций, что критически важно для обеспечения высокой пропускной способности микросервиса маршрутизации.
3. Мультикритериальная функция оценки
Вероятность успеха является основным, но не единственным критерием выбора провайдера. Мерчант заинтересован также в минимизации стоимости обработки (комиссия провайдера) и времени отклика (латентность). Предлагается мультикритериальная функция оценки:
|
|
(7) |
где:
— θᵢ — сэмпл из Beta(aᵢ, bᵢ) (стохастическая оценка вероятности успеха);
— Lp95,i — 95-й процентиль латентности провайдера pᵢ (p95) за наблюдаемый период; поскольку в микросервисных архитектурах сетевые задержки имеют распределение с «тяжёлыми хвостами», использование среднего арифметического неэффективно — p95 обеспечивает объективную оценку производительности провайдера для подавляющего большинства транзакций;
— LSLA — максимально допустимая задержка по бизнес-требованиям (SLA);
— Cᵢ — стоимость обработки транзакции провайдером pᵢ ;
— Cconfig — максимально допустимая комиссия, установленная мерчантом;
— w₁, w₂, w₃ — весовые коэффициенты, w₁ + w₂ + w₃ = 1 .
Следует отметить, что добавление детерминированных компонентов в scoring-функцию представляет собой отклонение от классической постановки Thompson Sampling, для которой доказаны теоретические гарантии сожаления. Предложенный метод является эвристическим расширением, сохраняющим стохастический механизм исследования через компонент θᵢ. Анализ теоретических гарантий для мультикритериального случая выходит за рамки настоящей работы.
В зависимости от бизнес-приоритетов мерчанта предлагаются следующие конфигурации весовых коэффициентов (таблица 1).
Таблица 1
Бизнес-профили весовых коэффициентов
|
Профиль |
Описание |
w₁ |
w₂ |
w₃ |
|
Conversion-first |
Приоритет успешности |
0.70 |
0.20 |
0.10 |
|
Balanced (по умолчанию) |
Сбалансированный |
0.60 |
0.25 |
0.15 |
|
Cost-sensitive |
Приоритет стоимости |
0.50 |
0.15 |
0.35 |
Стохастический компонент θᵢ (сэмпл из бета-распределения) обеспечивает механизм исследования, тогда как латентность и стоимость являются детерминированными наблюдаемыми величинами, не требующими вероятностного моделирования.
Перед вычислением scoring-функции выполняется фильтрация: из множества P исключаются провайдеры, не удовлетворяющие обязательным ограничениям:
— провайдер не поддерживает валюту транзакции;
— провайдер не поддерживает тип платёжного метода;
— Circuit Breaker провайдера находится в состоянии Open (провайдер недоступен).
4. Архитектура решения
Предложенный алгоритм реализуется в составе микросервисной платформы агрегации платёжных провайдеров. Архитектура системы включает четыре микросервиса:
— API Gateway — единая точка входа, аутентификация и ограничение частоты запросов;
— Transaction Service — управление жизненным циклом транзакций, обеспечение идемпотентности;
— Provider Service — взаимодействие с провайдерами, модуль маршрутизации (Thompson Sampling), механизм Circuit Breaker;
— Risk Service — оценка рисков на основе конфигурируемого движка правил.
Взаимодействие между сервисами осуществляется асинхронно через брокер сообщений NATS JetStream в соответствии с паттерном Saga (Choreography) [2].
Модуль маршрутизации расположен в Provider Service, что обеспечивает доступ к актуальной статистике взаимодействия с каждым провайдером. Параметры бета-распределения (ai, bi) хранятся в Redis. Для оценки латентности используется потоковый алгоритм аппроксимации процентилей t-digest, который позволяет вычислять Lp95 с высокой точностью при фиксированном и малом потреблении памяти, что критично для высокой пропускной способности сервиса. Обновление статистики происходит после каждой обработанной транзакции.
Механизмы Circuit Breaker [2] и Thompson Sampling тесно интегрированы. При переходе провайдера из состояния Open в состояние Half-Open выполняется частичный сброс параметров бета-распределения:
|
|
(8) |
где ρ = 0.1 — коэффициент сброса. Данный подход математически обоснован: математическое ожидание бета-распределения E [θᵢ] = aᵢ / (aᵢ + bᵢ) сохраняется после умножения обоих параметров на одинаковый коэффициент, тогда как дисперсия возрастает — алгоритм «помнит» историческую репутацию провайдера, но становится менее уверенным в его текущих характеристиках. Это стимулирует активное исследование восстановленного провайдера без полной потери накопленной статистики.
5. Сравнение с альтернативными подходами
В таблице 2 приведено сравнение предложенного метода с альтернативными подходами к маршрутизации.
Таблица 2
Сравнение методов маршрутизации
|
Критерий |
Статические правила |
Weighted scoring (EMA) |
ε-Greedy |
Thompson Sampling |
|
Адаптивность |
Нет |
Частичная |
Частичная |
Полная |
|
Баланс exploration / exploitation |
Нет |
Нет |
Фиксированный (ε) |
Автоматический |
|
Учёт неопределённости |
Нет |
Нет |
Нет |
Да (бета-распределение) |
|
Настраиваемые параметры |
Правила |
Коэффициент сглаживания α |
Параметр ε |
Размер окна W |
|
Математическое обоснование |
Нет |
Среднее взвешенное |
Теорема о regret |
Байесовская оптимальность |
Алгоритм Thompson Sampling обладает рядом преимуществ: автоматический баланс между исследованием и эксплуатацией без явного параметра ε, учёт неопределённости оценки (провайдер с малым числом наблюдений получает больше шансов на исследование), байесовская оптимальность в стационарном случае [4].
6. Экспериментальная оценка
Для оценки эффективности предложенного метода проведена симуляция на синтетических данных. Моделировалась среда из четырёх платёжных провайдеров с характеристиками, приведёнными в таблице 3. Каждый метод запускался на T = 10 000 транзакций, результаты усреднялись по 30 независимым запускам с различными начальными значениями генератора псевдослучайных чисел.
Таблица 3
Характеристики провайдеров в симуляции
|
Провайдер |
P(success) |
Латентность (мс) |
Комиссия (%) |
|
P1 |
0.88 |
120 |
1.8 |
|
P2 |
0.85 |
80 |
1.2 |
|
P3 |
0.83 |
60 |
0.9 |
|
P4 |
0.79 |
200 |
2.1 |
Сравнивались следующие методы: Thompson Sampling (предложенный), Greedy, ε-Greedy (ε = 0.1), Round-Robin, Random. Оценивались: success rate, средний score, накопленный regret за T шагов.
Таблица 4
Результаты симуляции (T = 10 000, N = 30 запусков)
|
Метод |
SR стац. |
SR до деград. |
SR после деград. |
Regret стац. |
Regret деград. |
|
Thompson Sampling |
84.21 % |
84.16 % |
83.16 % |
365.77 |
279.87 |
|
Greedy |
83.70 % |
83.73 % |
81.50 % |
433.34 |
393.34 |
|
ε-Greedy (ε=0.1) |
83.45 % |
83.48 % |
82.57 % |
453.03 |
345.04 |
|
Round-Robin |
83.78 % |
83.82 % |
75.50 % |
425.00 |
687.50 |
|
Random |
83.85 % |
83.94 % |
75.64 % |
425.68 |
687.31 |
Thompson Sampling демонстрирует наименьший cumulative regret (365.77) среди всех сравниваемых методов, что свидетельствует о наиболее эффективном балансе между исследованием и эксплуатацией. Разница в success rate между методами невелика (83.45–84.21 %), что объясняется близостью характеристик провайдеров: при малой разнице между вероятностями успеха любой метод достигает сопоставимого success rate, однако по критерию regret преимущество Thompson Sampling сохраняется устойчиво.
Динамика cumulative success rate и cumulative regret по шагам симуляции представлена на рисунках 1 и 2 соответственно.
Рис. 2. Совокупное сожаление
Для проверки адаптивности в нестационарных условиях на шаге t = 5000 вероятность успеха провайдера P1 была снижена с 0.88 до 0.55, моделируя деградацию провайдера. Результаты приведены на рисунке 3.
Рис. 3. Показатель успеха при деградации провайдера
Thompson Sampling демонстрирует наименьшее падение success rate после деградации провайдера. Жадный алгоритм восстанавливался значительно медленнее вследствие отсутствия механизма исследования. Методы Round-Robin и Random не адаптировались к изменению условий.
Механизм дисконтирования (γ = 0.99) обеспечивает постепенное снижение веса устаревших наблюдений, что позволяет Thompson Sampling оперативно перераспределить трафик на провайдеров P2 и P3 после деградации P1. Данный результат подтверждает практическую ценность предложенного метода в условиях реальной эксплуатации, где характеристики провайдеров могут изменяться непредсказуемо.
Анализ чувствительности к весовому коэффициенту w₁ показал устойчивость метода: при изменении w₁ от 0.4 до 0.8 success rate варьировался в диапазоне 83.4–84.8 %, что свидетельствует об устойчивости предложенной функции оценки (рисунок 4).
Результаты Thompson Sampling для трёх бизнес-профилей весовых коэффициентов приведены в таблице 5.
Таблица 5
Результаты Thompson Sampling по бизнес-профилям
|
Профиль |
w₁ |
w₂ |
w₃ |
Success rate |
Cum. regret |
|
Conversion-first |
0.70 |
0.20 |
0.10 |
84.71 % |
319.27 |
|
Balanced |
0.60 |
0.25 |
0.15 |
84.21 % |
365.77 |
|
Cost-sensitive |
0.50 |
0.15 |
0.35 |
83.56 % |
446.17 |
Профиль Conversion-first обеспечивает наибольший success rate (84.71 %) и наименьший regret (319.27), поскольку максимально нацелен на вероятность успешной обработки транзакции. Профиль Cost-sensitive снижает success rate на 0.65 п.п. относительно Balanced, направляя трафик к провайдерам с меньшей комиссией. Данный результат демонстрирует гибкость предложенного метода: мерчант может настраивать приоритеты маршрутизации в соответствии с бизнес-задачами без изменения алгоритма.
Заключение
В работе предложен метод адаптивной маршрутизации платёжных транзакций, основанный на алгоритме Thompson Sampling с мультикритериальной функцией оценки. Задача выбора оптимального провайдера формализована как задача многорукого бандита с нестационарными вероятностями успеха. Предложенная функция оценки учитывает вероятность успешной обработки транзакции (моделируемую бета-распределением), латентность (нормализованную по SLA-порогу) и стоимость обработки. Для адаптации к нестационарной среде применяется дисконтирование параметров бета-распределения (Discounted Thompson Sampling). Описана архитектура микросервисной платформы и механизм интеграции Thompson Sampling с Circuit Breaker посредством частичного сброса параметров при восстановлении провайдера.
Экспериментальная оценка методом симуляции подтвердила превосходство предложенного метода над альтернативными подходами по показателям success rate и накопленного regret как в стационарных, так и в нестационарных условиях.
Направлениями дальнейшего развития являются: применение контекстуального бандита (Contextual Bandit) для учёта характеристик транзакции (BIN карты, регион эмитента, сумма) непосредственно при выборе провайдера; валидация метода на реальных исторических данных платёжной системы; исследование механизмов автоматической настройки весовых коэффициентов на основе бизнес-метрик.
Литература:
- Ньюмен, С. Создание микросервисов / С. Ньюмен. — пер. с англ. — 2-е изд. — СПб.: Питер, 2022. — 624 с. — Текст: непосредственный.
- Ричардсон, К. Микросервисы. Паттерны разработки и рефакторинга / К. Ричардсон. — пер. с англ. — СПб.: Питер, 2022. — 544 с. — Текст: непосредственный.
- Sutton, R. S. Reinforcement Learning: An Introduction / R. S. Sutton, A. G. Barto. — 2nd ed. — Cambridge: MIT Press, 2018. — 552 с. — Текст: непосредственный.
- A Tutorial on Thompson Sampling / D. J. Russo, Van Roy B, A. Kazerouni [и др.]. — Текст: непосредственный // Foundations and Trends in Machine Learning. — 2018. — № 1. — С. 1–96.
- Potluri, S. Understanding the Evolution of Payment Gateway Architectures: From Monolith to Microservices / S. Potluri. — Текст: непосредственный // Sarcouncil Journal of Engineering and Computer Sciences. — 2025. — № 9. — С. 269–276.

