предполагать
где - симметричная матрица n × n , а v e c ( U ) преобразует U в одномерный вектор с n 2 элементами.
Часть вышеупомянутой программы, которая доставляет мне проблемы, это . (Ограничение решений для неотрицательных симметричных матриц кажется простым.)
Заранее спасибо за любую помощь или ссылки!
Ответы:
Изменить: Давайте попробуем это объяснение еще раз, на этот раз, когда я больше не сплю.
Есть три больших проблемы с формулировкой (в порядке серьезности):
Нет очевидной гладкой / выпуклой / линейной переформулировки
Во-первых, нет стандартной, очевидной переформулировки каждого ограничения. Предложение Арона применимо к более общему минимальному ограничению, в котором ограничение типа U i j ≤ min k { U i k , U k j } заменяется следующими двумя эквивалентными неравенствами: U i j ≤ U i k ,max min
негладкости
Негладкость - огромная проблема, потому что:
Возможная невыпуклость
Эти функции вогнуты.
Варианты решения проблемы
Испытайте свою удачу на своей формулировке, как это с пакетным решателем для негладких программ. У меня нет большого опыта с этими типами решателей. (Мой коллега использует их в своих исследованиях.) Они, вероятно, медленные, так как не могут использовать производную информацию. (Я думаю, что вместо этого они используют субградиент или обобщенную информацию о градиенте Кларка.) Также маловероятно, что вы сможете решать большие экземпляры задач с помощью решателя пакетов.
источник
источник
источник
источник
Я не могу найти кнопку комментария ...
Если это выпуклый набор, вы можете выполнить градиентный спуск к вашей целевой функции, используя что-то вроде Dykstra's_projection_algorithm, чтобы проецировать обратно в пространство ограничений.
источник
источник