Time Complexity of Generating Solvable Boards for Minesweeper
Laen...
Kuupäev
Autorid
Ajakirja pealkiri
Ajakirja ISSN
Köite pealkiri
Kirjastaja
Tartu Ülikool
Abstrakt
This Bachelor’s thesis aimed to determine the time complexity of generating solvable boards for the game Minesweeper. This included implementing Minesweeper in Java to test the time complexity. During this thesis, explanations of solving algorithms for Minesweeper are given, and how these were modified for use in this project. Ideas for board generation algorithms are also discussed, and the generation algorithm used is explained. A hypothesis of Θ(nc^n), where c>1 is a constant that depends on mine density, and time complexity is proposed and shown to fit experimental data.
Bakalaureusetöö eesmärk oli määrata Minesweeperi mängu jaoks lahenduva laua genereerimise ajaline keerukus. Selle jaoks loodi Java programm, kus implementeeriti Minesweeper, et sobivust testida. Töö käigus selgitatakse Minesweeperi lahendamise algoritme ning seda, kuidas neid töö jaoks modifitseeriti. Selgitatakse ka ideid laua genereerimise algoritmi disainis ja genereerimise algoritmi ennast. Viimaks püstitatakse hüpoteesiks ajalise keerukuse klass Θ(nc^n), kus c>1 on konstant, mis sõltub miinitihedusest, ning näidatakse empiiriliselt selle sobivust.
Bakalaureusetöö eesmärk oli määrata Minesweeperi mängu jaoks lahenduva laua genereerimise ajaline keerukus. Selle jaoks loodi Java programm, kus implementeeriti Minesweeper, et sobivust testida. Töö käigus selgitatakse Minesweeperi lahendamise algoritme ning seda, kuidas neid töö jaoks modifitseeriti. Selgitatakse ka ideid laua genereerimise algoritmi disainis ja genereerimise algoritmi ennast. Viimaks püstitatakse hüpoteesiks ajalise keerukuse klass Θ(nc^n), kus c>1 on konstant, mis sõltub miinitihedusest, ning näidatakse empiiriliselt selle sobivust.
Kirjeldus
Märksõnad
Minesweeper, ajaline keerukus, genereerimine, algoritm, ajaline keerukus