Podręcznik
1. Podstawy programowania matematycznego
1.4. Wypukłość w optymalizacji
Wprowadzimy teraz serię podstawowych pojęć, w szczególności związanych z wypukłością, która jest niezmiernie ważna w problemach optymalizacji.










Złożoność obliczeniową problemów definiujemy w ramach klas złożoności.
Klasa NP – problemy weryfikowalne w czasie wielomianowym na maszynie Turing, a rozwiązywalne w czasie wielomianowym na niedeterministycznej maszynie Turinga (maszynie z wyrocznią)
Klasa NP-zupełnych – problemy z NP., takie, że dowolny problem z NP może być zredukowany do problemu w klasie NP-zupełnej w czasie wielomianowym.
NP-trudny – problem co najmniej tak trudny jak każdy problem z klasy NP (ale potencjalnie jeszcze trudniejszy)
źródło: wikipedia
Skrót
“p.o” należy czytać „przy ograniczeniach”. W modelu to
zmienne decyzyjne. Zmienne
mogą być ciągłe lub dyskretne.
to zbiór rozwiązań
dopuszczalnych. Jego opis może przyjmować postać zbioru funkcji liniowych lub
zbiór funkcji wypukłych. W niektórych sytuacjach może nie być podany jawnie, a np.
być dostępny przez algorytm/symulacje. Funkcja celu to
.
Tak ogólnie postawiony problem może być trudny do rozwiązania, a czasem nawet znalezienia rozwiązania dopuszczalnego jest kłopotliwe. Dlatego szczególnie interesuje nas znajomość przynależności danego problemu/modelu do klasy problemów, które mogą być efektywnie rozwiązywane. Do problemów łatwych należy zaliczyć np. zadania programowania liniowego (ze zmiennymi ciągłymi) oraz modele sieci przepływowych. Są to przykłady problemów wypukłych (lub możliwych do uwypuklenia). Generalnie optymalizacja wypukła jest zadaniem, które można efektywnie rozwiązać. Stąd ważkość zagadnienia wypukłości, którą dalej poruszamy.
Przyładowy zbiór wypukły:
Oraz przykład zbioru niewypukłego:
Przykłady innych zbiorów wypukłych:
Odcinek
Prosta
Hiperpłaszczyzna
Stożek
Niektóre operacja na zbiorach mogą zachowywać wypukłość. Przykładowe operacje zachowujące wypukłość:
Przecięcie zbiorów
Otoczka wypukła jest szczególnie ważna w przypadku zbiorów dyskretnych
Funkcja
określona na zbiorze wypukłym
jest
wypukła, jeżeli dla każdego
spełniona
jest nierówność
, co obrazuje poniższy obrazek
Funkcja jest wypukła, jeżeli jej nadgrafik jest zbiorem wypukłym:
Równoważnie można powiedzieć, że funkcja jednokrotnie różniczkowalna jest wypukła jeżeli zachodzi poniższy warunek:
Zaś dla funkcji podwójnie różniczkowalnej musi zachodzić następujących warunek dla hesjanu:
Istnieją operacje, które zachowują wypukłość.
Nieujemna suma ważona:
Maksimum funkcji
Funkcja celu wypukła i zbiór rozwiązań dopuszczalnych wypukły.

p.o.


gdzie

Dla optymalizacji wypukłej lokalne optimum jest również optimum globalnym.