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