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

Алгоритм 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