This Article 
   
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
A Concurrent Architecture for Serializable Production Systems
December 1996 (vol. 7 no. 12)
pp. 1265-1280

Abstract—This paper presents a new production system architecture that takes advantage of modern associative memory devices to allow parallel production firing, concurrent matching, and overlap among matching, selection, and firing of productions. We prove that the results produced by the architecture are correct according to the serializability criterion. A comprehensive event driven simulator is used to evaluate the scaling properties of the new architecture and to compare it with a parallel architecture that does global synchronization before every production firing. We also present measures for the improvement in speed due to the use of associative memories and an estimate for the amount of associative memory needed. Architectural evaluation is facilitated by a new benchmark program that allows for changes in the number of productions, the size of the database, the variance between the sizes of local data clusters, and the ratio between local and global data. Our results indicate that substantial improvements in speed can be achieved with a very modest increase in hardware cost.

[1] A. Acharya and M. Tambe, "Collection-Oriented Match: Scaling Up the Data in Production Systems," Technical Report CMU-CS-92-218, Carnegie-Mellon Univ., Pittsburgh, Dec. 1992.
[2] A. Acharya, M. Tambe, and A. Gupta, "Implementation of Production Systems on Message-Passing Computers," IEEE Trans. Parallel and Distributed Systems, vol. 3, pp. 477-487, July 1992.
[3] A. Acharya, "Design of PPL: A Parallel Production Language," School of Computer Science, Carnegie Mellon Univ., preliminary draft, 1993.
[4] J.N. Amaral, "A Parallel Architecture for Serializable Production Systems," PhD thesis, Univ. of Texas at Austin, Electrical and Computer Eng., Dec. 1994.
[5] J.N. Amaral and J. Ghosh, "An Associative Memory Architecture for Concurrent Production Systems," Proc. 1994 IEEE Int'l Conf. Systems, Man, and Cybernetics, pp. 2,219-2,224,San Antonio, Tex., Oct. 1994.
[6] J.N. Amaral and J. Ghosh, "Speeding Up Production Systems: From Concurrent Matching to Parallel Rule Firing," Parallel Processing for AI, L.N. Kanal, V. Kumar, H. Kitani, and C. Suttner, eds., chapter 7, pp. 139-160. Elsevier Science Publishers B.V., 1994.
[7] J.N. Amaral and J. Ghosh, "Using Queueing Theory for Analytical Performance Evaluation of a Multiple Functional Unit Rete Network," Proc. 15th Congress Brazilian Computer Soc., pp. 611-625, July 1995.
[8] J.N. Amaral and J. Ghosh, "Versatile Benchmarking for Concurrent Production System Architectures," Proc. 15th Congress Brazilian Computer Soc., pp. 599-610, July 1995.
[9] J.N. Amaral and J. Ghosh, "Automatic Generation of Versatile Benchmarks for Parallel Production System Architectures," Technical Report TR-PDS-1996-011, Dept. of Electrical and Computer Eng., Univ. of Texas, Austin, July 1996.
[10] F. Barachini and N. Theuretzbacher, "The Challenge of Real-Time Process Control for Production Systems," Proc. Nat'l Conf. Artificial Intelligence, pp. 705-709, Aug. 1988.
[11] R.E. Fikes, "REF-ARF: A System for Solving Problems Stated as Procedures," Artificial Intelligence, vol. 1, no. 1, pp. 27-120, 1970.
[12] C.L. Forgy, "On the Efficient Implementations of Production Systems," PhD thesis, Carnegie Mellon Univ., Pittsburgh, Penn., 1979.
[13] M.R. Garey, D.S. Johnson, and L. Stockmeyer, "Some Simplified NP-Complete Graph Problems," Theoretical Computer Science, vol. 1, pp. 237-267, 1976.
[14] J.-L. Gaudiot and A. Sohn, "Data-Driven Parallel Production Systems," IEEE Trans. Software Eng., vol. 16, no. 3, pp. 281-291, Mar. 1990.
[15] A. Gupta, "Parallelism in Production Systems," PhD thesis, Carnegie Mellon Univ., Pittsburgh, Penn., Mar. 1986.
[16] A. Gupta, C. Forgy, and A. Newell, "High-Speed Implementations of Rule-Based Systems," ACM Trans. Computer Systems, vol. 7, pp. 119-146, May 1989.
[17] A. Gupta, M. Tambe, D. Kalp, C.L. Forgy, and A. Newell, "Parallel Implementation of OPS5 on the Encore Multiprocessor: Results and Analysis," Int'l J. Parallel Programing, vol. 17, 1988.
[18] G. Huet, "Confluent Reductions: Abstract Properties and Applications to Term Rewriting Systems," J. ACM, vol. 27, no. 4, pp. 797-821, Oct. 1980.
[19] K. Hwang, Advanced Computer Architecture: Parallelism, Scalability, Programmability. McGraw-Hill, 1993.
[20] T. Ishida, "Optimizing Rules in Production System Programs," Proc. Nat'l Conf. Artificial Intelligence, pp. 699-704, Aug. 1988.
[21] T. Ishida and S. Stolfo, "Towards the Parallel Execution of Rules in Production System Programs," Proc. Int'l Conf. Parallel Processing, pp. 568-575, 1985.
[22] T. Ishida, M. Yokoo, and L. Gasser, "An Organizational Approach to Adaptive Production Systems," Proc. Nat'l Conf. Artificial Intelligence, pp. 52-58, July 1990.
[23] P.C. Jackson, Introduction to Artificial Intelligence.New York: Dover, 1985.
[24] K. Kant, Introduction to Computer System Performance Evaluation.New York: McGraw-Hill, 1993.
[25] M.A. Kelly and R.E. Seviora, "An Evaluation of DRete on CUPID for OPS5 Matching," Proc. Int'l Joint Conf. Artificial Intelligence, pp. 84-90, Aug. 1989.
[26] M.A. Kelly and R.E. Seviora, "A Multiprocessor Architecture for Production System Matching," Proc. Nat'l Conf. Artificial Intelligence, pp. 36-41, July 1989.
[27] D.E. Knuth and P.B. Bendix, "Simple Word Problems in Universal Algebras," Computational Problems in Abstract Algebras, J. Leech, ed., pp. 263-297. Pergammon Press, 1970.
[28] C.-M. Kuo, D.P. Miranker, and J.C. Browne, "On the Performance of the CREL System," J. Parallel and Distributed Computing, vol. 13, pp. 424-441, Dec. 1991.
[29] S. Kuo and D. Moldovan, "Performance Comparison of Models for Multiple Rule Firing," Proc. Int'l Joint Conf. Artificial Intelligence, pp. 42-47, Aug. 1991.
[30] S. Kuo and D. Moldovan, "The State of the Art in Parallel Production Systems," J. Parallel andDistributed Computing, vol. 15, pp. 1-26, June 1992.
[31] H.S. Lee and M.I. Schor, "Match Algorithms for Generalized Rete Networks," Artificial Intelligence, vol. 54, pp. 249-274, Apr. 1992.
[32] D.P. Miranker, TREAT: A New and Efficient Match Algorithm for AI Production Systems. Pittman/Morgan-Kaufman, 1990.
[33] D.I. Moldovan, "Rubic: A Multiprocessor for Rule-Based Systems," IEEE Trans. Systems, Man, and Cybernetics, vol. 19, pp. 699-706, July/Aug. 1989.
[34] P. Nayak, A. Gupta, and P. Rosenbloom, "Comparison of the Rete and Treat Production Matchers for SOAR (A Summary)," Proc. Nat'l Conf. Artificial Intelligence, pp. 693-698, Aug. 1988.
[35] D.E. Neiman, "Design and Control of Parallel Rule-Firing Production Systems," PhD thesis, Univ. of Massachusets, Amherst, Sept. 1992.
[36] K. Oflazer, "Partitioning in Parallel Processing of Production Systems," Proc. Int'l Conf. Parallel Processing, pp. 92-100, 1984.
[37] J.G. Schmolze, "Guaranteeing Serializable Results in Synchronous Parallel Production Systems," J. Parallel and Distributed Computing, vol. 13, pp. 348-365, Dec. 1991.
[38] J.G. Schmolze and S. Goel, "A Parallel Asynchronous Distributed Production Systems," Proc. Nat'l Conf. Artificial Intelligence, pp. 65-71, July 1990.
[39] J.G. Schmolze and W. Snyder, "Using Confluence to Control Parallel Production Systems," Proc. Second Int'l Workshop Parallel Processing for Artificial Intelligence (PPAI-93), Aug. 1993.
[40] A. Sohn and J.-L. Gaudiot, "A Macro Actor/Token Implementation of Production Systems on a Data-Flow Multiprocessor," Proc. Int'l Joint Conf. Artificial Intelligence, pp. 36-41, Aug. 1991.
[41] S. Stolfo, H. Dewan, and O. Wolfson, "The PARULEL Parallel Rule Language," Proc. 1991 Int'l Conf. Parallel Processing, pp. 36-45, 1991.
[42] A. Asthana Stolfo et al., "A High Bandwidth Intelligent Memory for Supercomputers," Proc. Supercomputing Conf., pp. 517-524, May 1988.
[43] C.P. Thacker, D.G. Conroy, and L.C. Stewart, "The Alpha Demonstration Unit: A High-Performance Multiprocessor," Comm. ACM, vol. 36, pp. 55-67, Feb. 1993.
[44] J.P. Wade, "An Integrated Content Addressable Memory System," PhD thesis, Massachusetts Inst. of Tech nology, May 1988.
[45] J. Xu and K. Hwang, "Mapping Rule-Based Systems onto Multicomputers Using Simulated Annealing," J. Parallel and Distributed Computing, vol. 13, pp. 442-455, Dec. 1991.

Index Terms:
Production systems, parallel architectures, performance evaluation, Rete network, benchmarking, TSP, rule partitioning, system level simulation.
Citation:
José Nelson Amaral, Joydeep Ghosh, "A Concurrent Architecture for Serializable Production Systems," IEEE Transactions on Parallel and Distributed Systems, vol. 7, no. 12, pp. 1265-1280, Dec. 1996, doi:10.1109/71.553276
Usage of this product signifies your acceptance of the Terms of Use.