Large classes of game theoretic problems seem to defy attempts of finding polynomial-time algorithms while analyzing large amounts of data. This premise leads naturally to the possibility of using efficient parallel computing implementations when seeking exact solutions to some of these problems. Although alpha beta algorithms for more than one-player game-tree searches show moderate parallel performance, this paper sets forth an alpha beta strategy enhanced with transposition tables in order to offer satisfactory speedups on high performance servers. When the access to the transposition tables is done in low constant delay time, the achieved speedups should approach the theoretical upper bounds of the code parallelism. We tested the strategy on a well-known combinatorial game.Keywords: Constant Sum Games, Game Computation Parallelization Strategies1IntroductionHigh-performance parallel computing is being increasingly used in computational science to solve large-scale algorithmically intensive problems. Recent technological advances in processor development gave rise to a large range of unexpansive chips with tens or even hundreds of cores. These multi-core chips enhanced with simultaneous multithreading, dedicated fast access memory and manifold specific cores, promise additional performance and efficiency gains [1] [2], especially in processing computational science applications.Large classes of game theoretic problems seem to defy attempts of finding polynomialtime algorithms [3-7], requiring super-polynomial time algorithmic schemes and, thereby, being computationally intensive. Furthermore, large quantities of data can potentially be generated, analyzed and stored while exploring exponentially growing game trees.These premises lead naturally to the possibility of applying highly parallel computational implementations when aiming to find exact solutions for many game theory problems. We propose a speedup strategy to allow constant sum games computations to take full advantage of the parallelism and the efficient scheduling strategies implemented on these architectures [8] [9], This way, we obtain fast and accurate sub-game utility estimations by scaling up the amount of required resources and accelerating the dissemination of intermediate results.This paper is organized as follows: section 2 is devoted to presenting the underlying game theoretic concepts used in this research and related algorithmic complexity aspects. The speedup strategy for constant sum games is expounded in the third section. A case study together with its experimental plan is detailed in section 4. Results and conclusions are presented in sections 5 and 6.2 Overview of relevant Game Theory ConceptsThe current section starts off by briefly restating the definitions of the main concepts used throughout the paper, and proceeds by expounding the underlying considerations on the algorithmic complexity of game equilibria computations.Brief Overview of underlying game theoretic ConceptsA finite perfect-information game in extensive form is defined as a tuple G = (JV, A, H, Z, χ, p, a, u) where:* N is the finite set of rational players;* A is the set of possible actions of the players;* H is the set of choice nodes;* χ: H -> 2a is the choice function;* p: H -> N is the player function which indicates player to perform the move at some given choice node;* σ: H x A -> H U Z is the successor function. This function maps pairs of choice nodes and possible actions to other successor terminal or choice nodes;* u = (u1; ...,U|N|), whereu?:Z -> R is a utility function for the player i on the terminal nodes Z,* Z is the set of terminal nodes in the game three. Each terminal node of the game tree has an N-tuple of payoffs, one for each player at the end of every possible play.Each player has a utility function defined for every game outcome. …
Read full abstract