43 research outputs found
Understanding the Role of Noise in Stochastic Local Search: Analysis and Experiments
Stochastic local search (SLS) algorithms have recently been proven to be among the best approaches to solving computationally hard problems. SLS algorithms typically have a number of parameters, optimized empirically, that characterize and determine their performance. In this article, we focus on the noise parameter. The theoretical foundation of SLS, including an understanding of how to the optimal noise varies with problem difficulty, is lagging compared to the strong empirical results obtained using
these algorithms. A purely empirical approach to understanding and optimizing SLS noise, as problem instances vary, can be very computationally intensive. To complement existing experimental results, we formulate and analyze several Markov chain models of SLS in this article. In particular, we compute expected hitting times and show that they are rational functions for individual problem instances as well as their mixtures. Expected hitting time curves are analytical counterparts to noise response curves reported in the experimental literature. Hitting time analysis using polynomials and convex functions is also discussed. In addition, we present examples and experimental results illustrating the impact of varying noise probability on SLS run time. In experiments, where most probable explanations in Bayesian networks are computed, we use synthetic problem instances as well as problem instances
from applications. We believe that our results provide an improved theoretical understanding of the role of noise in stochastic local search, thereby providing a foundation for further progress in this area
Understanding the scalability of Bayesian network inference using clique tree growth curves
One of the main approaches to performing computation in Bayesian networks (BNs) is clique tree clustering and propagation. The clique tree approach consists of propagation in a clique tree compiled from a BN, and while it was introduced in the 1980s, there is still a lack of understanding of how clique tree computation time depends on variations in BN size and structure. In this article, we improve this understanding by developing an approach to characterizing clique tree growth as a function of parameters that can be computed in polynomial time from BNs, specifically: (i) the ratio of the number of a BN’s non-root nodes to the number of root nodes, and (ii) the expected number of moral edges in their moral graphs. Analytically, we partition the set of cliques in a clique tree into different sets, and introduce a growth curve for the total size of each set. For the special case of bipartite BNs, there are two sets and two growth curves, a mixed clique growth curve and a root clique growth curve. In experiments, where random bipartite BNs generated using the BPART algorithm are studied, we systematically increase the out-degree of the root nodes in bipartite Bayesian networks, by increasing the number of leaf nodes. Surprisingly, root clique growth is well-approximated by Gompertz growth curves, an S-shaped family of curves that has previously been used to describe growth processes in biology, medicine, and neuroscience. We believe that this research improves the understanding of the scaling behavior of clique tree clustering for a certain class of Bayesian networks; presents an aid for trade-off studies of clique tree clustering using growth curves; and ultimately provides a foundation for benchmarking and developing improved BN inference and machine learning algorithms.</p
Understanding the Scalability of Bayesian Network Inference using Clique Tree Growth Curves
One of the main approaches to performing computation in Bayesian networks (BNs) is clique tree clustering and propagation. The clique tree approach consists of propagation in a clique tree compiled from a BN, and while it was introduced in the 1980s, there is still a lack of understanding of how clique tree computation time depends on variations in BN size and structure. In this article, we improve this understanding by developing an approach to characterizing clique tree growth as a function of parameters that can be computed in polynomial time from BNs, specifically: (i) the ratio of the number of a BN’s non-root nodes to the number of root nodes, and (ii) the expected number of moral edges in their moral graphs. Analytically, we partition the set of cliques in a clique tree
into different sets, and introduce a growth curve for the total size of each set. For the special case of bipartite BNs, there are two sets and two growth curves, a mixed clique
growth curve and a root clique growth curve. In experiments, where random bipartite BNs generated using the BPART algorithm are studied, we systematically increase the out-degree of the root nodes in bipartite Bayesian networks, by increasing the number of leaf nodes. Surprisingly, root clique growth is well-approximated by Gompertz growth curves, an S-shaped family of curves that has previously been used to describe growth processes in biology, medicine, and neuroscience. We believe that this research improves the understanding of the scaling behavior of clique tree clustering for a certain class of
Bayesian networks; presents an aid for trade-off studies of clique tree clustering using growth curves; and ultimately provides a foundation for benchmarking and developing
improved BN inference and machine learning algorithms
Designing Resource-Bounded Reasoners using Bayesian Networks: System Health Monitoring and Diagnosis
In this work we are concerned with the conceptual design of
large-scale diagnostic and health management systems that
use Bayesian networks. While they are potentially powerful,
improperly designed Bayesian networks can result in too high memory requirements or too long inference times, to they point where they may not be acceptable for real-time diagnosis and health management in resource-bounded systems such as NASA’s aerospace vehicles. We investigate the clique tree clustering approach to Bayesian network inference, where increasing the size and connectivity of a Bayesian network typically also increases clique tree size. This paper combines techniques for analytically characterizing clique tree growth with bounds on clique tree size imposed by resource constraints, thereby aiding the design and optimization of largescale Bayesian networks in resource-bounded systems. We provide both theoretical and experimental results, and illustrate
our approach using a NASA case study
Using Bayesian Networks for Candidate Generation in Consistency-based Diagnosis
Consistency-based diagnosis relies on the computation of discrepancies between model predictions and sensor observations. The traditional assumption that these discrepancies can be detected accurately (by means of thresholding for example) is in many cases reasonable and leads to strong performance. However, in situations of substantial uncertainty (due, for example, to sensor noise or model abstraction), more robust schemes need to be designed to make a binary decision on whether predictions are consistent with observations or not. However, if an accurate binary decision is not made, there are risks of occurrence of false alarms and missed alarms. Moreover when multiple sensors (with differing sensing properties) are available the degree of match between predictions and
observations of each sensor can be used to guide the search for fault candidates (selecting candidates “closer” to sensor observations that are more likely to be inconsistent with corresponding predictions). Using Bayesian networks, we present in this paper a novel approach to candidate generation in consistency-based diagnosis. In our formulation, automatically generated Bayesian networks are used to encode a probabilistic measure of fit between predictions and observations. A Bayesian network inference algorithm is used to compute most probable fault candidates taking into account the degree of fit between predictions and observations for each individual sensor
Methods for Probabilistic Fault Diagnosis: An Electrical Power System Case Study
Health management systems that more accurately
and quickly diagnose faults that may occur in
different technical systems on-board a vehicle will
play a key role in the success of future NASA
missions. We discuss in this paper the diagnosis of
abrupt continuous (or parametric) faults within the
context of probabilistic graphical models, more
specifically Bayesian networks that are compiled
to arithmetic circuits. This paper extends our
previous research, within the same probabilistic
setting, on diagnosis of abrupt discrete faults. Our
approach and diagnostic algorithm ProDiagnose
are domain-independent; however we use an
electrical power system testbed called ADAPT as a
case study. In one set of ADAPT experiments,
performed as part of the 2009 Diagnostic
Challenge, our system turned out to have the best
performance among all competitors. In a second
set of experiments, we show how we have recently
further significantly improved the performance of
the probabilistic model of ADAPT. While these
experiments are obtained for an electrical power
system testbed, we believe they can easily be
transitioned to real-world systems, thus promising
to increase the success of future NASA missions
Optimizing Parallel Belief Propagation in Junction Trees using Regression
The junction tree approach, with applications in artificial intelligence, computer vision, machine learning, and statistics, is often used for computing posterior distributions in probabilistic graphical models. One of the key challenges associated with junction trees is computational, and several parallel computing technologies - including many-core processors - have been investigated to meet this challenge. Many-core processors (including GPUs) are now programmable, unfortunately their complexities make it hard to manually tune their parameters in order to optimize software performance. In this paper, we investigate a machine learning approach to minimize the execution time of parallel junction tree algorithms implemented on a GPU. By carefully allocating a GPU’s threads to different parallel computing opportunities in a junction tree, and treating this thread allocation problem as a machine learning problem, we find in experiments that regression - specifically support vector regression - can substantially outperform manual optimization
Exploring Multiple Dimensions of Parallelism in Junction Tree Message Passing
Belief propagation over junction trees is known to be computationally challenging in the general case. One way of addressing this computational challenge is to use node-level parallel computing, and parallelize the computation associated with each separator potential table cell. However, this approach is not efficient for junction trees that mainly contain small separators. In this paper, we analyze this problem, and address it by studying a new dimension of node-level parallelism, namely arithmetic parallelism. In
addition, on the graph level, we use a clique merging technique to further adapt junction trees to parallel computing platforms. We apply our parallel approach to both marginal and most probable explanation (MPE) inference in junction trees. In experiments with a Graphics Processing Unit (GPU), we obtain for marginal inference an average speedup of 5.54x and a maximum speedup of 11.94x; speedups for MPE inference are similar
Diagnosing Intermittent and Persistent Faults using Static Bayesian Networks
Both intermittent and persistent faults may
occur in a wide range of systems. We present
in this paper the introduction of intermittent
fault handling techniques into ProDiagnose, an
algorithm that previously only handled
persistent faults. We discuss novel algorithmic
techniques as well as how our static Bayesian
networks help diagnose, in an integrated
manner, a range of intermittent and persistent
faults. Through experiments with data from
the ADAPT electrical power system test bed,
generated as part of the Second International
Diagnostic Competition (DXC-10), we show
that this novel variant of ProDiagnose
diagnoses intermittent faults accurately and
quickly, while maintaining strong performance
on persistent faults
Generalized Crowding for Genetic Algorithms
Crowding is a technique used in genetic algorithms to preserve diversity in the population and to prevent premature convergence to local optima. It consists of pairing each offspring with a similar individual in the current population (pairing phase) and deciding which of the two will remain in the population (replacement phase). The present work focuses on the replacement phase of crowding, which usually has been carried out by one of the following three approaches: Deterministic, Probabilistic, and Simulated Annealing. These approaches present some limitations regarding the way replacement is conducted. On the one hand, the first two apply the same selective pressure regardless of the problem being solved or the stage of the genetic algorithm. On the other hand, the third does not apply a uniform selective pressure over all the individuals in the population, which makes the control of selective pressure over the generations somewhat difficult. This work presents a Generalized Crowding approach that allows selective pressure to be controlled in a simple way in the replacement phase of crowding, thus overcoming limitations of the other approaches. Furthermore, the understanding of existing approaches is greatly improved, since both Deterministic and Probabilistic Crowding turn out to be special cases of Generalized Crowding. In addition, the temperature parameter used in Simulated Annealing is replaced by a parameter called scaling factor that controls the selective pressure applied. Theoretical analysis using Markov chains and empirical evaluation using Bayesian networks demonstrate the potential of this novel Generalized Crowding approach