991 research outputs found

    Soar Checkers - An Intelligent Checkers Playing Agent in Soar

    Get PDF
    The classic board game of checkers is ideally suited for research in AI game-playing programs or agents. The objective behind Soar Checkers is to investigate if it is possible to create an agent-based game playing system that would beat novices with ease and at least challenge advanced novice to intermediate-level players by designing a rules-based expert system whose knowledge base consists of nothing more than the rules of checkers, and a set of guidelines for game-play based on good strategy. Soar was chosen as the platform for building this agent because it came built-in with features that facilitate creating rules-based expert systems, has been proven to be fairly reliable in developing such systems (including flight simulators) for over twenty years and makes it relatively straight-forward to have multiple agents play each other, and to add or modify features or strategies to the agents. Though the problem definition makes it inherently hard to objectively quantify the results, the objectives were successfully achieved for the most part. It was also seen that all other things being equal, the player going second ( White ) has a built-in advantage, thereby confirming a widely held belief among the checkers community

    Hybrid Minimax-MCTS and Difficulty Adjustment for General Game Playing

    Full text link
    Board games are a great source of entertainment for all ages, as they create a competitive and engaging environment, as well as stimulating learning and strategic thinking. It is common for digital versions of board games, as any other type of digital games, to offer the option to select the difficulty of the game. This is usually done by customizing the search parameters of the AI algorithm. However, this approach cannot be extended to General Game Playing agents, as different games might require different parametrization for each difficulty level. In this paper, we present a general approach to implement an artificial intelligence opponent with difficulty levels for zero-sum games, together with a propose of a Minimax-MCTS hybrid algorithm, which combines the minimax search process with GGP aspects of MCTS. This approach was tested in our mobile application LoBoGames, an extensible board games platform, that is intended to have an broad catalog of games, with an emphasis on accessibility: the platform is friendly to visually-impaired users, and is compatible with more than 92\% of Android devices. The tests in this work indicate that both the hybrid Minimax-MCTS and the new difficulty adjustment system are promising GGP approaches that could be expanded in future work

    A hybridisation technique for game playing using the upper confidence for trees algorithm with artificial neural networks

    Get PDF
    In the domain of strategic game playing, the use of statistical techniques such as the Upper Confidence for Trees (UCT) algorithm, has become the norm as they offer many benefits over classical algorithms. These benefits include requiring no game-specific strategic knowledge and time-scalable performance. UCT does not incorporate any strategic information specific to the game considered, but instead uses repeated sampling to effectively brute-force search through the game tree or search space. The lack of game-specific knowledge in UCT is thus both a benefit but also a strategic disadvantage. Pattern recognition techniques, specifically Neural Networks (NN), were identified as a means of addressing the lack of game-specific knowledge in UCT. Through a novel hybridisation technique which combines UCT and trained NNs for pruning, the UCTNN algorithm was derived. The NN component of UCT-NN was trained using a UCT self-play scheme to generate game-specific knowledge without the need to construct and manage game databases for training purposes. The UCT-NN algorithm is outlined for pruning in the game of Go-Moku as a candidate case-study for this research. The UCT-NN algorithm contained three major parameters which emerged from the UCT algorithm, the use of NNs and the pruning schemes considered. Suitable methods for finding candidate values for these three parameters were outlined and applied to the game of Go-Moku on a 5 by 5 board. An empirical investigation of the playing performance of UCT-NN was conducted in comparison to UCT through three benchmarks. The benchmarks comprise a common randomly moving opponent, a common UCTmax player which is given a large amount of playing time, and a pair-wise tournament between UCT-NN and UCT. The results of the performance evaluation for 5 by 5 Go-Moku were promising, which prompted an evaluation of a larger 9 by 9 Go-Moku board. The results of both evaluations indicate that the time allocated to the UCT-NN algorithm directly affects its performance when compared to UCT. The UCT-NN algorithm generally performs better than UCT in games with very limited time-constraints in all benchmarks considered except when playing against a randomly moving player in 9 by 9 Go-Moku. In real-time and near-real-time Go-Moku games, UCT-NN provides statistically significant improvements compared to UCT. The findings of this research contribute to the realisation of applying game-specific knowledge to the UCT algorithm

    Complexity, Heuristic, and Search Analysis for the Games of Crossings and Epaminondas

    Get PDF
    Games provide fertile research domains for algorithmic research. Often, game research helps solve real-world problems through the testing and refinement of search algorithms in game domains. Other times, game research finds limits for certain algorithms. For example, the game of Go proved intractable for the Min-Max with Alpha-Beta pruning algorithm leading to the popularity of Monte-Carlo based search algorithms. Although effective in Go, and game domains once ruled by Alpha-Beta such as Lines of Action, Monte-Carlo methods appear to have limits too as they fall short in tactical domains such as Hex and Chess. In a continuation of this type of research, two new games, Crossings and Epaminondas, are presented, analyzed and used to test two Monte-Carlo based algorithms: Upper Confidence Bounds applied to Trees (UCT) and Heuristic Guided UCT (HUCT). Results indicate that heuristic knowledge can positively affect UCT\u27s performance in the lower complexity domain of Crossings. However, both agents perform worse in the higher complexity domain of Epaminondas. This identifies Epaminondas as another domain that poses difficulties for Monte Carlo agents

    Quoridor agent using Monte Carlo Tree Search

    Get PDF
    This thesis presents a preliminary study using Monte Carlo Tree Search (MCTS) upon the board game of Quoridor. The system is shown to perform well against current existing methods, defeating a set of player agents drawn from an existing digital implementation

    A Survey of Monte Carlo Tree Search Methods

    Get PDF
    Monte Carlo tree search (MCTS) is a recently proposed search method that combines the precision of tree search with the generality of random sampling. It has received considerable interest due to its spectacular success in the difficult problem of computer Go, but has also proved beneficial in a range of other domains. This paper is a survey of the literature to date, intended to provide a snapshot of the state of the art after the first five years of MCTS research. We outline the core algorithm's derivation, impart some structure on the many variations and enhancements that have been proposed, and summarize the results from the key game and nongame domains to which MCTS methods have been applied. A number of open research questions indicate that the field is ripe for future work

    Machine Learning Techniques for the Development of a Stratego Bot

    Get PDF
    Stratego is a two-player, non-stochastic, imperfect-information strategy game in which players try to locate and capture the opponent\u27s flag. At the outset o f each game, players deploy their pieces in any arrangement they choose. Throughout play, each player knows the positions of the opponent’s pieces, but not the specific identities o f the opponent’s pieces. The game therefore involves deduction, bluffing, and a degree o f invention in addition to the sort o f planning familiar to perfect-information games like chess or backgammon. Developing a strong A.l. player presents three major challenges. Firstly, a Stratego program must maintain states o f belief about the opponent’s pieces as well as beliefs about the opponent’s beliefs. Beliefs must be updated according to in-game events. We propose to solve this using Bayesian probability theory and Bayesian networks. Secondly, any turn-based game-playing program must perform tree search as part o f its planning and move-making routine. Search in perfect-information games such as chess has been studied extensively and produced a wealth o f algorithms and heuristics to expedite the process. Stochastic and imperfect-information games, however, have received less general attention, though Schaeffer et al have made a significant effort to revisit this domain. Interestingly, the same family o f algorithms (Ballard’s Star-1 and Star-2) used in the stochastic perfect-information game of backgammon can be used in the deterministic, imperfect-information domain o f Stratego. The technical challenge here, just as in the stochastic domain, is to optimize node cutoffs. Thirdly, a strong Stratego program should have some degree o f inventiveness so that it can avoid predictable play. The game’s intricacy comes from information being concealed from the players. A program which plays too predictably (that is, according to known or obvious tactics) has a significant disadvantage against a more creative opponent. There is a balance, however, between tactics’ being novel and being foolish. Current, strong Stratego programs have been developed by human experts (such as Vincent deBoer), whose tactical preferences are hard-coded into those programs. Since we claim no especial talent for Stratego ourselves, part o f the development challenge will be to allow the program to discover tactical preferences and advantages on its own. Withholding explicitly programmed heuristics and allowing machines to discover tactics on their own has led to original and powerful computer play in the past (note Tesauro’s success with TD-Gammon). We hope our program will likewise learn to play competitively without depending on instruction from a mediocre or predictable player. Various techniques from machine learning, including both supervised and unsupervised learning, are applied to this objective. At our disposal are more than 50,000 match records from an online Stratego site. Part of developing a strong player will involve separating the truly advantageous features in these data from features which are merely frequent. The learning process must be objective enough to avoid bias and predictability, yet robust enough to exploit utility. We introduce a modeling method which allows partial instruction as guidelines for feature detection

    WOPR in search of better strategies for board games

    Get PDF
    Board games have been challenging intellects and capturing imaginations for more than five thousand years. Researchers have been producing artificially intelligent players for more than fifty. Common artificial intelligence techniques applied to board games use alpha-beta pruning tree search techniques. This paper supplies a frame- work that accommodates many of the diverse aspects of board games, as well as exploring several alternatives for searching out ever better strategies. Techniques examined include optimizing artificial neural networks using genetic algorithms and backpropagation

    Selective search in games of different complexity

    Get PDF

    Quantified weighted constraint satisfaction problems.

    Get PDF
    Mak, Wai Keung Terrence.Thesis (M.Phil.)--Chinese University of Hong Kong, 2011.Includes bibliographical references (p. 100-104).Abstracts in English and Chinese.Chapter 1 --- Introduction --- p.1Chapter 1.1 --- Constraint Satisfaction Problems --- p.1Chapter 1.2 --- Weighted Constraint Satisfaction Problems --- p.2Chapter 1.3 --- Quantified Constraint Satisfaction Problems --- p.3Chapter 1.4 --- Motivation and Goal --- p.4Chapter 1.5 --- Outline of the Thesis --- p.6Chapter 2 --- Background --- p.7Chapter 2.1 --- Constraint Satisfaction Problems --- p.7Chapter 2.1.1 --- Backtracking Tree Search --- p.9Chapter 2.1.2 --- Local Consistencies for solving CSPs --- p.11Node Consistency (NC) --- p.13Arc Consistency (AC) --- p.14Searching by Maintaining Arc Consistency --- p.16Chapter 2.1.3 --- Constraint Optimization Problems --- p.17Chapter 2.2 --- Weighted Constraint Satisfaction Problems --- p.19Chapter 2.2.1 --- Branch and Bound Search (B&B) --- p.23Chapter 2.2.2 --- Local Consistencies for WCSPs --- p.25Node Consistency --- p.26Arc Consistency --- p.28Chapter 2.3 --- Quantified Constraint Satisfaction Problems --- p.32Chapter 2.3.1 --- Backtracking Free search --- p.37Chapter 2.3.2 --- Consistencies for QCSPs --- p.38Chapter 2.3.3 --- Look Ahead for QCSPs --- p.45Chapter 3 --- Quantified Weighted CSPs --- p.48Chapter 4 --- Branch & Bound with Consistency Techniques --- p.54Chapter 4.1 --- Alpha-Beta Pruning --- p.54Chapter 4.2 --- Consistency Techniques --- p.57Chapter 4.2.1 --- Node Consistency --- p.62Overview --- p.62Lower Bound of A-Cost --- p.62Upper Bound of A-Cost --- p.66Projecting Unary Costs to Cθ --- p.67Chapter 4.2.2 --- Enforcing Algorithm for NC --- p.68Projection Phase --- p.69Pruning Phase --- p.69Time Complexity --- p.71Chapter 4.2.3 --- Arc Consistency --- p.73Overview --- p.73Lower Bound of A-Cost --- p.73Upper Bound of A-Cost --- p.75Projecting Binary Costs to Unary Constraint --- p.75Chapter 4.2.4 --- Enforcing Algorithm for AC --- p.76Projection Phase --- p.77Pruning Phase --- p.77Time complexity --- p.79Chapter 5 --- Performance Evaluation --- p.83Chapter 5.1 --- Definitions of QCOP/QCOP+ --- p.83Chapter 5.2 --- Transforming QWCSPs into QCOPs --- p.90Chapter 5.3 --- Empirical Evaluation --- p.91Chapter 5.3.1 --- Random Generated Problems --- p.92Chapter 5.3.2 --- Graph Coloring Game --- p.92Chapter 5.3.3 --- Min-Max Resource Allocation Problem --- p.93Chapter 5.3.4 --- Value Ordering Heuristics --- p.94Chapter 6 --- Concluding Remarks --- p.96Chapter 6.1 --- Contributions --- p.96Chapter 6.2 --- Limitations and Related Works --- p.97Chapter 6.3 --- Future Works --- p.99Bibliography --- p.10
    • …
    corecore