| James G. Schmolze & Suraj Goel, "A Parallel Asynchronous Distributed Production System," Proc. of the '87 Int'l Conf. on Artificial Intelligence, July 13-17, 1987, 65--71. |
....ffl At the rule set level, individual rule is not decomposed. Intead, parallelism is achieved by dividing the rule set into multiple partitions, each of which consists of multiple rules. This approach is adopted in most of the research on multiple rule firing for parallel production systems [11,13,15,17,20,21,24,26]. 3 ffl At rule level, copy and constraint technique [25] creates multiple copies of the same rule, where each copy is constrained to match a subset of the data. In deductive databases, an equivalent idea using discriminating predicates is also independently reported in [8,30] ffl At relation ....
....algorithm has the highest freedom in choosing a site for each subrule, and the problem with the first decomposition issue is simplified. Adapting a base relation distribution to a rule distribution is popular with approaches developed for parallel environment and has been investigated in [1,6,11,19,21]. However, no one has proposed a possible rule distribution strategy 4 that does not require reorganization of the current base relation distribution. Since a base relation distribution is much less adaptable than rules in most distributed databases, this approach needs to be investigated ....
James G. Schmolze & Suraj Goel, "A Parallel Asynchronous Distributed Production System," Proc. of the '87 Int'l Conf. on Artificial Intelligence, July 13-17, 1987, 65--71.
....in parallel. This is in addition to allowing different Rete network nodes to be evaluated in parallel as in the node parallelism approach. An obvious disadvantage is that there is strong memory contention at the working memory, since several processors will try to access the same WMEs. PESA I [SCHM90] and DRete [KUOS90] are systems which use intranode parallelism in the Match phase. 2.2.4 Action Parallelism A rule instantiation firing causes WME changes. These WME changes are processed concurrently in the action parallelism technique. Since very few WME changes are caused per firing (about ....
....rules. The firing of one 12 rule instantiation can make another rule instantiation invalid. A non conflicting set of rule instantiations can be selected from the conflict set by building a data dependence graph. Rule data dependence has been explored in [DIXI87] ISHI90] KUOS91] MIRA90] and [SCHM90]. If a WME is added by a rule, the WME class is said to be plus changed by that rule. If a WME is deleted by a rule, the WME class is minus changed by that rule. If a WME occurs in a positive condition element of a rule, that WME class is plus referenced by the rule. And if a WME occurs in ....
[Article contains additional citation context not shown here]
Schmolze J. and Goel S., A Parallel Asynchronous Distributed Production System, Proc. 8th National Conference on Artificial Intelligence, AAAI-90, 88 1990
....more efficient set oriented DBMS query processing strategies to evaluate conditions and execute actions of rules. This research has been reported in [8, 9, 10, 15, 36, 37, 44] Parallelism has also been used to improve the efficiency in executing rule actions as well as in evaluating conditions [2, 6, 16, 17, 18, 20, 24, 27, 34, 35, 39]. Research reported in [2, 6, 18, 34, 35, 39] has investigated the execution of a number of rules in parallel, and the corresponding speedup in execution time in multiprocessor systems. Our research is in a similar direction, but focuses on the problem of concurrent execution of rules in a DBMS. ....
....evaluate conditions and execute actions of rules. This research has been reported in [8, 9, 10, 15, 36, 37, 44] Parallelism has also been used to improve the efficiency in executing rule actions as well as in evaluating conditions [2, 6, 16, 17, 18, 20, 24, 27, 34, 35, 39] Research reported in [2, 6, 18, 34, 35, 39] has investigated the execution of a number of rules in parallel, and the corresponding speedup in execution time in multiprocessor systems. Our research is in a similar direction, but focuses on the problem of concurrent execution of rules in a DBMS. In a DBMS environment, a very important issue ....
[Article contains additional citation context not shown here]
Schmolze, J.G. and Goel, S. A parallel asynchronous distributed production system. Proceedings of the AAAI National Conference on Artificial Intelligence, Boston, MA (1990).
....fired in parallel. The other fifteen productions are used for sequencing and printing and can be only slightly accelerated by Rete network parallelism. 4. 5 The Line Labeling Problem Different versions of the line labeling problem (Waltz and Toru Waltz) have being used for performance evaluation [49, 51, 63, 70]. Our version was originally written by Toru Ishida (Columbia Univ. and successively modified by Dan Neiman (Univ. of Massachusetts) Anurag Acharya (Carnegie Mellon Univ. and Jos e Amaral (Univ. of Texas) The current version has two non overlapping stages of execution, each one with four ....
....sets of productions which are then mapped onto distinct processors has been studied by a number of researchers. Most partitioning algorithms are designed with the goal of minimizing or reducing enabling, disabling, and output dependencies among productions allocated to different processors [70]. Oflazer formulates partitioning as a minimization problem and concludes that the best suited architecture for Production Systems has a small number of powerful processors [64] Oflazer also indicates that a limited amount of improvement in Production System machine speed can be obtained by an ....
J. Schmolze, A parallel asynchronous distributed production system, in Proceedings of National Conference on Artificial Intelligence, 1990, pp. 65-- 71.
....that is equivalent to rule processing in the corresponding non fragmented environment. 1. 1 Related Work Most previous work on parallel or distributed execution of production rules considers the rule language OPS5 [BFKM85] in the context of main memory expert systems, e.g. Gup86, Pas89, SG90, SM84] some work has considered OPS5 coupled to database systems [RSD91, SHT90] Results include parallel algorithms for determining which rules are triggered, methods for detecting, at compile time or at run time, that multiple triggered rules (or multiple instantiations of a triggered rule) ....
J.G. Schmolze and S. Goel. A parallel asynchronous distributed production system. In Proceedings of the AAAI National Conference on Artificial Intelligence, Boston, Massachusetts, 1990.
....programming paradigm in the artificial intelligence community. To date, most efforts toward concurrency in this area start with existing sequential rule based programs and attempt to identify parallel algorithms for key functions of the run time system such as the matching and firing of rules [7,8,9,14]. In contrast, we are concerned with generating programs that exhibit a high potential for parallel execution, i.e. they are less likely to Supported in part by the National Science Foundation under the Grant CCR9015677. The government has certain rights in this material. # Supported by the ....
....textbook problem, grocery bagging. The published programming solution [15] relies on conflict resolution for tasking and rule ordering, and no speedup would be gained if it were executed on available parallel production system models, such as those proposed by Ishida and Stolfo [8] and Schmolze [14]. Section 5 presents a systematic formal derivation of a highly concurrent version of this program without reliance on traditional conflict resolution. 2. Notation Swarm [12] belongs to a class of languages and models that use tuple based communication. Other languages and models in this class are ....
J. G. Schmolze and S. Goel, "A Parallel Asynchronous Distributed Production System," Proceedings of the 8th National Conference on Artificial Intelligence, pp. 6571 (1990).
....in question. Rules that do not need to synchronize can be fired in parallel. For dependencies that can not be resolved at compile time, run time analysis is applied to increase the parallelism. This graph based analysis method has been widely used in many other works for similar analysis problems [80, 102, 118, 123, 125]. A less important result is their decomposition algorithm based on the so called parallel executability between each pair of rules which measures the number of production cycles that can be reduced by allocating the two rules in the same partition. The algorithm given is quite ad hoc and no ....
....analysis results, generated by the analyzer, are used in the simulator together with run time analysis to achieve the most effective results. 2.1.2. 4 Schmolze s Work Schmolze has conducted a series of research on multiple rule execution systems in both synchronous and asynchronous environment [122, 123, 124, 125]. Their framework is generally taken from [70] and improve upon I S s method. The basic approach is based on serializability. The parallel execution of multiple rule instantiations is serializable if there exists some serial execution of the same set of rule instantiations that would produce the ....
[Article contains additional citation context not shown here]
J.G. Schmolze and S. Goel. A parallel asynchronous distributed production system. In Proc. AAAI--90, pages 65--71, 1990.
....ffl Distributing the match network among multiple processors and then computing the conflict set in parallel [77, 35, 54] ffl Distributing the left hand sides of rules among multiple processors. Each processor then produces a local conflict set, which constitutes part of the final conflict set [77, 68]. ffl Partitioning the data into subsets that are distributed among processors, and allowing each processor to match a smaller set of data. 4.1.2 Multiple Rule Firing Besides parallelizing the match phase, an important source of speedup is the firing of multiple rule instances, instead of a ....
....must preserve the operational semantics of the underlying rule language. Multiple rule firing systems typically rely on building data dependency 39 graphs to detect interference among rules. This approach was first reported by Ishida and Stolfo [42, 43] and later elaborated upon by Schmolze [68], Miranker [54] Moldovan [59] and Ishida [41] among others. Besides checking for rule interferences, the allocation of right hand sides among processors, called the decomposition problem [43] affects the amount of parallelism. The parallel executability between each pair of rules is defined to ....
J. G. Schmolze and S. Goel. A parallel asynchronous distributed production system. In Proceedings of AAAI-90, pages 65--71, 1990.
....a task into several independent subtasks and processing them in parallel. In active systems, since multiple rules can trigger simultaneously, they can be executed in parallel on different processors [30] Several AI researchers have worked on the execution semantics of such parallel firing systems [41, 45, 28, 30]. Two important problems have been identified in such systems [40] i) controlling the execution order of rules, ii) guaranteeing the serializable execution of rules. In database systems, the second problem can be easily solved by viewing rules as database tasks, for which the serializability is ....
.... the operation and send the operation to data processor; Until end of the task; Send a signal to GTS signal queue that the task is completed; Forever; End LTM; 5 Related Work There have been several research efforts on execution models for the rules and transactions of active database systems [27, 37, 47, 8, 23, 48, 46, 41, 29, 50, 5, 18, 38, 3, 24, 6, 26, 16]. However, very few of them focus on the design and implementation issues in shared nothing parallel environments. Although our system as an integrated parallel active database server is unique, we shall compare our parallel rule execution model and the transaction model with that of some related ....
[Article contains additional citation context not shown here]
James G. Schmolze and Suraj Goel. A parallel asynchronous distributed production system. In Proceedings of the 8th National Conference on Artificial Intelligence, July 1990.
.... is distributed among a set of processors and the conflict set is computed in parallel [8, 14, 26] A coarser approach is to distribute the left hand side (LHS) of rules among the processors and have each processor produce a local conflict set, which constitutes part of the final conflict set [23, 26]. This scheme was used to port an OPS5 to C compiler [16] to the DADO2 parallel computer [27] and, in current work, to the more recent DADO4. An even more coarse approach is proposed here whereby the working memory is partitioned into subsets (that are not necessarily disjoint) and these are ....
....overall. This results in added savings by reducing the amount of overhead in synchronizing the processors to collectively select rules. One of the earliest approaches to multiple rule firing in parallel was reported in [10, 11] and later elaborated by Miranker [15] Moldovan [17] and Schmolze [23]. Most work in this area relies on building data dependency graphs to detect interferences among rules. However, most researchers concentrate on compile time analyses [11, 23] which are too pessimistic in some cases and hence lead to reduced parallelism [18] Ishida [9] proposes an additional ....
[Article contains additional citation context not shown here]
Schmolze, J. G., and Goel, S. A parallel asynchronous distributed production system. In Proceedings of AAAI-90 (1990), pp. 65--71.
....take place. To guarantee that no token is processed before the local changes are executed, buffering of tokens in BNB in step 15 is activated immediately upon releasing the BIN. The architectural model presented in this section bears some similarity with the systems proposed by Schmolze and Goel [37] and Ishida et al. 21] In all three systems, each production is uniquely assigned to one processor and all WMEs tested by the production are stored locally. Contrary to the architecture presented in this paper, the systems proposed in [21] and [37] use a taxing synchronization mechanism and ....
....with the systems proposed by Schmolze and Goel [37] and Ishida et al. 21] In all three systems, each production is uniquely assigned to one processor and all WMEs tested by the production are stored locally. Contrary to the architecture presented in this paper, the systems proposed in [21] and [37] use a taxing synchronization mechanism and require each processor to keep a list of all dependencies that each production has with other processors. The bus based architecture with snoopy mechanism presented in this paper substantially simplifies synchronization and avoids the potential for ....
[Article contains additional citation context not shown here]
J. G. Schmolze and S. Goel. A parallel asynchronous distributed production systems. In Proceedings of National Conference on Artificial Intelligence, pages 65--71, July 1990.
....parallelized only the match phase. The speedup is therefore limited by the sequential execution of rules. Multiple rule firing systems parallelize not only the match phase, but also the act phase by firing multiple rules in parallel [13, 12, 17, 18, 28] Some systems even fire rules asynchronously [29, 16]. Compile time syntactic analysis of data dependency graph [13] is used to detect possible interference between rules. Instantiations of compatible rules [18] can be fired in parallel. For dependencies that can not be resolved at compile time, run time analysis is applied to increase the ....
J.G. Schmolze and S. Goel. A parallel asynchronous distributed production system. In Proc. AAAI--90, pages 65--71, 1990.
....case of the asynchronous parallel computation termination problem. This motivated the solution presented in this paper. Another possible application of our scheme could be in the area of parallel production systems, where rule actions are executed under an asynchronous parallel computation [10]. A termination algorithm is necessary in this application to detect the end of that computation. We believe that there are many computational domains in which our scheme can serve as a helpful tool to detect the termination of a parallel asynchronous computation. Actually, in any asynchronous ....
James G. Schmolze and Suraj Goel. A parallel asynchronous distributed production system. In Proceedings of the Eighth National Conference on Artificial Intelligence, July 1990.
....System into disjoint production sets which are then mapped onto distinct processors has been studied by a number of researchers. Most partitioning algorithms are designed with the goal of reducing enabling, disabling and output dependencies among productions allocated to different processors [16]. Oflazer formulates partitioning as a minimization problem and concludes that the best suited architecture for Production Systems has a small number of powerful processors [14] Oflazer also indicates that a limited amount of improvement in the PS speed can be obtained by an adequate assignment ....
J. G. Schmolze and S. Goel. A parallel asynchronous distributed production systems. In Proceedings of National Conference on Artificial Intelligence, pages 65--71, July 1990.
....systems parallelized only the match phase. The speedup is therefore limited by the sequential execution of rules. Multiple rule firing systems parallelize not only the match phase, but also the act phase by firing multiple rules in parallel [6, 8, 13] Some systems even fire rules asynchronously [12, 7]. Compiletime syntactic analysis of data dependency graph [6] is used to detect possible interference between rules. Instantiations of compatible rules [8] can be fired in parallel. For dependencies that can not be resolved at compile time, run time analysis is applied to increase the parallelism. ....
J. Schmolze and S. Goel. A parallel asynchronous distributed production system. In Proc. AAAI-- 90, pages 65--71, 1990.
....by database servers, this need can be satisfied by changing the execution model to allow parallel firing of rules and thus avoiding the sequential match select act cycles. The notion of parallel rule firing was explored from the mid 80 s, with serializability as a new criteria for correctness [22, 23, 36]. This criterion allows a departure from the match select act cycle as it results in the elimination of global synchronization before the resolution of the conflict set. In a production system without global synchronization, one can superpose activities in the matching engine with the selection ....
....of the conflict set. In a production system without global synchronization, one can superpose activities in the matching engine with the selection and firing of rules, potentially yielding a significant speed improvement in the parallel execution of production systems. Both Schmolze Goel [36] and Ishida et al. 23, 21] proposed parallel execution of rules on distributed memory machines. Rules were partitioned among identical processors and copies of all working memory elements (WMEs) needed for the rules assigned to a given processor were kept in its local memory. Unfortunately, to ....
[Article contains additional citation context not shown here]
J. G. Schmolze and S. Goel. A parallel asynchronous distributed production systems. In Proceedings of National Conference on Artificial Intelligence, pages 65--71, July 1990.
No context found.
J. G. Schmolze and S. Goel, "A parallel asynchronous distributed production system," In Proc. of AAAI-90, (1990), pp. 65--71.
No context found.
Schmolze J.G. and Goel S. "A Parallel Asynchronous Distributed Production System". Proc. in Eighth National Conference on AI. pp. 65-71, (AAAI-90). 1990.
Online articles have much greater impact More about CiteSeer.IST Add search form to your site Submit documents Feedback
CiteSeer.IST - Copyright Penn State and NEC