Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

1 Teoretyczne i praktyczne aspekty realizacji komputerowego systemu do licytacji i rozgrywki brydzowej - czesc II Szymon Piądłowski.

Podobne prezentacje


Prezentacja na temat: "1 Teoretyczne i praktyczne aspekty realizacji komputerowego systemu do licytacji i rozgrywki brydzowej - czesc II Szymon Piądłowski."— Zapis prezentacji:

1 1 Teoretyczne i praktyczne aspekty realizacji komputerowego systemu do licytacji i rozgrywki brydzowej - czesc II Szymon Piądłowski

2 Plan prezentacji 2 Agenda Przypomnienie Przypomnienie Brydż w 3 częściach Brydż w 3 częściach Licytacja Ocena liczby lew (DD problem) Rozgrywka Literatura Literatura

3 Historia 3 Przypomnienie Brydż w informatyce 3 silne programy brydżowe (JackBridge, GIB, Bridge Baron 16)3 silne programy brydżowe (JackBridge, GIB, Bridge Baron 16) Stworzenie programu brydżowego – praca magisterska Szymon Piądłowski na Wydziale MiNI promotor prof. nzw. dr hab. Jacek MańdziukStworzenie programu brydżowego – praca magisterska Szymon Piądłowski na Wydziale MiNI promotor prof. nzw. dr hab. Jacek Mańdziuk

4 Brydż podstawy 4 Przyjęte założenia Założenia związane z punktacją 52 karty52 karty – –cała talia 13 kart (2,3,…,10,J,Q,K,A) –4 kolory (Pik, Kier, Karo, Trefl) 40punktów w talii40 punktów w talii : –Walet (J)=1, Królowa (2) Q=2, Król (K)=3, As(A)=4, reszta 0 4 graczy4 graczy – 2 pary po 2 graczy (NS i WE), każdy po 13 losowych kart 3838 odzywek w licytacji

5 Brydż podstawy 5 Przyjęte założenia Podział gry:Podział gry: Licytacja –Licytacja – uzgadnianie kontraktu (para z wyższym kontraktem wygrywa licytację) Rozgrywka + obronaRozgrywka + obrona – para, wygrana z licytacji próbuje obronić kontrakt, przeciwna próbuje przeszkodzić 3x x – max liczba możliwych kontraktów do wylicytowania 5,36 x ,36 x – rozdań kart 5,55 x ,55 x – możliwości rozegrania kart (średnio ) – teoretycznych możliwych znaczeń odzywki licytacji ( w praktyce skończona)

6 Licytacja 6 Licytacja – znaczenie odzywki Algorytm określania znaczenia odzywkiAlgorytm określania znaczenia odzywki 1.jeśli odzywka jest znana jako odpowiedz na wcześniejsze idź do 2, jeśli nie idź do 5 2.odczytaj ograniczenie związane z odzywką idź do 4 3.wyszukaj wszystkie znaczenia odzywki, które spełniają wcześniejsze ograniczenia 4.jeśli nie możesz znaleźć znaczenia zapytaj partnera osoby licytującej (zapisz do danych) 5.jeśli partner nie zna znaczenia pytaj osobę licytującą (zapis, ale nie uwzględniaj teraz) 6.nałóż odgraniczenie na karty licytującego 7.uwzględniając odzywkę zredukuj ograniczenia partnera do możliwych Algorytm minimalizuje liczbę ograniczeń tak, aby uwzględniane zostały te ograniczenia, które mają sens z punktu widzenia licytacyjnego. Algorytm działa jako monitor odzywek wspólny dla wszystkich graczy

7 Licytacja 7 Licytacja – parametry ograniczeń Uwzględniane parametry ograniczeń:Uwzględniane parametry ograniczeń: Liczba kart (>=)w treflu, karo, kier, piku Czy rozkład pozostałych (wszystkich) kart jest równomierny, tzn. 4414,4333,4432, (333,444,222,323,121,434,itd.) Liczba asów Liczba króli Liczba punków w granicach (z uwzględnienie więcej niż, mniej niż) czy otwarcie, czy zakończenie Potrzeba dodania:Potrzeba dodania: Czy odzywka forsująca Przedziały w liczbie kart (da to dodatkowo określenia, czy jest fit, transfery, może znacznie poprawić licytację)

8 Licytacja 8 Licytacja – znaczenie odzywki Rezultaty:Rezultaty: Znaczna redukcja ograniczeń (m na rundę) Mała liczba niejednoznaczności (mniej światów kart do sprawdzenia) Znacznie przyspieszyło działanie algorytmu (pamięciowo n-krotnie, czasowo trudno ocenić) Nauczanie nowych odzywek poprawia licytację Mało odzywek większe błędy przy ustalaniu kontraktu Wady:Wady: Ograniczony sposób komunikacji (można wprowadzać rozszerzenia) WAŻNE (n >> m) !!!

9 Licytacja 9 Licytacja – ustalenie kart graczy Algorytm:Algorytm: 1.Usuń zapamiętane rozkłady 2.jeśli każdy już licytował idź dalej, jeśli nie wyjdź 3.Utwórz listę ostatnich (po nałożeniu) ograniczeń dla każdego z graczy 4.Weź po największym ograniczeniu (w sensie punktowym) dla każdego z graczy 5.Rozdziel karty punktowe pomiędzy graczami tak, aby spełniały ograniczenia 6.Rozdziel pozostałe karty pomiędzy graczami tak, aby spełniały ograniczeni 7.Ponieważ staram się rozkładać karty w miarę równomiernie oznacza to najbardziej prawdopodobny rozkład 8.Zapamiętaj rozkład kart 9.Dla wszystkich kombinacji ograniczeń zmień ograniczenie dla jednego z graczy i wykonaj punkty 5 - 8

10 Licytacja 10 Licytacja – ustalenie kart graczy Wady przyjętego rozwiązania:Wady przyjętego rozwiązania: Nie uwzględniam wszystkich światów (tylko te najbardziej prawdopodobne) Może dawać całkowicie błędne wyniki (w fazie testów) Zdarza się, że się pogubi i nie wybierze ograniczenia, które było zgłoszone Zaleta przyjętego rozwiązania:Zaleta przyjętego rozwiązania: Szybkość Mała zajętość pamięciowa (max kilkaset światów)

11 Licytacja 11 Licytacja – następna odzywka Algorytm:Algorytm: 1.jeśli istnieje ostatnia odzywka partnera to idź do 2, jeśli nie idź do 4 2.wyznacz dopuszczalne odzywki,które partner rozumie 3.wybierz odzywki, które pokrywają się z ograniczeniami dotychczas zgłoszonymi, idź do 5 4.znajdź otwarcia, które są ograniczeniami naszej karty, idź do 6 5.wyznacz odzywki, które są ograniczeniami naszej karty 6.jeśli jest po pierwszej rundzie wyznacz karty przeciwników, idź do 7, jeśli nie idź do 9 7.sprawdź maksymalną liczbę lew jaką ugramy dla wszystkich możliwych wariantów uwzględniając zgłoszone odzywki (max 20) 8.wybierz odzywki, które są <= niż liczba lew możliwa do ugrania na danym atu, idź do 10 9.wybierz odzywki dopuszczalne z ograniczeń oraz większe, niż ostatnia odzywka 10.jeśli mamy dopuszczalne odzywki wybierz tą najbliższą (szacowanie punktowe z ograniczeń), idź do 12, jeśli nie idź do ustaw PAS jako odzywkę wybraną 12.zgłoś odzywkę

12 Licytacja 12 Licytacja – następna odzywka Wyniki:Wyniki: Przy małej liczbie wprowadzonych znaczeń odzywek, szybko pasuje Jeśli są wprowadzone otwarcia do poziomu 4 (texas) wówczas szybko podbija w górę (licytuje otwarciami) – system zbliżony do naturalnego Przy wprowadzeniu pełnych sekwencji odgaduje co mówimy i licytuje poprawnie, istnieją sytuacje, w których się gubi i podbija stawkę Niestety nie udało mi się zmusić algorytmu do stworzenia generalizacji, opiera się raczej o kanony licytacyjne, nie szuka nowych rozwiązań

13 Licytacja 13 Licytacja - podsumowanie 1.Licytacja jest wieloznaczna 2.3 z 4 problemów trzeba rozwiązać 3.Nie ma rozwiązań szybkich, są tylko pamięciochłonne 4.Dobrze by było jakoś nauczać

14 Licytacja 14 Licytacja – DD solver Sieć:Sieć: 52x4-26x z czego warstwa 52x4 jest warstwą wejściową Dane do nauczania biblioteka GIB rozdania z wyliczonymi optymalną liczbą lew (20 przypadków) Sieć Feed Forward Nauczanie Backpropagation z stępującym krokiem Ustalenia parametrów do nauczania:Ustalenia parametrów do nauczania: losowo wybranych próbek 85% nauczanych 5% weryfikacja Testowane kroki r0=(0.005,0.01,0.025, 0.05, 0.1, 0.25 oraz zstępujący ustalany zgodnie z wzorem r=r0/(r0+krok) )

15 Licytacja 15 Licytacja – DD solver Nauczanie finalne:Nauczanie finalne: 82% z wszystkich losowo wybranych próbek (nie powtarzalne) 5% weryfikacja (nie powtarzalne z wyższymi) Krok zstępujący zgodny z wcześniej podanym wzorem zaczynając od r0=0.1 Wyniki końcowe:Wyniki końcowe: błąd 45% błąd 15% różnica < +/-1 lewa 1-3% różnica < +/- 2 lewe Czas nauczania końcowego:Czas nauczania końcowego: 11 min na iterację 600 iteracji

16 Licytacja 16 Licytacja – wyniki nauczania Wykres pokazuje zależność ilości poprawnych wyników od iteracji w procesie nauczania

17 Licytacja 17 Licytacja – wyniki nauczania Wykres pokazuje zależność ilości poprawnych wyników od iteracji w procesie nauczania gdzie różnica liczby lew <= 1

18 Licytacja 18 Licytacja – wyniki nauczania Wykres pokazuje zależność ilości poprawnych wyników od iteracji w procesie nauczania gdzie różnica liczby lew <= 2

19 Licytacja 19 Licytacja – DD solver Nauczanie finalne:Nauczanie finalne: 82% z wszystkich losowo wybranych próbek (nie powtarzalne) 5% weryfikacja (nie powtarzalne z wyższymi) Wyniki końcowe dla nauczania trefli:Wyniki końcowe dla nauczania trefli: błąd 45% (wyjątek bez atu) błąd 15% różnica < +/-1 lewa 1-3% różnica < +/- 2 lewe Wyjątek stanowi bez atu, prawdopodobnie inny parametry uczące Czas nauczania końcowego:Czas nauczania końcowego: 11 min na iterację 600 iteracji

20 Program w ramach pracy magisterskiej 20 Działający program

21 Literatura wprowadzająca 21 Literatura [1]GIB:Imperfect Information in a Computationallu Challenging Game [1] GIB:Imperfect Information in a Computationallu Challenging Game Mathew L. Ginsberg, Journal of AI Research 2001 [2] Control Strategies in HTN Planning [2] Control Strategies in HTN Planning - Dana S. Nau, Stephen J. J. Smith, Kuthluhan Erol, IAAI Conference 1998 [3] Hand Evaluation in the Game of Contract Bridge [3] Hand Evaluation in the Game of Contract Bridge Richard Cowan, Sydney 1986 [4] Artificia Neural Networks for Solving Double Dummy Bridge Problems [4] Artificia Neural Networks for Solving Double Dummy Bridge Problems Krzysztof Mossakowski, Jacek Mańdziuk, ICAISC 2004 [5] Heurystyki w stochastyczno-statystycznym modelu gry w brydża [5] Heurystyki w stochastyczno-statystycznym modelu gry w brydża - Andrzej Matuszewski, IPIPAN 2007 (przed publikacją)


Pobierz ppt "1 Teoretyczne i praktyczne aspekty realizacji komputerowego systemu do licytacji i rozgrywki brydzowej - czesc II Szymon Piądłowski."

Podobne prezentacje


Reklamy Google