Programming distributed systems
Programming distributed systems
Experiences with the Amoeba distributed operating system
Communications of the ACM
Orca: A Language for Parallel Programming of Distributed Systems
IEEE Transactions on Software Engineering
A world championship caliber checkers program
Artificial Intelligence
Distributed operating systems
Cost-Effective Parallel Computing
Computer
A Case for NOW (Networks of Workstations)
IEEE Micro
Comparing kernel-space and user-space communication protocols on Amoeba
ICDCS '95 Proceedings of the 15th International Conference on Distributed Computing Systems
Transposition table driven work scheduling in distributed search
AAAI '99/IAAI '99 Proceedings of the sixteenth national conference on Artificial intelligence and the eleventh Innovative applications of artificial intelligence conference innovative applications of artificial intelligence
A Performance Analysis of Transposition-Table-Driven Work Scheduling in Distributed Search
IEEE Transactions on Parallel and Distributed Systems
CG '00 Revised Papers from the Second International Conference on Computers and Games
Construction of Chinese Chess Endgame Databases by Retrograde Analysis
CG '00 Revised Papers from the Second International Conference on Computers and Games
Integrating polling, interrupts, and thread management
FRONTIERS '96 Proceedings of the 6th Symposium on the Frontiers of Massively Parallel Computation
An external-memory retrograde analysis algorithm
CG'04 Proceedings of the 4th international conference on Computers and Games
An efficient hybrid algorithm to evolve an Awale player
Proceedings of the Second International Conference on Computational Science, Engineering and Information Technology
Hi-index | 0.00 |
Retrograde Analysis (RA) is an AI search technique used to compute endgame databases, which contain optimal solutions for part of the search space of a game. RA has been applied successfully to several games, but its usefulness is restricted by the huge amount of CPU time and internal memory it requires. We present a parallel distributed algorithm for RA that addresses these problems. RA is hard to parallelize efficiently, because the communication overhead potentially is enormous. We show that the overhead can be reduced drastically using message combining. We implemented the algorithm on an Ethernet-based distributed system. For one example game (awari), we have computed a large database in 50 minutes on 64 processors, whereas one machine took 40 hours (a speedup of 48). An even larger database (computed in 20 hours) would have required over 600 MByte of internal memory on a uniprocessor and would compute for many weeks.