Article

Pool Physics Simulation by Event Prediction 2: Collisions.

Authors:
To read the full-text of this research, you can request a copy directly from the authors.

Abstract

A predictive event-based method to simulate the physics of the game of pool is described, including event time prediction for collisions between balls and between balls and the rails and pockets of the table. The method uses the vector parameterization of the equation of motion of a moving ball to analytically predict the time of occurence of collision events. The method is both accurate, since it returns exact analytical solutions for ball trajectories using no linear approximations, and efficient, since it requires a minimal number of floating point operations for trajectory solution and collision prediction. It is suitable for use within a game tree search, which requires a great many potential shots to be modeled efficiently, and within a robotic pool system, which requires high accuracy in predicting shot outcomes.

No full-text available

Request Full-text Paper PDF

To read the full-text of this research,
you can request a copy directly from the authors.

... Various simulations and analysis were exercised on different popular pool games including 8-ball and 9-ball billiards [9,[17][18][19]. A program, PickPocket [17], was developed based on a traditional search framework similar to games such as chess, and was adapted to the continuous stochastic domain of billiards. ...
... Two optimal algorithms are presented: probabilistic search and Monte Carlo search. Greenspan [18,19,23] further analyzed the physics of billiard motions and developed a library as a physics engine for actual gaming simulations. Francois and Dussault [22] have used optimization techniques to create an AI simulation program for the billiard ball repositioning strategies. ...
... Angle DOC (angle 'd') practically represents the tolerance angle to sink an object ball into a pocket. In the mean time, any l distance shorter than l th will also Table 1 Comparisons of relevant pool learning tools and setups [1,4,25,6,8,10,5,18,19,26,23,17,20,21]. ...
Article
Full-text available
Selecting the best sequence of shots for a given cue position is not an easy task in a game of billiards. The repositioning of the cue after its collision with an object ball determines its success on successive shots. A previous paper by the author was able to assist users in order to perfect a shot based on a selection criterion of maximum angle tolerance. This paper further extends the aiming capability to include a calculation of the ideal speed for the repositioning of the cue ball. The system makes use of a vision system for cue and object balls, and cue stick tracking. Users are able to adjust the cue stick in terms of both the aiming direction and hitting velocity according to the guidance information analyzed by a gaming strategy of this work. A new strategy is proposed to apply the maximum tolerance angle search sequentially twice. One on the pre-collision shot and the second on the post collision path. Additional to the maximum tolerance angle criterion, this paper also proposes a new visible object ball count criterion to assist cue ball repositioning strategy for both direct and indirect shots. This criterion was developed based on an analysis of the zero tolerance zone angle. It has been specifically tested to verify its relation with the successive sink rate using proposed guidance system. The experimental results of the maximum tolerance angle repositioning strategy of our training facility as tested by users with different skill levels all out performed the results without the advice for the same set of users. In addition, the distribution pattern of maximum tolerance test showed the highest degree of similarity with that of accessibility count as user skill level increases. This not only proves the reliability of our training system, but also proves the effectiveness of our algorithm for optimal repositioning.
... This allows to simplify the collision detection to simultaneous quadratic equations, for which closed form formulae are available. [16,18,22]. Moreover, extension to 3D simulation still may be described by piecewise parametric quadratic equations. ...
... The first three instances of the pool Olympiads used the PoolFiz simulator [16,18,17], lately replaced by the re-implementation FastFiz [2]. This simulator implements the simplified 2D rolling equations; the present implementation neglects any spin in the e 3 axis. ...
... This allows to simplify the collision detection to simultaneous quadratic equations, for which closed form formulae are available. [16,18,22]. Moreover, extension to 3D simulation still may be described by piecewise parametric quadratic equations. ...
... The first three instances of the pool Olympiads used the PoolFiz simulator [16,18,17], lately replaced by the re-implementation FastFiz [2]. This simulator implements the simplified 2D rolling equations; the present implementation neglects any spin in the e 3 axis. ...
Chapter
Computational and robotic pool has received increasing attention over the past few years. The challenges are important. In this survey, we focus on the computational aspect but nevertheless, acknowledge that the robotic aspect is both, very important and very difficult. Computationally, one may roughly split the tasks into three main aspects: simulation of the physics, execution of the shots, and planning of sequences of shots. We will discuss these aspects from an OR‐optimization point of view. The planning aspect also attracts the interest of the artificial intelligence community, and links between both approaches will be revealed. We will present the state‐of‐the‐art in this new research area, as well as the obstacles that remain before a computer–robotic system actually challenges a human champion.
... FastFiz [3] on the other hand is a physics based library developed solely for the mechanics of billiard games. FastFiz is a faster version of PoolFiz which is documented in [4], [5], [6]. ...
... The physics of billiards are quite complex, as the motion of balls and results of collisions depend on the spin of the ball(s) involved as well as their direction and velocity. Leckie's and Greenspan's poolfiz [16,17,19] is a physics simulator that, given an initial table state and a shot to execute, finds the resulting table state after the shot completes. Simulation results are deterministic, whereas the outcome of shots made by a human or robot player on a physical table are non-deterministic. ...
Article
Billiards is a game of both strategy and physical skill. To succeed, a player must be able to select strong shots, and then execute them accurately and consistently on the table. Several robotic billiards players have recently been developed. These systems address the task of executing shots on a physical table, but so far have incorporated little strategic reasoning. They require artificial intelligence to select the ‘best’ shot taking into account the accuracy of the robot, the noise inherent in the domain, the continuous nature of the search space, the difficulty of the shot, and the goal of maximizing the chances of winning. This article describes the program PickPocket, the winner of the simulated 8-ball tournaments at the 10th and 11th Computer Olympiad competitions. PickPocket is based on the traditional search framework, familiar from games such as chess, adapted to the continuous stochastic domain of billiards. Experimental results are presented exploring the properties of two search algorithms, Monte-Carlo search and Probabilistic search.
... Experimental results are presented exploring the properties of two search algorithms, Monte-Carlo search and Probabilistic search. Greenspan [18,19] further analyzes the physics nature of billiard motions and collisions and developed a library as a physics engine for actual game playing. They all contribute to the correct simulation and prediction of game playing results. ...
Article
A low cost training system is proposed for regular billiard game tutoring. We describe the elements to construct an interactive computer system which helps train billiard players in enhancing their skills. Most research on computer billiard has focused on creating highly competitive billiard playing programs, based on various search algorithms. Game playing strategies are embedded into these programs to beat the toughest human players. None of them is designed to reveal these information and help increase the public players’ skills. This lack of interactivity foundations makes most billiard playing programs inadequate as billiard tutors too. Our computer system is designed to combine with a visual guide interface to instruct users for a reliable strike. The system makes use of a vision system for cue ball, object ball locations and cue stick tracking. A least square error calibration process correlates the real world and the virtual world pool ball coordinates for a precise guidance line calculation. Users are able to adjust the cue stick on the pool table according to the visual guidance line instruction displayed on a PC monitor. Analysis found that a tolerance angle around the ideal visual line for the object ball to slide into a pocket decide the difficulties of a strike. This value further depends on the distance from pocket to the object, the distance from object to the cue ball, and the angle between these two vectors. Simulation results of tolerance angles as function of the angle variation between cue, object ball and pocket and distance variation between pocket and object ball are conducted.
... The physics model therefore involves conservation of not only linear but also angular components of momentum. We have developed a physics simulator that predicts the outcome of a shot based upon a derived physics model [18], [19], [20]. Unlike physics simulators which use the more common numerical integration approach, our method operates in the continuous domain, predicting the times of occurences of pending events, such as collisions or transitions between motion states. ...
Conference Paper
This paper describes the development of Deep Green, an intelligent robotic system that is currently in development to play competitive pool against a proficient human opponent. The design philosophy and the main system components are presented, and the progress to date is summarized. We also address a common misconception about the game of pool, i.e. that it is purely a game of physical skill, requiring little or no intelligence or strategy. We explain some of the difficulties in developing a vision-based system with a high degree of positional accuracy. We further demonstrate that even if perfect accuracy were possible, it is still beneficial and necessary to play strategically.
... We have developed a physics simulator that predicts a shot's outcome from a derived physics model. 12 Unlike physics simulators that use the more common numerical integration approach, our method operates in the continuous domain, predicting the times of pending events such as collisions or transitions between motion states. Our technique returns an exact analytic solution based on a parameterization of the separation of two moving balls as a function of time. ...
Article
Since the first attempt to automate pool in the late 1980s, researchers have developed several pool-playing robotic systems as well as a training system that has a computer vision component but doesn't involve robotic actuation. Several research challenges must be addressed to advance the system further. The most difficult will emerge in competing against proficient human opponents. Deep Green, a vision-based, intelligent robotic system to play competitive pool, currently shoots at a better-than-amateur level. Its developers seek to advance the system to successfully challenge a proficient human opponent, ultimately at a championship level.
Article
Games with continuous state and action spaces present unique challenges from an artificial intelligence (AI) viewpoint. Billiards, or pool, is one such domain that has been the focus of several research efforts aimed at designing AI agents to play successfully. Due to the continuous nature of the actions, it is natural to believe that the more time an agent has to investigate actions, the better it will perform. This paper gives a thorough description of a successful agent with a novel distributed architecture, designed for being able to grant further time for shot simulation and analysis through the utilization of many CPUs. A brief analysis of the distributed component of the agent is presented, as well as how much the extra time thus obtained contributed to its success, especially when compared to its other novel components. The described agent, CueCard, won the Computer Olympiad computational pool tournament held in 2008.
Article
We introduce pool and its variants, and describe the challenges of computationally simulating the game to create a robot capable of selecting and executing shots on a real table. A proficient pool player performs accurate shots and recovers good position with reasonable alternatives to play following each shot, which requires planning. The computational and robotic simulation of a high level player requires vision, calibration, and accurate robot positioning, as well as an ability to precisely anticipate the table arrangement through simulation of the planned shots. Such a system also requires strategic planning in order to recreate the human's ability to clear table after table. Ultimately, the challenges associated with the creation of a pool robot will promote new ways of using existing AI methods and provide, if successful, a training tool for players wanting to improve their game.
Article
Full-text available
The shot planning of a cue after it collides with an object ball determines a player's success in a billiard game. This paper proposes three novel gaming strategies to investigate the effect of cue shots planning on gaming performance. The first algorithm considers the nearest pocket for every selected target object ball, seeking optimal post collision positions. The second algorithm considers all pocket and target object ball combinations during both the pre- and post-collision optimal shot selection processes. The third algorithm considers a multi-objective optimization process for optimal shot planning control. The simulations are conducted based on a collision model considering the restitution effects. An augmented reality training facility is devised to guide users in both aiming and cue repositioning control in a real-world billiard game. Experimental results not only prove the reliability of our training device in selecting a proper shot sequence using the all-pocket optimal shot planning algorithm, but it also proves the consistency with the restitution theory.
Article
The selection of a best sequential shots for a given start cue position is a major challenging task in a billiard game. A new algorithm is proposed as a strategy to apply maximum tolerance angle search sequentially. The strategy considers combinations among all pockets and target object balls during both the pre and post collision shots selection processes. A simulation program is developed to test the strategy in a competition scenario by players with different proficiencies. The level of proficiency of players in the competition is controlled by a threshold value as a criterion to evaluate capability to conduct consecutive shots and when to give out right of play. The winning score of each game (win rate) is used as a performance comparison index among different gaming situations and to verify the effectiveness of the algorithm. The initial results of several simulation games using our strategy show that higher proficiency player can out beat lower proficiency player easily. This is consistent with the gaming situation in the real world, showing the consistency of our simulation program. The simulation also verifies that the play order does decide the final competition outcomes, when the players’ proficiencies are close to each other. This work is the first to investigate the effects of consecutive shots and order of play on the billiard gaming results. A low cost training system is proposed to verify the efficiency of the repositioning algorithm in real world settings. The system adapts an augmented reality technology to instruct users for reliable aiming assistance. It makes use of a vision system for cue ball, object ball locations and cue stick velocity tracking. In all, the simulation program can provide an initial proof of the effectiveness of the reposition algorithm in the competition situation. Experiments results of maximum tolerance angle all pocket search strategy using our training facility as tested by users with different skill levels all out performed the results without guidance for the set of users with the same proficiency.
Conference Paper
Full-text available
A robotic system is presented which automatically pots (i.e., sinks) pool balls. A homography is estimated that relates the gantry robot coordinate frame to the overhead (global) camera coordinate frame. This homography is computed by first calculating the mapping between the camera frame and a projection of the robot frame, and then solving the pool table plane equation in the robot frame. A measurement technique has been developed which is based upon a local camera attached to the robot end effector. This local camera allows the robot to be positioned accurately over circular targets placed on the table. The homography and table plane equation are then estimated by establishing correspondences between at least 4 measured target positions in the global camera and robot frames. The resulting homography allows the gantry to be positioned to within an average of 0.6 mm of a global camera frame position over the extent of a full sized pool table. The system has been used to pot a ball with 67% accuracy over the extent of the table, with a high repeatability.
Article
The first Computational 8 Ball Tournament was held at the 10 th Computer Olympiad in Taiwan this past Septem-ber, 2005. In this report, I will describe some of the characteristics of the game of 8 ball which make it interesting to model computationally. I will also describe the software system that we developed to allow competitors to play a fair game, in the presence of noise. I conclude with a report of the tournament results and propose some directions for future tournaments.
Article
A method to simulate the physics of the game of pool is presented. The method is based upon a parametrization of ball motion which allows the time of occurrence of events, such as collisions and transitions between motion states, to be solved analytically. The method is both accurate, returning exact analytical solutions for both time and space parameters, and efficient, requiring no iterative numerical methods. It is suitable for use within a game-tree search, which requires a great many potential shots to be modelled efficiently, and within a robotic pool system, which requires high accuracy in predicting shot outcomes.
The Physics of Pocket Billiards. Marlow Advanced Systems Technologies
  • W C Marlow
Marlow, W. C. (1995). The Physics of Pocket Billiards. Marlow Advanced Systems Technologies. Gnu Scientific Library (2006). http:www.gnu.orgsoftwaregsl