Concurrency in systems with neighborhood constraints (distributed systems, parallel processing, dining philosophers, simulated annealing)
暂无分享,去创建一个
A collection of processes is considered, and each two of them are classified as either neighbors or nonneighbors, according to a symmetric neighborbhood relation. This system can be represented by an undirected graph G whose set of nodes is determined by the set of processes and set of edges by the neighborhood relation. Neighborhood is meant to stand for resource sharing of some type, and therefore we restrict ourselves to considering computations in which neighboring processes are precluded from being concurrently active. This dissertation contains studies on this type of system when the processes are scheduled for operation according to a scheme that we refer to as Scheduling by Edge Reversal. This scheme is derived from similar techniques previously employed in other contexts, and is based on the manipulation of acyclic orientations of G.
We present an analysis of Scheduling by Edge Reversal under synchronous and asynchronous models of computation. This analysis includes studies of the graph structures involved and definitions of concurrency measures. The chief concurrency measure that we analyze is a number depicting a property of G. This number is related to G's chromatic and multichromatic numbers, being in some cases distinct from both of them. We show, in addition, that the problem of maximizing concurrency is NP-complete.
A second contribution is the definition and solution of a problem on the precedence graphs generated by general asynchronous computations. This is the problem of identifying an optimal global state, according to a criterion that we specify. We show that this problem can be solved through the use of Max-Flow techniques on variations of the precedence graph, despite the known NP-completeness of similar problems on precedence systems. The special case in which the precedence graph is generated by Scheduling by Edge Reversal admits efficient implementations.
A combination of the previous two contributions yields a proposal to implement the Simulated Annealing method distributedly for some types of functions. The approach is applicable to approximating the solution to a number of NP-complete problems, as for example the problem of finding a maximum independent set of a graph.