5 research outputs found

    Enhanced Branch-and-Bound Framework for a Class of Sequencing Problems

    Get PDF

    Automatic discovery of interesting chess compositions

    Get PDF
    The aim of the thesis was to develop a computer program to help creating and dealing with interesting chess problems. Chess problem, also called a chess composition, is a puzzle on a chessboard, which represents a task to be solved. Task usually requires moving the chess pieces on the chessboard using classic chess rules and is not necessarily related to checkmating the opponent. We know several types of chess problems: directmates, helpmates, selfmates, serialmovers, chess studies, retrograde analysis etc. We can set additional requirements to a player, for instance prescribed last move of the figure to checkmate the opponent. Special type of chess problems are construction tasks, that may be without diagram and typically contain just a task such as ``set a certain position`` or ``construct a game with certain properties``. For example, an interesting construction task would be to construct the shortest game of chess ending with checkmating opponent with a pawn, which was just promoted to a knight. Such problems may be of an interest not only for chess players, but also for the general public, as they require only knowledge of basic chess rules. Chess is a very demanding game in terms of complexity, which means that many different options are available for every chess piece movement. Consequently, in successive moves number of possible combinations can be enormous. For illustration: from starting chess position we can finish a four-move game (four moves by each player) in almost 85 billion different combinations. This combinatorial explosion is the major reason that chess problems and especially construction tasks can be extremely difficult - not only for humans but also for modern computers. We can easily verify with computer that brute force search will not bring results. Smarter approach respectively the introduction of artificial intelligence algorithms is needed. Within the thesis we have developed a computer program by which a computer can overcome this combinatorial complexity and can be used to solve a variety of unusual chess problems, particularly construction tasks. The program is based on the use of heuristic search and advanced heuristics, whose task is to guide the search towards a given goal. We used additional mechanisms, such as hash tables, possibility to deactivate chess pieces and search for several solutions at the same time, to cope with the combinatorial explosion. In addition to solving of already known problems, the program, which is available online in the open source version and therefore to the general public, can also serve as a tool to discover new interesting chess compositions

    Temporal Difference Learning in Complex Domains

    Get PDF
    PhDThis thesis adapts and improves on the methods of TD(k) (Sutton 1988) that were successfully used for backgammon (Tesauro 1994) and applies them to other complex games that are less amenable to simple pattem-matching approaches. The games investigated are chess and shogi, both of which (unlike backgammon) require significant amounts of computational effort to be expended on search in order to achieve expert play. The improved methods are also tested in a non-game domain. In the chess domain, the adapted TD(k) method is shown to successfully learn the relative values of the pieces, and matches using these learnt piece values indicate that they perform at least as well as piece values widely quoted in elementary chess books. The adapted TD(X) method is also shown to work well in shogi, considered by many researchers to be the next challenge for computer game-playing, and for which there is no standardised set of piece values. An original method to automatically set and adjust the major control parameters used by TD(k) is presented. The main performance advantage comes from the learning rate adjustment, which is based on a new concept called temporal coherence. Experiments in both chess and a random-walk domain show that the temporal coherence algorithm produces both faster learning and more stable values than both human-chosen parameters and an earlier method for learning rate adjustment. The methods presented in this thesis allow programs to learn with as little input of external knowledge as possible, exploring the domain on their own rather than by being taught. Further experiments show that the method is capable of handling many hundreds of weights, and that it is not necessary to perform deep searches during the leaming phase in order to learn effective weight

    Replacement Schemes for Transposition Tables

    No full text
    Almost every chess program makes use of a transposition table, typically implemented as a large hash table. Even though this table is usually made as large as possible, subject to memory constraints, collisions occur. Then a choice has to be made which position to retain or to replace in the table, using some replacement scheme. This article compares the performance of seven replacement schemes, as a function of transposition-table size, on some chess middle-game positions. A two-level table, using the number of nodes in the subtree searched as the deciding criterion, performed best and is provisionally recommended. 1 Introduction Chess programs analyze positions while building trees. However, a closer look shows that the search space could better be explored by graphs, due to the fact that a position can be reached by several orderings of moves. Such resultant positions are known as transpositions. When encountering a position again, the size of the search tree can be reduced conside..
    corecore