У меня есть массив P = [1, 5, 3, 6, 4,...]
размера N
и средний A
Я хочу найти наиболее эффективный способ максимизировать следующую трехмерную функцию:
f(x, y) = 1/( (1+e^(-6(x-2))) * (1+e^(-6(y-2))) * (1+e^(-0.1x-0.3y+1.5)) )
где x = c(S) = Count(S)
и y = m(S) = Min(S[0]/A, S[1]/A,..., S[n]/A)
и S
является подмножеством P
Подмножество не обязательно должно быть непрерывным в P
У меня такое чувство, что это может быть сведено к некоторому варианту проблемы с подмножеством, но я действительно не знаю, с чего начать, кроме сортировки P
Цель состоит в том, чтобы реализовать алгоритм в PHP, но на самом деле любой псевдокод очень помог бы.