1 / 36

Wykład 2: Upraszczanie, optymalizacja i implikacja

Wykład 2: Upraszczanie, optymalizacja i implikacja. Upraszczanie, optymalizacja i implikacja. Upraszczanie więzów Projekcja Upraszczacze więzowe Optymalizacja Implikacja i równoważność. Upraszczanie więzów. Dwa równoważne więzy reprezentują tę samą informację, ale

crevan
Télécharger la présentation

Wykład 2: Upraszczanie, optymalizacja i implikacja

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Wykład 2: Upraszczanie, optymalizacja i implikacja

  2. Upraszczanie, optymalizacja i implikacja • Upraszczanie więzów • Projekcja • Upraszczacze więzowe • Optymalizacja • Implikacja i równoważność

  3. Upraszczanie więzów • Dwa równoważne więzy reprezentują tę samą informację, ale • Jeden może być prostszy od drugiego Usuwanie nadmiarowych więzów, przepisywanie więzów bazowych, zmiana kolejności, podstawianie używiające równości zachowują równoważność

  4. Więzy nadmiarowe • Więz C1 implikuje C2 jeśli rozwiązania C1 są podzbiorem rozwiązań C2 • C2 jest nadmiarowy wzgl. C1 • Piszemy

  5. Więzy nadmiarowe • Można usunąć więz bazowy, który jest nadmiarowy wzgłedem reszty więzów. Powstają prostsze więzy

  6. Solwery form rozwiązanych • Ponieważ solwer form rozwiązanych tworzy równoważne więzy służyć do upraszczania Przykładowo, gdy używamy solwera termowego Dla solwera Gaussa-Jordana

  7. Projekcja Upraszczanie staje się ważniejsze, gdy interesują nas jedynie niektóre zmienne. Uproszczone wzgl. V oraz I

  8. Projekcja • Projekcją więzu C na zmienne V jest więz C1 taki, że • C1 zawiera zmienne jedynie z V • Każde rozwiązanie C jest rozwiązaniem C1 • Rozwiązanie C1 może być rozszerzone by dać rozwiązanie C

  9. Algorytm Fouriera • Usuń zmienną y z nierówności liniowych C • Zapisz każdą nier. z y po jednej stronie • Dla każdej pary • stwórz nową nier. • Wynikiem są wszystkie nowe nierówności oraz te nierówności z C, które nie zawierają y

  10. Algorytm Fouriera. Przykład Projekcja. Eliminowanie Y Wynik (zawiera tylko X)

  11. Projekcja więzów termowych • Możemy również wykonać projekcję na więzach termowych • projekcja na {X,Z} to • Ale jak dokonać projekcji X = cons(Y,Z) na X? • Odpowiedź: nie ma takiego więzu!

  12. Upraszczanie więzów • więzy C1 i C2 są równoważne ze względu naV jeśli • gdy weźmiemy dowolne rozwiązanie jednego i ograniczymy je do zmiennych s V, to to ograniczone rozwiązanie może być rozszerzone aby być rozwiązaniem drugiego • Przykładowo X=succ(Y) i X=succ(Z) wzgl {X}

  13. Definicja upraszczacza • Upraszczaczem więzów jest funkcja simpl która bierze więz C oraz zbiór zmiennych V i zwraca więz C1 równoważny C wzgl. V • Możemy utworzyć upraszczacz dla nierówności liniowych bazujący na algorytmie Fouriera.

  14. Upraszczacz więzów drzewowych • Zastosuj solwer termowy do C otrzymując C1 • ifC1 = falsethen returnfalse • foreach równanie x=t w C1 • ifx jest w V then • ift jest zmienną spoza V • podstaw x za t w C1 i w wyniku • else dodaj x=t do wyniku • return result

  15. Przykład upraszczania drzew Wiezy drzewowe upraszczane wzgl. {Y,T} Równoważny więz z solwera drzewowego Pomiń pierwsze dwa równania, zachowaj trzecie i użyj ostatnie do zamiany U na T

  16. Własności upraszczacza • Pożądanymi własnościami są: • rzutowanie: • słabe rzutowanie: dla wszystkich więzów C2 które są równoważne z C1 wzgl.V • słabo rzutujący solwer nigdy nie używa więcej zmiennych niż to konieczne • Obydwie te własności pozwalają by upraszczacz użyty był jako solwer

  17. Optymalizacja • Często mając problem modelowany przez pewne więzy chcemy otrzymać nie ,,jakieś’’ rozwiązanie, ale rozw. ,,najlepsze’’ • To jest problem optymalizacyjny • Potrzebujemy funkcji celu do oceny rozwiązań, czyli funkcji biorącej rozwiązanie i zwracającej liczbę rzeczywista

  18. Problem optymalizacji • Problem optymalizacji(C,f) składa się z więzu C oraz funkcji celu f • Wartościowanie v1 jest lepsze niż v2 jeśli f(v1) < f(v2) • Rozwiązanie optymalne to takie, że nie ma od niego lepszego.

  19. Przykład na optymalizację Problem optymalizacyjny Znajdź najbliższy pocz. układu punkt spełniający C. Niektóre rozwiązania wraz z wartością f. Rozwiązanie optymalne

  20. Optymalizacja • Pewne problemy optymalizacyjne nie mają rozwiązania. • Więzy nie mają rozwiązanie • Problem nie ma optimim • Od każdego rozwiązania istnieje lepsze

  21. Algorytm Simplex • Najpowszechniej używany algorytm optymalizacyjny • Optymalizuje funkcję liniową wzgl. więzów liniowych • Związany z eliminacją Gaussa-Jordana

  22. Algorytm Simplex • Problem optymalizacyjny (C, f) ma postać simpleksową jeśli: • C jest koniunkcją CE oraz CI • CE jest koniunkcją równań liniowych • CI ogranicza wszystkie zmienne z C, by były nieujemne • f jest linowym wyrażeniem nad zmiennymi z C

  23. Simplex. Przykład Problem optymalizacyjny w postaci simplesowej • Dowolny problem można przekształcić do postaci simpl. • Zastępując niezwiązane zm X przez nowe zm. • wyrażając za pomocą nowej zm. s

  24. Rozwiązana postać simpleksowa • Simpleksowy problem optymalizacyjny jest w podstawowej wykonywalnej postaci jeśli: • Równania są w postaci rozwiązanej • Każda stała po prawej stronie jest nieujemna • W funkcji celu znajdują się jedynie parametry • Postawowe wykonywalne rozwiązanie otrzymujemy podstawiając 0 za każdy parametr, a stałą z równania za każdy nie-parametr

  25. Simplex. Przykład Problem równoważny poprzedniemu w postaci bfs Możemy odczytać rozwiązanie i odpowiadającą mu funkcję celu

  26. Algorytm simplex Zacznij od problemu w postaci bfs repeat Wybierz zmienną y z ujemnymi wsp. w funkcji celu Znajdź równanie x = b + cy + ... gdzie c<0 i -b/c jest minimalne Przepisz równanie with y the subject y = -b/c + 1/c x + ... Podstaw -b/c + 1/c x + ... zay we wszystkich równ. i f-cji celu. until nie ma takiej y lub nie ma takiego równania if nie ma y to znaleźliśmy optimum else nie ma rozwiązania optymalnego

  27. Simpleks. Przykład Choose variable Z, the 2nd eqn is only one with neg. coeff Choose variable Y, the first eqn is only one with neg. coeff No variable can be chosen, optimal value 2 is found

  28. Inny przykład Równoważną postacią simpleksową jest: Problem optymalizacyjny pokazujący poziomice funkcji celu

  29. Inny przykład Basic feasible solution form: circle Choose S3, replace using 2nd eq Rozwiązanie optymalne: kwadrat

  30. Brakująca część • Jak obliczyć początkowe rozwiązanie (bfs)? • Rozwiąż inny problem simpleksowy • Dodaj sztuczne zmienne, aby rozwiązania znalazły się w bfs • Minimalizuj sumę sztucznych więzów • Gdy suma jest zero, możemy zbudować bfs dla oryginalnego problemu.

  31. Przykład z brakującą częścią Original simplex form equations With artificial vars in bfs form: Objective function: minimize

  32. Przykład z brakującą częścią II Problem after minimization of objective function Removing the artificial variables, the original problem

  33. Implikacja i równoważność • Innymi ważnymi operacjami na więzach są: • implikacja: sprawdź czy C1 implikuje C2 • impl(C1, C2) odpowiada true, false lub unknown • równoważność: sprawdź czy C1 i C2 są równoważne • equiv(C1, C2) odpowiada true, false lub unknown

  34. Implikacja. Przykład Czy dla więzu CH, stan B musi być osiągnięty po stanie C? Odpowiedź jest aIe, jeżeli dołożymy wymaganie, by dom zbudować w 15 dni, to

  35. Implikacja i równoważność • Można użyc impl by zdefiniować equiv i vice versa • Możemy skorzystać z solwera dla prostych testów z impl • e.g.

  36. Simplification, Optimization and Implication Summary • Equivalent constraints can be written in many forms, hence we desire simplification • Particularly if we are only interested in the interaction of some of the variables • Many problems desire a optimal solution, there are algms (simplex) to find them • We may also be interested in asking questions involving implication

More Related