The general simulation of n-body systems often requires the simulation of pairwise interaction events between the objects. The naive method of simulating these events is an algorithm that polls each pair of objects for an interaction every time step. This algorithm has O(n 2)operations per time step in the number of objects. However, this method scales very well to multiple cores. In this paper, we propose a novel method of pairwise simulation that saves a significant amount of computation time by predicting possible future outcomes rather than reacting to them. We demonstrate the implementation of this method, as well as demonstrate that it has amortized O(n) complexity per time step. We also demonstrate an implementation to allow this algorithm to scale comparably well to multiple cores of a shared memory machine.
 Bittner J., Hierarchical techniques for visibility computations, PhD thesis, Czech Technical University in Prague, 2002 Search in Google Scholar
 Dechev D., Pirkelbauer P., Stroustrup B., Lock-free dynamically resizable arrays, In: Shvartsman M. (Ed.), Principles of Distributed Systems, Lect. Notes Comp. Sci., 4305, 142–156, 2006 10.1007/11945529_11Search in Google Scholar
 Ebisuzaki T., Fukushige T., Funato Y., Makino J., Taiji M., Hachisu I., Sugimoto D., GRAPE: Special Purpose Computer for Gravitational N-body Simulations In: Am. Astron. Soc. Meeting Abstr., 182, ser. B. Am. Aston. Soc., 25, 813, 1993 Search in Google Scholar
 Harada T. Real-Time Rigid Body Simulation on GPUs, In: Nguyen H. (Ed.), GPU Gems 3, Addison Wesley Professional, 2007 Search in Google Scholar
 Herlihy M., Shavit N., The Art of Multiprocessor Programming, Morgan Kaufmann Publishers, New York, NY, USA, 2008 Search in Google Scholar
 Jadbabaie A., Lin J., Morse A.S., Coordination of groups of mobile autonomous agents using nearest neighbor rules, IEEE Transactions on Automatic Control, 48(6), 988–1001, 2003 http://dx.doi.org/10.1109/TAC.2003.81278110.1109/TAC.2003.812781Search in Google Scholar
 Kipfer P., Segal M., Westermann R., UberFlow: a GPU-based particle engine, In: Proceedings of the ACM SIGGRAPH/ EUROGRAPHICS Conference on Graphics Hardware, HWWS’ 04., New York, NY, USA, ACM, 115–122, 2004 10.1145/1058129.1058146Search in Google Scholar
 Senin M., Kojekine, N., Savchenko V., Hagiwara I., Particle-based collision detection, 2003 Search in Google Scholar
© 2012 Versita Warsaw
This work is licensed under the Creative Commons Attribution-NonCommercial-NoDerivatives 3.0 License.