Results 1  10
of
60
Algorithms for the Satisfiability (SAT) Problem: A Survey
 DIMACS Series in Discrete Mathematics and Theoretical Computer Science
, 1996
"... . The satisfiability (SAT) problem is a core problem in mathematical logic and computing theory. In practice, SAT is fundamental in solving many problems in automated reasoning, computeraided design, computeraided manufacturing, machine vision, database, robotics, integrated circuit design, compute ..."
Abstract

Cited by 126 (3 self)
 Add to MetaCart
. The satisfiability (SAT) problem is a core problem in mathematical logic and computing theory. In practice, SAT is fundamental in solving many problems in automated reasoning, computeraided design, computeraided manufacturing, machine vision, database, robotics, integrated circuit design, computer architecture design, and computer network design. Traditional methods treat SAT as a discrete, constrained decision problem. In recent years, many optimization methods, parallel algorithms, and practical techniques have been developed for solving SAT. In this survey, we present a general framework (an algorithm space) that integrates existing SAT algorithms into a unified perspective. We describe sequential and parallel SAT algorithms including variable splitting, resolution, local search, global optimization, mathematical programming, and practical SAT algorithms. We give performance evaluation of some existing SAT algorithms. Finally, we provide a set of practical applications of the sat...
Parallel simulation today
 Annals of Operations Research
, 1994
"... ej 4r.,,D I " h",' _ k,) r,m '3'. IC,.4 Z _ O ..."
Abstract

Cited by 78 (16 self)
 Add to MetaCart
ej 4r.,,D I &quot; h&quot;,' _ k,) r,m '3'. IC,.4 Z _ O
TIGHT ANALYSES OF TWO LOCAL LOAD BALANCING ALGORITHMS
 SIAM J. COMPUT.
, 1999
"... This paper presents an analysis of the following load balancing algorithm. At each step, each node in a network examines the number of tokens at each of its neighbors and sends a token to each neighbor with at least 2d + 1 fewer tokens, where d is the maximum degree of any node in the network. We ..."
Abstract

Cited by 49 (5 self)
 Add to MetaCart
This paper presents an analysis of the following load balancing algorithm. At each step, each node in a network examines the number of tokens at each of its neighbors and sends a token to each neighbor with at least 2d + 1 fewer tokens, where d is the maximum degree of any node in the network. We show that within O(∆/α) steps, the algorithm reduces the maximum difference in tokens between any two nodes to at most O((d 2 log n)/α), where ∆ is the global imbalance in tokens (i.e., the maximum difference between the number of tokens at any node initially and the average number of tokens), n is the number of nodes in the network, and α is the edge expansion of the network. The time bound is tight in the sense that for any graph with edge expansion α, and for any value ∆, there exists an initial distribution of tokens with imbalance ∆ for which the time to reduce the imbalance to even ∆/2 is at least Ω(∆/α). The bound on the final imbalance is tight in the sense that there exists a class of networks that can be locally balanced everywhere (i.e., the maximum difference in tokens between any two neighbors is at most 2d), while the global imbalance remains Ω((d 2 log n)/α). Furthermore, we show that upon reaching a state with a global imbalance of O((d 2 log n)/α), the time for this algorithm to locally balance the network can be as large as Ω(n 1/2). We extend our analysis to a variant of this algorithm for dynamic and asynchronous
SMART: A ScanBased MovementAssisted Sensor Deployment Method in Wireless Sensor Networks
 In Proc. of IEEE INFOCOM
, 2005
"... Abstract—The efficiency of sensor networks depends on the coverage of the monitoring area. Although, in general, a sufficient number of sensors are used to ensure a certain degree of redundancy in coverage, a good sensor deployment is still necessary to balance the workload of sensors. In a sensor n ..."
Abstract

Cited by 48 (2 self)
 Add to MetaCart
Abstract—The efficiency of sensor networks depends on the coverage of the monitoring area. Although, in general, a sufficient number of sensors are used to ensure a certain degree of redundancy in coverage, a good sensor deployment is still necessary to balance the workload of sensors. In a sensor network with locomotion facilities, sensors can move around to selfdeploy. The movementassisted sensor deployment deals with moving sensors from an initial unbalanced state to a balanced state. Therefore, various optimization problems can be defined to minimize different parameters, including total moving distance, total number of moves, communication/computation cost, and convergence rate. In this paper, we first propose a Hungarianalgorithmbased optimal solution, which is centralized. Then, a localized Scanbased MovementAssisted sensoR deploymenT method (SMART) and its several variations that use scan and dimension exchange to achieve a balanced state are proposed. An extended SMART is developed to address a unique problem called communication holes in sensor networks. Extensive simulations have been done to verify the effectiveness of the proposed scheme.
Analysis of The Generalized Dimension Exchange Method for Dynamic Load Balancing
 Journal of Parallel and Distributed Computing
, 1992
"... The dimension exchange method is a distributed load balancing method for pointtopoint networks. We add a parameter, called the exchange parameter, to the method to control the splitting of load between a pair of directly connected processors, and call this parameterized version the generalized di ..."
Abstract

Cited by 42 (7 self)
 Add to MetaCart
The dimension exchange method is a distributed load balancing method for pointtopoint networks. We add a parameter, called the exchange parameter, to the method to control the splitting of load between a pair of directly connected processors, and call this parameterized version the generalized dimension exchange (GDE) method. The rationale for the introduction of this parameter is that splitting the workload into equal halves does not necessarily lead to an optimal result (in terms of the convergence rate) for certain structures. We carry out an analysis of this new method, emphasizing on its termination aspects and potential efficiency. Given a specific structure, one needs to determine a value to use for the exchange parameter that would lead to an optimal result. To this end, we first derive a sufficient and necessary condition for the termination of the method. We then show that equal splitting, proposed originally by others as a heuristic strategy, indeed yields optimal efficie...
A distributed databalanced dictionary based on the blink tree
 in Proceeding of IPPS’92
, 1992
"... ..."
A Combinatorial Treatment of Balancing Networks
, 1999
"... Balancing networks, originally introduced by Aspnes et al. (Proc. of the 23rd Annual ACM Symposium on Theory of Computing, pp. 348358, May 1991), represent a new class of distributed, lowcontention data structures suitable for solving many fundamental multiprocessor coordination problems that can ..."
Abstract

Cited by 23 (11 self)
 Add to MetaCart
Balancing networks, originally introduced by Aspnes et al. (Proc. of the 23rd Annual ACM Symposium on Theory of Computing, pp. 348358, May 1991), represent a new class of distributed, lowcontention data structures suitable for solving many fundamental multiprocessor coordination problems that can be expressed as balancing problems. In this work, we present a mathematical study of the combinatorial structure of balancing networks, andavariety of its applications. Our study identies important combinatorial transfer parameters of balancing networks. In turn, necessary and sucient combinatorial conditions are established, expressed in terms of transfer parameters, which precisely characterize many important and well studied classes of balancing networks suchascounting networks and smoothing networks.We propose these combinatorial conditions to be \balancing analogs" of the well known ZeroOne principle holding for sorting networks.
Virtual Time Based Dynamic Load Management In The Time Warp Operating System
 Transactions of the Society for Computer Simulation
, 1990
"... The Time Warp Operating System (TWOS) executes eventdriven simulations in an optimistic style on parallel machines. Recently TWOS has been substantially improved by the addition of dynamic load management for the purpose of (a) handling fluctuations in a simulation's performance, (b) dealing e ..."
Abstract

Cited by 23 (4 self)
 Add to MetaCart
The Time Warp Operating System (TWOS) executes eventdriven simulations in an optimistic style on parallel machines. Recently TWOS has been substantially improved by the addition of dynamic load management for the purpose of (a) handling fluctuations in a simulation's performance, (b) dealing effectively with dynamic creation and destruction of processes, and (c) eliminating the burden on users of assigning processes to processors. Because TWOS uses optimistic synchronization, existing load management theory, which tends to be based on balancing processor utilization, is not applicable; TWOS instead balances load using a more general metric called effective utilization. In addition, TWOS introduces a new program unit called a phase, which is a process delimited by two simulation times. In TWOS, the phase, not the process, is the fundamental unit of scheduling, migration, and rollback, as well as the target of messages. This paper describes early results of our experiments with the TW...
Design Issues of Process Migration Facilities in Distributed Systems
, 1995
"... Distributed systems are composed of several looselycoupled computers communicating over a highbandwidth network. To achieve an even distribution of the workload in a distributed system, either preemptive or nonpreemptive load distribution strategies are used. Preemptive load distribution involves ..."
Abstract

Cited by 22 (0 self)
 Add to MetaCart
Distributed systems are composed of several looselycoupled computers communicating over a highbandwidth network. To achieve an even distribution of the workload in a distributed system, either preemptive or nonpreemptive load distribution strategies are used. Preemptive load distribution involves process migration, while nonpreemptive strategies are based on initial placement of processes on the machines. Process migration is a mechanism where a process on one machine is moved to another machine in a distributed system. This paper discusses the design of process migration facilities in distributed systems with respect to key issues, such as the system models on which the mechanisms are implemented, the hardware platforms they run on, the methods used in moving a process from one machine to another, the load distribution policies adopted, network transparency, etc.