pymoo: многокритериальная оптимизация на языке Python

Pymoo: Multi-Objective Optimization in Python
Kalyanmoy Deb, Julian Blank
2020-01-01

автоматическое дифференцированиеоптимизация с ограничениямимногокритериальное принятие решениймногокритериальная оптимизацияpymoo
Python стал предпочтительным языком программирования для исследовательских и промышленных проектов, связанных с анализом данных, машинным обучением и глубоким обучением. Поскольку оптимизация является неотъемлемой частью этих научных областей, за последние несколько лет появилось множество фреймворков для оптимизации. Лишь некоторые из них поддерживают одновременную оптимизацию нескольких конфликтующих критериев, однако не предоставляют комплексных инструментов для решения полной задачи многокритериальной оптимизации. Для решения этой проблемы мы разработали pymoo — фреймворк для многокритериальной оптимизации на языке Python. Мы представляем руководство по началу работы с фреймворком, демонстрируя реализацию показательного сценария ограниченной многокритериальной оптимизации. Кроме того, приводится общий обзор архитектуры pymoo, позволяющий продемонстрировать его возможности, а затем объясняется назначение каждого модуля и соответствующих подмодулей. Реализации в нашем фреймворке являются настраиваемыми, а алгоритмы можно изменять или расширять посредством передачи пользовательских операторов. Кроме того, в комплект входят разнообразные тестовые задачи с одним, несколькими и многими критериями, а градиенты можно получать «из коробки» с помощью автоматического дифференцирования. pymoo также отвечает практическим требованиям, обеспечивая параллелизацию вычисления значений функций, методы визуализации пространств малой и высокой размерности, а также инструменты поддержки принятия решений по нескольким критериям. Для получения дополнительной информации о pymoo читателям рекомендуется посетить сайт: https://pymoo.org.
1
Pymoo включает тестовые задачи для одно-, много- и многихокритериальной оптимизации, а также предоставляет градиенты посредством автоматического дифференцирования.
2
Представлен pymoo — Python-фреймворк для поддержки полного рабочего процесса многокритериальной оптимизации, устраняющий недостатки существующих библиотек.
3
Реализации алгоритмов во фреймворке настраиваются и расширяются с помощью пользовательских операторов.
4
Фреймворк поддерживает практические задачи оптимизации за счёт параллельного вычисления функций, визуализации пространств низкой и высокой размерности и инструментов многокритериального принятия решений.
5
Работа демонстрирует pymoo на примере ограниченной многокритериальной задачи и описывает его модульную архитектуру и компоненты.

фреймворк многокритериальной оптимизации pymoo на Python

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

Publication Details
Publication Date
2020-01-01
Journal
Publisher
ISSN
Access Type
Author Information
Authors
Kalyanmoy Deb
Julian Blank
Explore further
Open the scid.ai AI chat with a ready-made request: it will find papers on a similar topic and help build a literature review.
Find similar papers in the chat
Make a presentation
100%