Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Problem generowania i rozwiązywania plansz sudoku o określonym poziomie trudności Mateusz Mikłuszka 171001 Mikołaj Szkutnik 156545 Kamil Markuszewski 171016.

Podobne prezentacje


Prezentacja na temat: "Problem generowania i rozwiązywania plansz sudoku o określonym poziomie trudności Mateusz Mikłuszka 171001 Mikołaj Szkutnik 156545 Kamil Markuszewski 171016."— Zapis prezentacji:

1 Problem generowania i rozwiązywania plansz sudoku o określonym poziomie trudności Mateusz Mikłuszka Mikołaj Szkutnik Kamil Markuszewski

2 Sudoku Łamigłówka logiczna Jap. sūdoku Sūji wa dokushin ni kagiru Cyfry muszą być pojedyncze

3 Zasady: plansza Tablica dwuwymiarowa 9x9 Podzielona na 9 tablic dwuwymiarowych 3x3

4 Zasady: niepowtarzalność Każdy kwadrat 3x3 musi być wypełniony cyframi 1-9 Cyfry w obrębie kwadratu 3x3 nie mogą się powtarzać

5 Zasady: niepowtarzalność Cyfry w kolumnie 1x9 nie mogą się powtarzać (cyfra 2) Cyfry w rzędzie 9x1 nie mogą się powtarzać (cyfra 3) Rzędy i kolumny muszą być wypełnione cyframi 1-9

6 Ciekawostka: rodzaje sudoku Sudoku samurai - składa się z pięciu kwadratów połączonych ze sobą w kształcie litery X Sudoku diagonalne - cyfry nie mogą się powtarzać po przekątnych kwadratu Sudoku trójwymiarowe - w kształcie kostki sześciennej o wymiarach 9x9x9 Killer Sudoku – początkowa plansza nie ma żadnych wpisanych cyfr, ale zamiast tego ma zaznaczone obszary obejmujące od 2 do 7 pól, dla których podana jest suma zawartych w nich cyfr Sudoku magnetyczne - niedozwolone jest stykanie się takich samych cyfr w rogach kwadratów Sudoku na większej planszy - z większą liczbą symboli

7 Rozwiązywanie: Sposób 1 - eliminacja Zaczynamy od cyfry która występuje najczęściej Eliminacja rzędów/kolum do których cyfry nie możemy wstawić

8 Rozwiązywanie: Sposób 2 dopełnianie Dopełnianie Szukamy najbardziej zapełnionego rzędu / kolumny / kwadratu Wypełniamy brakującymi cyframi

9 Rozwiązywanie: Sposób 3 -oznaczanie Sposób polegający na zaznaczaniu możliwości

10 Generowanie plansz Rozwiązywanie jest o wiele prostsze niż generowanie plansz Liczba możliwych plansz Plansza musi posiadać minimum 17 cyfr początkowych Poniżej 17 cyfr istnieje wiele rozwiązań

11 Analiza trudności generowania plansz Nie istnieje jeden sposób analizy trudności plansz – własne metryki Analiza czasu działania wybranych algorytmów (Rule based)

12 Metryki Liczba łącznie wypełnionych pól Puste pola w kolumnie/wierszu/kwadracie Funkcja więzów i Ukryci kandydaci Liczba wystąpień danej cyfry

13 Sprawdzanie poprawności sudoku Istnieje rozwiązanie Dokładnie 1 rozwiązanie Przeszukanie zbiorku rozwiązań – Brute Force

14 Algorytmy rozwiązujące sudoku Deterministyczne Niedeterministyczne Metaheurystyka – odpada Backtracking – Brute Force Rule Based – Funkcja więzów

15 Algorytmy generujące sudoku Wylosowanie planszy Permutacje kolumn i wierszy Usuwanie pól Usuwanie konkretnych pól

16 Generowanie: Wylosowanie planszy Daje głównie złe wyniki Jest niezbędny Korzystają z niego pozostałe algorytmy Bardzo wrażliwy na liczbę pól

17 Generowanie: Permutacje permutowanie kolumn 3x9 w obrębie kwadratu 9x9 permutowanie wierszy 9x3 w obrębie kwadratu 9x9 permutowanie kolumn 1x9 w obrębie kolumn 3x9 permutowanie wierszy 9x1 w obrębie wierszy 9x3 (Rys )

18 Generowanie: Permutacje

19 Można użyć do generowania bazy plansz Można zamieniać też cyfry ze sobą

20 Generowanie: Usuwanie Zaczynamy od rozwiązanego sudoku Usuwamy losowo pola Co iterację sprawdzamy poprawność Kończymy w zależności od sumy pól

21 Generowanie: Usuwanie

22 Generowanie: Usuwanie konkretnych pól Zaczynamy od rozwiązanego sudoku Usuwamy pola tak by zwiększyć trudność Na podstawie metryk trudności Co iterację sprawdzamy poprawność Kończymy w zależności od sumy pól

23 Gra Sudoku: Interfejs użytkownika Stworzyliśmy grę wykorzystującą nasze algorytmy Język C# Środowisko Unity 3d

24 Wstępne porównanie wyników

25

26

27

28 Gra Sudoku: Interfejs użytkownika


Pobierz ppt "Problem generowania i rozwiązywania plansz sudoku o określonym poziomie trudności Mateusz Mikłuszka 171001 Mikołaj Szkutnik 156545 Kamil Markuszewski 171016."

Podobne prezentacje


Reklamy Google