Concurrent systems such as distributed operating systems, distributed database systems, flexible manufacturing systems (FMS) etc. employ multiple processors to speed up the execution. However, to fully utilize the resources involved, the competition for resources among processes is strong and often leads to deadlocks where the whole system completely stops. Petri nets have been widely used to model concurrent systems and the associated deadlocks, which arise due to insufficiently marked siphons. A siphon is a structure object or a set of places; once these places become unmarked, they stay so afterwards making their output transitions permanently dead. To avoid deadlocks, monitors and control arcs are added upon problematic siphons, the number of which grows exponentially with the size of the net modeling the FMS. Li and Zhou relieved the problem by adding monitors only to elementary siphons. First, they test the marking linear inequality (MLI). If it fails, then they perform a linear integer programming test which takes exponential time. Thus, the MLI test is only a sufficient (not necessary) one. For systems of simple sequential processes with general resource requirements, there is one additional problem. That is, even though a siphon is not a dependent siphon based on the definition by Li and Zhou, the siphon may become controlled after controlling some elementary siphons. We develop new theory to turn this elementary siphon into a dependent one, thus reducing the number of monitors and simplifying the control hardware. This makes the uncontrolled model less disturbed and hence the controlled system becomes more permissive. Furthermore, we derive the exact controllability (both sufficient and necessary) so that the subsequent integer programming test can be eliminated. As a result, the total time complexity to check controllability of all strongly dependent siphons is reduced from exponential to linear if all n=2 strongly dependent siphons need to be verified against our new MLI test, the number of which is polynomial.
February 16, 2010
A Logical Basis for Component-Oriented Software and Systems Engineering
A theory for the systematic development of distributed interactive software systems constructed in terms of components requires a basic system model and description techniques supporting specific views and abstractions of systems. Typical system views are the interface, the distribution, or the state transition view. We show how to represent these views by mathematics and logics. The development of systems consists in working out these views leading step by step to implementations in terms of sets of distributed, concurrent, interacting state machines. For large systems, the development is carried out by refinement through several levels of abstraction. We formalize the typical steps of the development process and express and justify them directly in logic. In particular, we treat three types of refinement steps: horizontal refinement which stays within one level of abstraction, vertical refinement addressing the transition from one level of abstraction to another, and implementation by glass box refinement. We introduce refinement relations to capture these three dimensions of the development space. We derive verification rules for the refinement steps and show the modularity of the approach.
Dynamic Opponent Modelling in Fictitious Play
Distributed optimization can be formulated as an n-player coordination game. One of the most common learning techniques in game theory is fictitious play and its variations. However, fictitious play is founded on an implicit assumption that opponents’ strategies are stationary. In this paper we present a new variation of fictitious play in which players predict opponents’ strategy using a particle filter algorithm. This allows us to use a more realistic model of opponent strategy. We used pre-specified opponents’ strategies to examine if our algorithm can efficiently track the strategies. Furthermore, we have used these experiments to examine the impact of different values of our algorithm parameters on the results of strategy tracking. We then compared the results of the proposed algorithm with those of stochastic and geometric fictitious play in three different strategic form games: a potential game and two climbing hill games, one with two players and the other with three players. We also tested our algorithm in two different distributed optimization scenarios, a vehicle-target assignment game and a disaster management problem. Our algorithm converges to the optimum faster than both the competitor algorithms in the strategic form games and the vehicle-target assignment game. Hence by placing a greater computational demand on the individual agents, less communication is required between the agents. In the disaster management scenario we compared the results of particle filter fictitious play with the ones of Matlab’s centralized algorithm bintprog and the centralized pre-planning algorithm of (Gelenbe, E. and Timotheou, S. (2008) Random neural networks with synchronized interactions. Neural Comput., 20(9), 2308–2324). In this scenario our algorithm performed better than the pre-planning algorithm in two of the three performance measures we used.
Localization Algorithms for Wireless Sensor Retrieval
In wireless sensor networks (WSNs), localization has many important applications, among which wireless sensor retrieval bears special importance for cost saving, data analysis and security purposes. Localization for sensor retrieval is especially challenging due to the fact that the number and locations of these sensors are both unknown. In this paper, we propose two probabilistic localization algorithms that iteratively identify the locations of multiple wireless sensors in WSNs, one of which calculates location information offline, and the other online. In both algorithms, we implement a two-step localization process — the first step is called Grid-LEGMM (grid location estimation based on the Gaussian mixture model), a coarse-grain location search using grids by choosing the proper number and locations of the wireless sensors that maximize a likelihood estimation, and the second step is called EM-LEGMM (expectation maximization based on the Gaussian mixture model), which uses the EM-method to refine the results of Grid-LEGMM. An additional step in the online localization algorithm is a credit-based filtering mechanism that removes spurious sensor locations. The performance of both offline and online localization algorithms are analyzed using the Cramer–Rao lower bound (CRLB), and evaluated using simulations and real testbed experiments.
Graph Matching-Based Distributed Clustering and Backbone Formation Algorithms for Sensor Networks
Clustering is a widely used technique to manage the essential operations such as routing and data aggregation in wireless sensor networks (WSNs). We propose two new graph-theoretic distributed clustering algorithms for WSNs that use a weighted matching method for selecting strong links. To the best of our knowledge, our algorithms are the first attempts that use graph matching for clustering. The first algorithm is divided into rounds; extended weighted matching operation is executed by nodes in each round; thus the clusters are constructed synchronously. The second algorithm is the enhanced version of the first algorithm, which provides not only clustering but also backbone formation in an energy-efficient and asynchronous manner. We show the operation of the algorithms, analyze them, provide the simulation results in an ns2 environment. We compare our proposed algorithms with the other graph-theoretic clustering algorithms and show that our algorithms select strong communication links and create a controllable number of balanced clusters while providing low-energy consumptions. We also discuss possible applications that may use the structure provided by these algorithms and the extensions to the algorithms.
Sequential Bayesian Prediction in the Presence of Changepoints and Faults
We introduce a new sequential algorithm for making robust predictions in the presence of changepoints. Unlike previous approaches, which focus on the problem of detecting and locating changepoints, our algorithm focuses on the problem of making predictions even when such changes might be present. We introduce nonstationary covariance functions to be used in Gaussian process prediction that model such changes, and then proceed to demonstrate how to effectively manage the hyperparameters associated with those covariance functions. We further introduce covariance functions to be used in situations where our observation model undergoes changes, as is the case for sensor faults. By using Bayesian quadrature, we can integrate out the hyperparameters, allowing us to calculate the full marginal predictive distribution. Furthermore, if desired, the posterior distribution over putative changepoint locations can be calculated as a natural byproduct of our prediction algorithm.
On Instantiation and Integration Commutability of Design Pattern
Design patterns capture expert design experience in generic design structure and behavior. To reuse design experience, a design pattern needs to be instantiated from its generic template to the application design in a particular context. It can be integrated with other patterns to solve multiple design problems. The instantiation and integration of design patterns are two important processes when a designer reuses design experience in an application. It is important to know whether the instantiation and integration commute because it can save considerable time and effort of software designers for trial-and-error. In this paper, we investigate the commutability of the instantiation and integration of design patterns. We provide rigorous proofs on the conditions when the order of these two design processes does not matter. Our results allow the software designers to choose the design processes with assurance of their equivalence. The benefits of our work include helping the designers to make informed design decisions based on the convergence of different design processes and reducing the possible design choices, and thus the complexity of software development.
Sequential Dynamic Classification Using Latent Variable Models
Adaptive classification is an important online problem in data analysis. The nonlinear and nonstationary nature of much data makes standard static approaches unsuitable. In this paper, we propose a set of sequential dynamic classification algorithms based on extension of nonlinear variants of Bayesian Kalman processes and dynamic generalized linear models. The approaches are shown to work well not only in their ability to track changes in the underlying decision surfaces but also in their ability to handle in a principled manner missing data. We investigate both situations in which target labels are unobserved and also where incoming sensor data are unavailable. We extend the models to allow for active label requesting for use in situations in which there is a cost associated with such information and hence a fully labelled target set is prohibitive.
Adaptive Linear Filtering Compression on Realtime Sensor Networks
We present a lightweight lossless compression algorithm for realtime sensor networks. Our proposed adaptive linear filtering compression (ALFC) algorithm performs predictive compression using adaptive linear filtering to predict sample values followed by entropy coding of prediction residuals, encoding a variable number of samples into fixed-length packets. Adaptive prediction eliminates the need to determine prediction coefficients a priori and, more importantly, allows compression to dynamically adjust to a changing source. The algorithm requires only integer arithmetic operations and thus is compatible with sensor platforms that do not support floating-point operations. Significant robustness to packets losses is provided by including small but sufficient overhead data to allow each packet to be independently decoded. Real-world evaluations on seismic data from a wireless sensor network testbed show that ALFC provides more effective compression and uses less resources than an alternative recent work of lossless compression, S-LZW. Experiments in a multi-hop sensor network also show that ALFC can significantly improve raw data throughput and energy efficiency. We also implement the algorithm in our real sensor network, and show that our linear prediction based compression algorithm significantly improves data reliability and network efficiency.