pymoo: многокритериальная оптимизация на языке Python
Pymoo: Multi-Objective Optimization in Python
2020-01-01
SCID: 54.1/3dqcgj9q
Discuss with AI
автоматическое дифференцированиеоптимизация с ограничениямимногокритериальное принятие решениймногокритериальная оптимизацияpymoo
Figures from the paper
Abstract (AI)
Python стал предпочтительным языком программирования для исследовательских и промышленных проектов, связанных с анализом данных, машинным обучением и глубоким обучением. Поскольку оптимизация является неотъемлемой частью этих научных областей, за последние несколько лет появилось множество фреймворков для оптимизации. Лишь некоторые из них поддерживают одновременную оптимизацию нескольких конфликтующих критериев, однако не предоставляют комплексных инструментов для решения полной задачи многокритериальной оптимизации. Для решения этой проблемы мы разработали pymoo — фреймворк для многокритериальной оптимизации на языке Python. Мы представляем руководство по началу работы с фреймворком, демонстрируя реализацию показательного сценария ограниченной многокритериальной оптимизации. Кроме того, приводится общий обзор архитектуры pymoo, позволяющий продемонстрировать его возможности, а затем объясняется назначение каждого модуля и соответствующих подмодулей. Реализации в нашем фреймворке являются настраиваемыми, а алгоритмы можно изменять или расширять посредством передачи пользовательских операторов. Кроме того, в комплект входят разнообразные тестовые задачи с одним, несколькими и многими критериями, а градиенты можно получать «из коробки» с помощью автоматического дифференцирования. pymoo также отвечает практическим требованиям, обеспечивая параллелизацию вычисления значений функций, методы визуализации пространств малой и высокой размерности, а также инструменты поддержки принятия решений по нескольким критериям. Для получения дополнительной информации о pymoo читателям рекомендуется посетить сайт: https://pymoo.org.
Key Findings
1
Pymoo включает тестовые задачи для одно-, много- и многихокритериальной оптимизации, а также предоставляет градиенты посредством автоматического дифференцирования.
2
Представлен pymoo — Python-фреймворк для поддержки полного рабочего процесса многокритериальной оптимизации, устраняющий недостатки существующих библиотек.
3
Реализации алгоритмов во фреймворке настраиваются и расширяются с помощью пользовательских операторов.
4
Фреймворк поддерживает практические задачи оптимизации за счёт параллельного вычисления функций, визуализации пространств низкой и высокой размерности и инструментов многокритериального принятия решений.
5
Работа демонстрирует pymoo на примере ограниченной многокритериальной задачи и описывает его модульную архитектуру и компоненты.
Research Object
фреймворк многокритериальной оптимизации pymoo на Python
Research Subject
возможности и инструменты фреймворка для выполнения полного многокритериального оптимизационного анализа с ограничениями, включая настраиваемые алгоритмы, тестовые задачи, автоматическое дифференцирование, параллельное вычисление целевых функций, визуализацию и многокритериальное принятие решений
Publication Details
Publication Date
2020-01-01
Journal
Publisher
ISSN
Open access PDF
Access Type
Author Information
Download PDF
Subscribe to digest