Results 1 - 10
of
50
Parallel Execution of Prolog Programs: A Survey
"... Since the early days of logic programming, researchers in the field realized the potential for exploitation of parallelism present in the execution of logic programs. Their high-level nature, the presence of non-determinism, and their referential transparency, among other characteristics, make logic ..."
Abstract
-
Cited by 80 (25 self)
- Add to MetaCart
Since the early days of logic programming, researchers in the field realized the potential for exploitation of parallelism present in the execution of logic programs. Their high-level nature, the presence of non-determinism, and their referential transparency, among other characteristics, make logic programs interesting candidates for obtaining speedups through parallel execution. At the same time, the fact that the typical applications of logic programming frequently involve irregular computations, make heavy use of dynamic data structures with logical variables, and involve search and speculation, makes the techniques used in the corresponding parallelizing compilers and run-time systems potentially interesting even outside the field. The objective of this paper is to provide a comprehensive survey of the issues arising in parallel execution of logic programming languages along with the most relevant approaches explored to date in the field. Focus is mostly given to the challenges emerging from the parallel execution of Prolog programs. The paper describes the major techniques used for shared memory implementation of Or-parallelism, And-parallelism, and combinations of the two. We also explore some related issues, such as memory
Asynchronous aggregation and consistency in distributed . . .
, 2005
"... Constraint Satisfaction Problems (CSP) have been very successful in problem-solving tasks ranging from resource allocation and scheduling to configuration and design. Increasingly, many of these tasks pose themselves in a distributed setting where variables and constraints are distributed among diff ..."
Abstract
-
Cited by 28 (7 self)
- Add to MetaCart
Constraint Satisfaction Problems (CSP) have been very successful in problem-solving tasks ranging from resource allocation and scheduling to configuration and design. Increasingly, many of these tasks pose themselves in a distributed setting where variables and constraints are distributed among different agents. A variety of asynchronous search algorithms have been proposed for addressing this setting. We show how two techniques commonly used in centralized constraint satisfaction, value aggregation and maintaining arc consistency can be applied to increase efficiency in an asynchronous, distributed context as well, and report on experiments that quantify the gains.
Consistency maintenance for ABT
- In Proc. of CP’2001
, 2001
"... Abstract. One of the most powerful techniques for solving centralized constraint satisfaction problems (CSPs) consists of maintaining local consistency during backtrack search (e.g. [11]). Yet, no work has been reported on such a combination in asynchronous settings 1. The difficulty in this case is ..."
Abstract
-
Cited by 24 (9 self)
- Add to MetaCart
(Show Context)
Abstract. One of the most powerful techniques for solving centralized constraint satisfaction problems (CSPs) consists of maintaining local consistency during backtrack search (e.g. [11]). Yet, no work has been reported on such a combination in asynchronous settings 1. The difficulty in this case is that, in the usual algorithms, the instantiation and consistency enforcement steps must alternate sequentially. When brought to a distributed setting, a similar approach forces the search algorithm to be synchronous in order to benefit from consistency maintenance. Asynchronism [24, 14] is highly desirable since it increases flexibility and parallelism, and makes the solving process robust against timing variations. One of the most well-known asynchronous search algorithms is Asynchronous Backtracking (ABT). This paper shows how an algorithm for maintaining consistency during distributed asynchronous search can be designed upon ABT. The proposed algorithm is complete and has polynomial-space complexity. Since the consistency propagation is optional, this algorithms generalizes forward checking as well as chronological backtracking. An additional advance over existing centralized algorithms is that it can exploit available backtracking-nogoods for increasing the strength of the maintained consistency. The experimental evaluation shows that it can bring substantial gains in computational power compared with existing asynchronous algorithms. 1
Graph Rewriting and Constraint Solving for Modelling Distributed Systems with Synchronization (Extended Abstract)
- Proceedings of the First International Conference COORDINATION ’96
, 1996
"... ) Ugo Montanari and Francesca Rossi Universit`a di Pisa, Dipartimento di Informatica Corso Italia 40, 56125 Pisa, Italy E-mail: fugo,rossig@di.unipi.it Abstract. In this extended abstract we describe our approach to modelling the dynamics of distributed systems. For distributed systems we mean sys ..."
Abstract
-
Cited by 24 (5 self)
- Add to MetaCart
(Show Context)
) Ugo Montanari and Francesca Rossi Universit`a di Pisa, Dipartimento di Informatica Corso Italia 40, 56125 Pisa, Italy E-mail: fugo,rossig@di.unipi.it Abstract. In this extended abstract we describe our approach to modelling the dynamics of distributed systems. For distributed systems we mean systems consisting of concurrent processes communicating via shared ports and posing certain synchronization requirements, via the ports, to the adjacent processes. We use graphs to represent states of such systems, and graph rewriting to represent their evolution. The kind of graph rewriting we use is based on simple context-free productions which are however combined by means of the synchronization mechanism. This allows for a good level of expressivity in the system without sacrifying full distribution. Moreover, to approach the problem of combining productions together, we suggest to exploit existing techniques for constraint solving. This is based on the observation that the combination pr...
Distributed Diagnosis of Networked, Embedded Systems
- In Proceedings of the 13th International Workshop on Principles of Diagnosis (DX-2002
, 2002
"... Networked embedded systems are composed of a large number of physically distributed nodes that interact with the physical world via a set of sensors and actuators, have their own computational capabilities, and communicate with each other via a wired or wireless network. Monitoring and diagnosis ..."
Abstract
-
Cited by 20 (8 self)
- Add to MetaCart
(Show Context)
Networked embedded systems are composed of a large number of physically distributed nodes that interact with the physical world via a set of sensors and actuators, have their own computational capabilities, and communicate with each other via a wired or wireless network. Monitoring and diagnosis for such systems must address several challenges caused by the distribution of resources, communication limitations, and node and link failures. This paper presents a distributed diagnosis framework that exploits the topology of a physical system to be diagnosed to limit inter-diagnoser communication and compute diagnoses in an anytime and any information manner, making it robust to communication and processor failures. The framework adopts the consistency-based diagnosis formalism and develops a distributed constraint satisfaction realization of the diagnosis algorithm. Each local diagnoser first computes locally consistent diagnoses, taking into account local sensing information only. The local diagnosis sets are reduced to globally consistent diagnoses through pairwise communications between local diagnosers.
Graph Rewriting, Constraint Solving and Tiles for Coordinating Distributed Systems
- Applied Categorical Structures
, 1999
"... . In this paper we describe an approach to model the dynamics of distributed systems. For distributed systems we mean systems consisting of concurrent processes communicating via shared ports and posing certain synchronization requirements, via the ports, to the adjacent processes. The basic idea is ..."
Abstract
-
Cited by 19 (15 self)
- Add to MetaCart
(Show Context)
. In this paper we describe an approach to model the dynamics of distributed systems. For distributed systems we mean systems consisting of concurrent processes communicating via shared ports and posing certain synchronization requirements, via the ports, to the adjacent processes. The basic idea is to use graphs to represent states of such systems, and graph rewriting to represent their evolution. The kind of graph rewriting we use is based on simple context-free productions which are however combined by means of a synchronization mechanism. This allows for a good level of expressivity in the system without sacrifying full distribution. To formally model this kind of graph rewriting, however, we do not adopt the classical graph rewriting style but a more general framework, called the tile model, which allows for a clear separation between sequential rewriting and synchronization. Then, since the problem of satisfying the synchronization requirements may be a complex combinatorial pro...
Chaotic Iteration for Distributed Constraint Propagation
- Proceedings of The 1999 ACM Symposium on Applied Computing, SAC'99
, 1999
"... We propose a generic framework for distributed constraint propagation based on the notion of chaotic iteration. Our algorithm applies to distributed constraint satisfaction problems, and also leads to significant speed-ups on distributions of constraint satisfaction problems. 1 Introduction Constr ..."
Abstract
-
Cited by 14 (1 self)
- Add to MetaCart
We propose a generic framework for distributed constraint propagation based on the notion of chaotic iteration. Our algorithm applies to distributed constraint satisfaction problems, and also leads to significant speed-ups on distributions of constraint satisfaction problems. 1 Introduction Constraint propagation is one of the most important techniques for finding solutions to sets of constraints. Constraint propagation algorithms usually aim at reaching some local consistency by gradually reducing a Constraint Satisfaction Problem (CSP) to another one that is equivalent but simpler. These algorithms are generally designed for specific constraint domains and a generic approach was proposed in [1, 2] based on the notion of chaotic iteration, a general technique used for computing limits of iterations of finite sets of functions. In this paper, we present a generic framework for distributed constraint propagation. Our motivations are threefold. First, Distributed Constraint Satisfacti...
Non-monotonic Reasoning on Beowulf Platforms
- of Lecture Notes in Artificial Intelligence (LNCS
, 2003
"... Non-monotonic logic programming systems, such as the various implementations of Answer Set Programming (ASP), are frequently used to solve problems with large search spaces. In spite of the impressive improvements in implementation technology, the sheer size of realistic computations required to sol ..."
Abstract
-
Cited by 12 (5 self)
- Add to MetaCart
(Show Context)
Non-monotonic logic programming systems, such as the various implementations of Answer Set Programming (ASP), are frequently used to solve problems with large search spaces. In spite of the impressive improvements in implementation technology, the sheer size of realistic computations required to solve problems of interest often makes such problems inaccessible to existing sequential technology. This paper presents some preliminary results obtained in the development of solutions for execution of Answer Set Programs on parallel architectures. We identify different forms of parallelism that can be automatically exploited in a typical ASP execution, and we describe the execution models we have experimented with to take advantage of some of these. Performance results obtained on a Beowulf system are presented.
Parallel Backtrack Search on DisCSP
, 2002
"... A parallel algorithm for solving distributed constraint networks (DCNs) is presented. The DCNs are composed of agents, each holding a local network of constraints, where all agents are connected by constraints. The parallel backtracking algorithm (PBT) initiates multiple search processes (SPs) that ..."
Abstract
-
Cited by 12 (9 self)
- Add to MetaCart
A parallel algorithm for solving distributed constraint networks (DCNs) is presented. The DCNs are composed of agents, each holding a local network of constraints, where all agents are connected by constraints. The parallel backtracking algorithm (PBT) initiates multiple search processes (SPs) that operate in parallel. Parallel search processes scan different parts of the search tree, each represented by a data structure that is circulated among the different agents. The PBT algorithm...
Distributed Forward Checking with Dynamic Ordering
- Proc. DCR Workshop IJCAI-01
, 2001
"... Distributed Constraints Networks (DCNs) are composed of a set of Agents, each having its set of variables and their domains of values. Variables of dierent Agents are connected by constraints, forming a global constraints network. In a distributed algorithm for solving a DCN, all agents cooperate ..."
Abstract
-
Cited by 11 (2 self)
- Add to MetaCart
Distributed Constraints Networks (DCNs) are composed of a set of Agents, each having its set of variables and their domains of values. Variables of dierent Agents are connected by constraints, forming a global constraints network. In a distributed algorithm for solving a DCN, all agents cooperate in searching for a consistent assignment, to all variables of all agents, that satises all of the constraints. A distributed forward checking algorithm for distributed constraint networks (DCNs) is presented. The algorithm solves DCNs in which agents include partial networks (i.e. multiple variables). The proposed algorithm includes dynamic variable ordering in a natural way making cooperative decisions. This is in contrast to former distributed search algorithms that relied for their correctness on static (i.e. predened) order of their variables. An outline of a correctness proof for the new algorithm is presented and the main dierences in its cooperative search behavior from former algorithms is explained. Experiments comparing the behavior of the proposed dynamically ordered distributed forward checking (DODFC) algorithm with either centralized forward checking or the weak-commitment asynchronous search algorithm of Yokoo, were performed on randomly generated constraints networks. For the most dicult problems, the proposed DODFC performs better than either Yokoo's algorithm or a centralized version of FC. 1