Чим геометричне програмування відрізняється від опуклого програмування?


10

Чим (узагальнене) геометричне програмування відрізняється від загального опуклого програмування?

Геометрична програма може бути перетворена в опуклу програму і зазвичай вирішується методом внутрішніх точок. Але яка перевага перед безпосередньо формулюванням проблеми як опуклої програми та її вирішенням методом внутрішніх точок?

Чи становить клас геометричних програм лише підмножину класу опуклих програм, які можна вирішити особливо ефективно методами внутрішніх точок? Або перевага просто в тому, що загальну геометричну програму можна легко вказати в читаній для комп'ютера формі.

З іншого боку, чи є опуклі програми, які не можуть бути адекватно наближені геометричними програмами?

Відповіді:


5

Я фактично ніколи не чув про геометричне програмування до цього питання. Ось оглядовий документ Стівена Бойда та ін. (Ванденберге теж є співавтором), який є навчальним посібником з геометричного програмування.

Геометричні програми, спочатку виражені, не є опуклими. Наприклад, є Позін, і це не є опуклим, тому геометричні програми не є строгим підмножиною опуклого програмування.х1/2

Перевага перетворення геометричної програми в опуклу програму полягає в тому, що оригінальна геометрична програма не обов'язково є опуклою. Якщо ви вирішили геометричну програму як нелінійну програму (NLP), вам знадобиться використовувати методи невипуклої оптимізації, щоб гарантувати оптимальне глобальне рішення. Ці методи дорожчі, ніж методи опуклої оптимізації, вимагають більшої алгоритмічної настройки та потребують початкових здогадок.

Більше того, якщо ви використовуєте алгоритм з невипуклої NLP, вам потрібно буде вказати свій здійсненний набір як компактний набір в ; в геометричних програмах х > 0 - допустиме обмеження.Rнх>0

Незрозуміло, чи набір геометричних програм відображається (через журнально-експоненціальне перетворення) на набір опуклих програм, що вирішує особливо ефективно. Я не бачу жодних переваг для геометричного програмування, крім перетворення в опуклі програми.

Щодо вашого останнього запитання, я не думаю, що набір геометричних програм ізоморфний набору опуклих програм, тому я підозрюю, що є опуклі програми, які не можуть бути виражені геометричними програмами, і з цих програм я підозрюю, що там - це такі, які не можуть бути досить чітко оцінені геометричними програмами. Однак я не маю доказів чи контрафактрису.


Схоже, глава 8 вашого зв'язаного оглядового документу намагається вирішити моє питання. Однак, після першого побіжного огляду на нього, у мене складається враження, що насправді будь-яку опуклу програму можна наблизити геометричною програмою (логарифмічно перетвореною, звичайно ...). Однак, оскільки будь-яка лінійна програма "очевидно" також є геометричною програмою, це також може бути просто варіантом твердження, що будь-яку опуклу програму можна наблизити лінійною програмою, але це не те, що я маю на увазі "приблизно добре".
Томас Клімпель,

Коли виник термін геометричне програмування, вирішити загальні опуклі програми було непросто, і спеціальна структура могла бути використана. Тепер, звичайно, як тільки визнається, що програма є геометричною, вона перетворює її в опуклу програму і розв'язує останню методами інтер'єрних точок.
Арнольд Ноймаєр

3

f(х)1f(х)-х-у1-х-у-х2-у21


Геометричне програмування не є суворим набором опуклого програмування; однак під логічно-експоненціальним перетворенням трансформовані геометричні програми є опуклими програмами.
Джефф Оксберрі

Так, це я хотів сказати. Відредагована відповідь для наочності.
Опція
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.