Квадратично ограниченное квадратичное программирование в R - PullRequest
4 голосов
/ 07 сентября 2011

Есть ли в R функция, которая выполняет оптимизацию с квадратичными ограничениями?

Ссылка: http://en.wikipedia.org/wiki/Quadratically_constrained_quadratic_program

Ответы [ 5 ]

2 голосов
/ 30 июня 2014

Да, есть несколько программных пакетов, которые могут решать QCQP.

CLSOCP решает проблемы SOCP. DWD также решает проблемы SOCP. Rcsdp решает проблемы SDP.

Имейте в виду, что

QCQP - это подмножество SOCP, которые, в свою очередь, являются подмножеством SDP.

В Интернете есть ссылки, иллюстрирующие, как сформулировать QCQP как SOCP или SDP

2 голосов
/ 07 сентября 2011

Вы должны просмотреть свои варианты в представлении задач CRAN Оптимизация и математическое программирование.

1 голос
/ 15 февраля 2016

Только для справки.

Существует новый пакет ECOSolveR для решения SOCP

0 голосов
/ 11 мая 2018

Все эти ответы, кажется, забывают одну важную вещь: используемый решатель сильно зависит от того, является ли ограничение выпуклым или нет. Если выпуклый, мы можем использовать легко доступные решатели QCP / SOCP (включая Cplex и Gurobi). Если не выпуклый, мы можем попробовать универсальный решатель НЛП (например, IPOPT). Невыпуклые глобальные решатели - еще одна возможность, но большинство из них не доступны напрямую в R.

0 голосов
/ 07 сентября 2011

Возможно, вы захотите попробовать пакет quadprog: функции для решения задач квадратичного программирования.

http://cran.r -project.org / web / packages / quadprog / index.html

...