Термин
MPC (Model Predictive Control) ABR
ABR-алгоритм с коротким горизонтом предсказания выбирает последовательность rendition-ов, максимизирующую ожидаемое качество с учётом прогноза пропускной способности. Опубликован Yin, Jindal et al. в 2015 году.
MPC-основанный ABR использует подходы из теории управления: на каждом шаге решения прогнозируется пропускная способность на следующие K сегментов, перебираются K-сегментные траектории выборки битрейтов, каждая оценивается по функции полезности (битрейт минус штраф за буферизацию минус штраф за переключение), и выбирается траектория, в которой выигрывает первый сегмент. Обычно K составляет 5–10 сегментов. Статья по MPC (ACM SIGCOMM 2015) показала, что такой подход с предварительным анализом (look-ahead) превосходит как чисто throughput-ориентированные, так и чисто buffer-ориентированные ABR-алгоритмы на широком наборе сетевых трейсов.
Сильная сторона MPC – способность моделировать как краткосрочные прогнозы пропускной способности, так и стоимость переключений. Плюс в гибкости: функция полезности настраивается, и оператор может выбрать приоритет – «минимум переключений любой ценой», «максимальный средний битрейт» или промежуточный вариант. Минус – вычислительная сложность: на границе каждого сегмента плеер перебирает траектории длины K по лестнице rendition-ов. При 6 rendition-ах и K = 5 получается 7776 траекторий – это выполнимо, но требует ресурсов.
В продакшене идеи MPC находят применение в ABR Shaka Player (с меньшим горизонтом планирования, чем у чистого MPC), в per-title ABR от Netflix и в системе Pensieve, где предиктор MPC был заменён нейросетью. Чистый академический MPC в продакшене используется реже; на практике чаще применяется паттерн «структура MPC с look-ahead на один шаг и агрессивным сглаживанием», а не полный перебор на 10 сегментов.
Считаете параметры для своего продукта?
Поможем собрать энкодер-леддер и посчитать стоимость доставки – до старта разработки.