Search NASA⌕ Search

SEARCH · Search NASA

Results for “PROLOG”

Search indexed NASA NTRS and DOE OSTI research on propulsion, heat transfer, battery materials and energy systems. Follow report and document links to the original sources.

Quote a phrase for an exact phrase match. Source license links do not imply unrestricted reuse.

Multi‐dimensional lock‐free arrays for multithreaded mode‐directed tabling in Prolog

Summary This work proposes a new design for the supporting data structures used to implement multithreaded tabling in Prolog systems. Tabling is an implementation technique that improves the expressiveness of traditional Prolog systems in dealing with recursion and redundant computations. Mode‐directed tabling is an extension to the tabling technique that supports the definition of alternative criteria for specifying how answers are aggregated, thus being very suitable for problems where the goal is to dynamically calculate optimal or selective answers. In this work, we leverage the intrinsic potential that mode‐directed tabling has to express dynamic programming problems by creating a new design that improves the representation of multi‐dimensional arrays in the context of multithreaded tabling. To do so, we introduce a new mode for indexing arguments in mode‐directed tabled evaluations, named dim , where each dim argument features a uni‐dimensional lock‐free array. Experimental results using well‐known dynamic programming problems on a 32‐core machine show that the new design introduces less overheads and clearly improves the execution time for sequential and multithreaded tabled evaluations.

Areias, Miguel↗

Performing fully parallel constraint logic programming on a quantum annealer

A quantum annealer exploits quantum effects to solve a particular type of optimization problem. The advantage of this specialized hardware is that it effectively considers all possible solutions in parallel, thereby potentially outperforming classical computing systems. However, despite quantum annealers having recently become commercially available, there are relatively few high-level programming models that target these devices. In this article, we show how to compile a subset of Prolog enhanced with support for constraint logic programming into a two-local Ising-model Hamiltonian suitable for execution on a quantum annealer. In particular, we describe the series of transformations one can apply to convert constraint logic programs expressed in Prolog into an executable form that bears virtually no resemblance to a classical machine model yet that evaluates the specified constraints in a fully parallel manner. We evaluate our efforts on a 1,095-qubit D-Wave 2X quantum annealer and describe the approach's associated capabilities and shortcomings.

97 MATHEMATICS AND COMPUTING↗

Implementation of new PRODIAG algorithm and simulation-based acceptance test - 219

This paper presents the improvement of an automated-reasoning computer program for nuclear power plant diagnosis, namely PRODIAG. PRODIAG, first developed at the Argonne National Laboratory, uses confluence-based reasoning to perform fault diagnosis in engineering systems that can be described by the conservation laws for mass, energy, and momentum. Therefore, unlike other plant configuration-dependent rule-based diagnosis algorithms, the code is generally applicable to a wide variety of plant configurations by simply replacing the plant instrumentation diagram (PID) database. The need for improvement was raised when the original PRODIAG failed to provide the requisite degree of extensibility and maintainability for new applications. These shortcomings have been addressed through a new code architecture that uses an objected-oriented logic-programming language in place of the original Prolog language and uses an open-source automated reasoning engine in place of the original hardwired rule-evaluation sequence. This paper presents the architecture and implementation details of the code transition. Verification and validation studies were performed for the new PRODIAG, which involved re-running the distinct fault cases defined at the time the code was originally developed. (authors)

22 GENERAL STUDIES OF NUCLEAR REACTORS↗

Development of a Severe Accident Analysis Engine Using Approximate Reasoning

In hypothetical severe accident scenarios, nuclear power plant safety is challenged by core degradation and release of fission products. To aid the plant operator and technical support center staff, research has been performed to develop understanding of severe accident phenomenology, assessing their risk and devise measures to mitigate accident consequences (Sehgal, 2011). Nuclear power plant accidents involve highly complex physical and chemical interactions, a large number of safety related systems, and emergency operating procedures (EOP) and severe accident management guidelines (SAMG). Large number of factors with uncertainty and stress can overwhelm the operators. The overall objective of the present research is to develop a methodology and tools that an operator can use to predict severe accident progression and make effective decisions to arrest and manage the accident under large uncertainties. Towards this goal, this study examines a novel approach that brings to bear a combined use of techniques in artificial intelligence (Russel and Norvig, 2010), including Bayesian Network (BN), Answer Set Programming (ASP) and Fuzzy Inference (FI) to achieve faster-than-real-time, yet sufficiently accurate analysis of severe accident progression. Bayesian network (BN) is a type of probabilistic graphical models that can be used to represent knowledge and conditional dependencies about an uncertain realm. It is useful for capturing the causal relationships in a complex system. It also allows prediction via Bayesian inference (Kelly and Smith, 2012). It is composed of nodes and edges, which express random variables and probabilistic relationships between the nodes, respectively. This relationship, given by conditional probability is calculated using stochastic methods. The BN is used in several systems for analysis and management of accident risk; e.g. (Knochenhauer and Frid, 2010). In those systems, the nodes or so-called 'effective factors' are presumably known within the network by system descriptions in SAMGs. There are two steps to configure the BN, namely (i) identifying compositions within the network and (ii) defining conditional dependency between nodes. The first step is performed following the spirit of ASP (Baral, 2003) using Prolog (Wielemaker, 2005). Knowledge representation is used to build databases required for processing by ASP. Knowledge representation is defined as the expression of knowledge in a way that is understandable to both human and computers. Originally knowledge indicates data, information and facts. To focus, knowledge should be formed to achieve a goal. In a severe accident, key physics and safety related components status are defined according to a failure mode. The conditional dependencies between nodes are generated by approximate reasoning using Fuzzy inference (Zadeh, 1995). Fuzzy logic is a multiple-valued logic to treat ambiguous features such as linguistic description. It indicates possibility, which is distinguished from probability. Fuzzy set consists of linguistic variables according to the fixed rule. In other words, even uncertain states could be expressed as not binary logic, but as many-value logic by rule-based technology. Fuzzy control system is comprised of Fuzzy inference engine that is performed based on the 'If-Then Rule'. The 'If-Then Rule' is of the following form. If Y1 is B11 and Y2 is B12 then Z is C1. If Y1 is B21 and Y2 is B22 then Z is C2. Y1 and Y2 are inputs, which indicate conditional variables. Z indicates decision-making and both B and C are linguistic variables. With this rule-based technique, the approximate reasoning can be realized by Fuzzy inference. (authors)

22 GENERAL STUDIES OF NUCLEAR REACTORS↗