Научные вычисления

Алгоритм MCS

Алгоритм MCS — 1

Самая быстрая в мире реализация алгоритма Multilevel Coordinate Search (MCS) для безградиентной оптимизации, изначально разработанного Хойером и Ноймайером. Реализация на Rust обеспечивает ускорение более чем в 500 раз по сравнению с оригинальной версией на MATLAB и существующими реализациями на Python.

Производительность и архитектура

Написан на Rust с использованием const generics для проверки размерности на этапе компиляции. Реализация поддерживает оптимизацию произвольной N-мерной задачи с нулевыми накладными расходами на валидацию размерности. Алгоритм эффективно ищет глобальные минимумы функций без использования градиентов.

Тестирование и надёжность

Кодовая база включает более 400 тестов, покрывающих корректность, пограничные случаи и бенчмарки производительности. Каждый путь оптимизации проверен на известных аналитических решениях для обеспечения численной точности.

Сотрудничество

Разработан в сотрудничестве между SBER CIB (Корпоративно-инвестиционный бизнес Сбербанка) и ВШЭ (Высшая школа экономики) для применения в количественных финансах и научных исследованиях.

Экосистема

Проект включает семейство связанных репозиториев, расширяющих его применение за пределы Rust:

  • Rust_MCS_web — браузерный GUI на базе Docker для no-code пользователей
  • Rust_MCS_Python — коннектор для Python для интеграции с существующим Python кодом
  • Rust_MCS_Cpp — коннектор для C++ для интеграции с существующим C++ кодом
  • Rust_MCS_Sharpe_Ratio — пример оптимизации коэффициента Шарпа для портфельного распределения

Ключевые особенности

  • Ускорение >500x — по сравнению с реализациями на MATLAB и Python
  • Const generics — безопасность размерности на этапе компиляции и ускорение
  • N-мерная оптимизация — поддержка произвольной размерности
  • 400+ тестов — комплексный набор тестов с валидацией бенчмарков
  • Кросс-языковая поддержка — коннекторы для Python, C++ и браузерный GUI