Как лучше максимизировать дискретную функцию? Есть функция f = (a, b, c, ... ) где
в качестве аргументов а, b, c - могут передаваться значения, которые изменяются от k до n (разные для каждого а,b,c)
1) нужно получить значения a, b, c при которых f - максимально
2) нужно получить комбинации интервалов a,b,c при которых f не ниже порога fMin
Т.к на обычном CPU полный перебор требует большого количества времени, нужно более производительное решение.
Есть ли какие-нибудь библиотеки или готовые высокопроизводительные алгоритмы решающие эту задачу на GPU (CUDA)?
Или может быть есть другие хитрые математические способы хотя бы приблизительно найти результат?
аргументы a,b,c - в какой-то степени коррелируют со значением функции f
Слышал про градиентный спуск, который ищет экстремум функции, но остаётся вопрос как получить интервалы аргументов при которых f не меньше минимально допустимого порога

21 Авг 2019 в 06:15
167 +1
1
Ответы
1

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

Для работы с GPU (CUDA) можно использовать библиотеки, такие как cuBLAS, cuDNN или PyCUDA для оптимизации графического процессора. Кроме того, вы можете написать собственные ядра CUDA для оптимизации вычислений на GPU.

Чтобы найти интервалы аргументов при которых значение функции не ниже определенного порога, вы можете использовать методы локальной оптимизации, такие как градиентный спуск с ограничениями (constrained optimization) или методы оптимизации с ограничениями.

Если значения аргументов a, b, c коррелируют с значением функции f, то может быть полезно применить методы анализа чувствительности (sensitivity analysis) для определения влияния изменения каждого аргумента на значение функции.

Наконец, вы можете использовать методы численной оптимизации, такие как алгоритмы глобальной оптимизации (например, алгоритмы роя частиц или алгоритмы имитации отжига) для нахождения глобального максимума функции.

20 Апр в 13:21
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Название заказа не должно быть пустым
Введите email
Бесплатные доработки
Гарантированные бесплатные доработки
Быстрое выполнение
Быстрое выполнение от 2 часов
Проверка работы
Проверка работы на плагиат
Интересные статьи из справочника
Поможем написать учебную работу
Название заказа не должно быть пустым
Введите email
Доверьте свою работу экспертам
Разместите заказ
Наша система отправит ваш заказ на оценку 92 588 авторам
Первые отклики появятся уже в течение 10 минут
Прямой эфир