1 Rozdział 1: Więzy Czym są więzy i do czego służą.

Slides:



Advertisements
Podobne prezentacje
I część 1.
Advertisements

Joanna Sawicka Wydział Nauk Ekonomicznych, Uniwersytet Warszawski
Reinhard Kulessa1 Wykład Środek masy Zderzenia w układzie środka masy Sprężyste zderzenie centralne cząstek poruszających się c.d.
Metody badania stabilności Lapunowa
Rekurencja 1 Podprogram lub strukturę danych nazywamy rekurencyjną, (recursive subprogram, recursive data structure) jeżeli częściowo składa się z samej.
Obserwowalność System ciągły System dyskretny
11. Różniczkowanie funkcji złożonej
Wzorce.
Grażyna Mirkowska PJWSTK 15 listopad 2000
Systemy Sztucznej Inteligencji
Metody Analizy Programów Wykład 02
Wykład 10 Metody Analizy Programów Specyfikacja Struktur Danych
Wykład 6 Najkrótsza ścieżka w grafie z jednym źródłem
Rozdział V - Wycena obligacji
WYKŁAD 6 ATOM WODORU W MECHANICE KWANTOWEJ (równanie Schrődingera dla atomu wodoru, separacja zmiennych, stan podstawowy 1s, stany wzbudzone 2s i 2p,
Ludwik Antal - Numeryczna analiza pól elektromagnetycznych –W10
TERMO-SPRĘŻYSTO-PLASTYCZNY MODEL MATERIAŁU
Liczby pierwsze.
Badania operacyjne. Wykład 2
Wykład no 11.
Materiały pochodzą z Platformy Edukacyjnej Portalu
ZŁOŻONOŚĆ OBLICZENIOWA
Materiały do zajęć z przedmiotu: Narzędzia i języki programowania Programowanie w języku PASCAL Część 7: Procedury i funkcje © Jan Kaczmarek.
Materiały do zajęć z przedmiotu: Narzędzia i języki programowania Programowanie w języku PASCAL Część 8: Wykorzystanie procedur i funkcji © Jan Kaczmarek.
Wykład 2: Upraszczanie, optymalizacja i implikacja
Tablice jednowymiarowe 1
Instrukcja skoku GO TO etykieta Np. GO TO 100 ….. 100WRITE (*,*) Przeskok do instrukcji 100 Uwaga! NIE WOLNO skakać do wnętrzna złożonych instrukcji warunkowych.
Konsolidacja kredytów spłacanych w ratach całkowitych 1. Wstęp 2. Oprocentowanie proste - stopa stała 3. Oprocentowanie proste - stopa zmienna 4. Oprocentowanie.
UKŁADY SZEREGOWO-RÓWNOLEGŁE
Przykładowe zastosowania równania Bernoulliego i równania ciągłości przepływu 1. Pomiar ciśnienia Oznaczając S - punkt spiętrzenia (stagnacji) strugi v=0,
Transformacja Z (13.6).
Kolejność wykonywania działań
Układy równań 23x - 31 y = 1 x – y = - 8 x = -1 y - x = 1 x + y = 11
Podstawy programowania
Automatyka Wykład 3 Modele matematyczne (opis matematyczny) liniowych jednowymiarowych (o jednym wejściu i jednym wyjściu) obiektów, elementów i układów.
O relacjach i algorytmach
Technika Mikroprocesorowa 1
Podstawy układów logicznych
Elementy Rachunku Prawdopodobieństwa i Statystyki
Analiza współzależności cech statystycznych
Wyrażenia algebraiczne
Metody Lapunowa badania stabilności
Obserwatory zredukowane
Stabilność Stabilność to jedno z najważniejszych pojęć teorii sterowania W większości przypadków, stabilność jest warunkiem koniecznym praktycznego zastosowania.
dla klas gimnazjalnych
Analiza wpływu regulatora na jakość regulacji (1)
Analiza wpływu regulatora na jakość regulacji
Modelowanie i Identyfikacja 2011/2012 Metoda propagacji wstecznej Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 1 Warstwowe.
Dekompozycja Kalmana systemów niesterowalnych i nieobserwowalnych
XML – eXtensible Markup Language
Wykład 22 Modele dyskretne obiektów.
Figury w układzie współrzędnych.
Obserwowalność i odtwarzalność
Przekazywanie parametrów do funkcji oraz zmienne globalne i lokalne
Stabilność Stabilność to jedno z najważniejszych pojęć dynamiki systemów i teorii sterowania W większości przypadków, stabilność jest warunkiem koniecznym.
Wykład 10 typ zbiorowy rekurencja.
FUNKCJE Opracował: Karol Kara.
(C) Jarosław Jabłonka, ATH, 5 kwietnia kwietnia 2017
Ekonometryczne modele nieliniowe
Algorytmika.
MOiPP Matlab Przykłady metod obliczeniowych Obliczenia symboliczne
Obliczalność czyli co da się policzyć i jak Model obliczeń sieci liczące dr Kamila Barylska.
Bramki logiczne i układy kombinatoryczne
Teoria sterowania SN 2014/2015Sterowalność, obserwowalność Kazimierz Duzinkiewicz, dr hab. inż.Katedra Inżynierii Systemów Sterowania 1 Sterowalność -
Ekonometryczne modele nieliniowe
Systemy dynamiczne 2014/2015Obserwowalno ść i odtwarzalno ść  Kazimierz Duzinkiewicz, dr hab. in ż. Katedra In ż ynierii Systemów Sterowania 1 Obserwowalność.
Treści multimedialne - kodowanie, przetwarzanie, prezentacja Odtwarzanie treści multimedialnych Andrzej Majkowski informatyka +
Kalendarz 2020.
NP-zupełność Problemy: rozwiązywalne w czasie wielomianowym - O(nk)
Zapis prezentacji:

1 Rozdział 1: Więzy Czym są więzy i do czego służą.

2 Więzy u Czym są więzy? u Modelowanie problemów u Rozwiązywanie więzów u Więzy drzewowe u Inne dziedziny więzowe u Własności programów rozwiązujących więzy

3 Więzy Zmienna: miejsce dla wartości Symbol funkcyjny: odwzorowanie wartości w wartości Symbol relacyjny: relacja pomiędzy wartościami

4 Więzy Więzy bazowe: relacja więzowa z argumentami Więz: koniunkcja więzów bazowych

5 Spełnialność Wartościowanie: przypisanie zmiennym wartości Rozwiązanie: wartościowanie spełniające więzy

6 Spełnialność Spełnialne: więzy mają rozwiązanie Niespełnialne: więzy nie mają rozwiązania spełnialne niespełnialne

7 Składnia więzów u Więzy są ciągami symboli u Nawiasy nie mają znaczenia u Kolejność ma znaczenie u Niektóre algorytmy zależą od kolejności

8 Więzy równoważne Dwa różne więzy mogą reprezentować tą samą informację Dwa więzy są równoważne jeżeli mają ten sam zbiór rozwiązań

9 Modelowanie więzami u Za pomocą więzów opisujemy wyidealizowane zachowanie obiektów z rzeczywistego świata

10 Modelowanie więzami Początek fundamenty ściany wewnętrzne ściany zewnętrzne komin dach drzwi kafelki okna

11 Spełnianie więzów u Dwa pytania dla danego więzu C u spełnialność: czy ma rozwiązanie? u rozwiązanie: daj mi rozwiązanie jeśli istnieje? u Pierwsze jest podstawowe u constraint solver rozwiązuje problem spełniania

12 Spełnianie więzów u Jak odpowiadamy na te pytania? u Proste podejście: wypróbuj wszystkie wartościowania.

13 Spełnianie więzów u Wyliczanie nie działa dla liczb rzeczywistych u Sprytniejsza wersja tej metody jest używana dla więzów w dziedzinach skończonych. u Jak rozwiązywać więzy dla liczb rzeczywistych? u Eliminacja Gaussa-Jordana (szkoła średnia?)

14 Eliminacja Gaussa-Jordana u Wybierz równanie c z C u Przepisz c do postaci x = e u Zastąp x wszędzie indziej w C przez e u Powtarzaj aż u wszystkie równania będą miały postać x = e u lub pewne z nich będzie d = 0 (d != 0) u Zwróc true w pierwszym przypadku false w drugim

15 Gauss-Jordan. Przykład Zamień X na 2Y+Z-1 zamien Y na -1 Zwróć false

16 Gauss-Jordan. Przykład Zamień X na 2Y+Z-1 Zamień Y na -1 Postać rozwiązana : Więzy w tej postaci są spełnialne

17 Postać rozwiązana u Zmienne nieparametryczne: pojawiają się po lewej stronie jednego równania u Zmienne parametryczne: pojawiają się po prawej stronie w dowolnej liczbie równań. u Rozwiązanie: wybierz wartości parametrów i określ wartości nieparametrów

18 Więzy drzewowe u Więzy drzewowe reprezentują dane strukturalne u Konstruktor drzew: napis u cons, node, null, widget, f u Stała: konstruktor lub liczba u Drzewo: u Stała jest drzewem u Konstruktor z listą > 0 drzew jest drzewem

19 Przykłady drzew order(part(77665, widget(red, moose)), quantity(17), date(3, feb, 1994)) cons(red,cons(blue,con s(red,cons(…))))

20 Więzy na drzewach u Wysokość drzewa: u stała ma wysokość 1 u drzewo z dziećmi t1, …, tn ma wysokość o 1 większą od maksimum wysokości t1,…,tn u Drzewo skończone: ma skończoną wysokość u Przykłady: wysokość 4 i wysokość

21 Termy u Term jest drzewem ze zmiennymi u Term: u Stała jest termem u Zmienna jest termem u Konstruktor z listą > 0 termów jest termem u Równanie termowe: s = t (s,t termy)

22 Przykłady termów order(part(77665, widget(C, moose)), Q, date(3, feb, Y)) cons(red,cons(B,cons(r ed,L)))

23 Riozwiązywanie węzłów na drzewach u Przypisz drzewa zmiennym aby otrzymać identyczne termy u cons(R, cons(B, nil)) = cons(red, L) u Podobna do Gaussa-Jordana u Rozpoczyna od zbioru równań C oraz od pustego zbioru równań na termach S u Kontynuuj aż do pustego C lub zwracaj false

24 Rozwiązywanie węzłów na drzewach u unify u unify(C) u Usuń równanie c z C u case x=x: nic u case f(s1,..,sn)=g(t1,..,tn): return false u case f(s1,..,sn)=f(t1,..,tn): u dodaj s1=t1,.., sn=tn do C u case t=x (x zmienna): dodaj x=t to C u case x=t (x zmienna): dodaj x=t to S u podstaw t za x wszędzie w C i w S

25 Przykład CS Tak jak w metodzie Gaussa-Jordana zmienne są parametrami i nieparametrami. Rozwiązanie otrzymamy przypisując parametrom (tu zmiennej T) dowolną wartość.

26 Dodatkowy przypadek u Czy istnieje rozwiązanie X = f(X) ? u NIE! (dla drzew skończonych) u jeśli wysokość X w rozwiązaniu jest n u wówczas f(X) ma wysokość n+1 u Occurs check: u przed podstawieniem t za x u sprawdź czy x nie pojawia się w t

27 Inne dziedziny więzowe u Jest ich wiele u Więzy boolowskie u Więzy na słowach u Świat bloków u i wiele innych, zwykle odnoszących się do dobrze znanej struktury matematycznej

28 Więzy boolowskie Używane do modelowania układów logicznych, etc Bramka XOR Więz boolowski opisujący bramkę xor

29 Więzy boolowskie Modelowanie układu ze zmiennymi,,wadliwości Więz modelujący, że tylko jedna bramka jest zepsuta Obserwowane zachowanie: Rozwiązanie:

30 Solwer boolowski niech m będzie liczbą więzów bazowych w C epsilon jest między 0 a 1 i określa stopień niezupełności for i := 1 to n do generuj losowe wartościowanie dla zmiennych w C if wartościowanie spełnia C then return true endif endfor return unknown

31 Więzy boolowskie u Coś nowego? u solver boolowski może zwrócić unknown u jest niezupełny (nie na wszystkie pytania odpowiada) u Działa w czasie wielomianowych, zupełny raczej nie (chyba, że P=NP). u Takie solwery mogą być użyteczne!

32 Więzy w świecie bloków Obiekty w świcie bloków leżeć mogą na podłodze lub na innych obiektach. Fizyka decyduje, które pozycje mogą być stabilne. Więzami bazowymi są np. red(X), on(X,Y), not_sphere(Y). podłoga Więzy nie muszą być matematyczne!

33 Więzy w świecie bloków Rozwiązaniem więzu w świecie bloków jest obrazek z podpisanymi blokami. Y X Z

34 Definicja solwera u Solwerem więzowym jest funkcja solv, która bierze więz C i zwraca true, false lub unknown w zależności od tego czy więz jest spełnialny czy nie u jeśli solv(C) = true to C jest spełnialne u jeśli solv(C) = false to C jest niespełnialne

35 Własności solwerów u Chcemy, żeby solwery miały następujące własności u dobre zachowanie: u bazujące na zbiorach: odpowiedź zależy od zbioru prymitywnych więzów u monotoniczne: jeżeli solwer zawodzi dla C1 to zawodzi również dla C1 /\ C2 u niezależne od nazw zmiennych

36 Właściwości solwera u Najbardziej restykcyjna własność solwera u zupełny: solwer jest zupełny, jeżeli zawsze odpowiada true lub false. (nigdy unknown)

37 Więzy Summary u Więzy are pieces of syntax used to model real world behaviour u A constraint solver determines if a constraint has a solution u Real arithmetic and tree Więzy u Properties of solver we expect (well- behavedness)