Search NASA⌕ Search

SEARCH · Search NASA

Results for “constraint logic programming”

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.

At least 19 records

Reasoning about software specifications - A case study

The launch intercept condition (LIC) problem was analyzed to better understand the complexity of the automated reasoning process and the nature and role of background knowledge. An extension to resolution-based logic processing systems, called constraint logic programming, is described. Consideration is also given to a knowledge-driven incremental reasoning architecture which integrates a generic constraint logic programming system with a knowledge base of the domain.

Wild, Chris↗

Verification and Planning Based on Coinductive Logic Programming

Coinduction is a powerful technique for reasoning about unfounded sets, unbounded structures, infinite automata, and interactive computations [6]. Where induction corresponds to least fixed point's semantics, coinduction corresponds to greatest fixed point semantics. Recently coinduction has been incorporated into logic programming and an elegant operational semantics developed for it [11, 12]. This operational semantics is the greatest fix point counterpart of SLD resolution (SLD resolution imparts operational semantics to least fix point based computations) and is termed co- SLD resolution. In co-SLD resolution, a predicate goal p( t) succeeds if it unifies with one of its ancestor calls. In addition, rational infinite terms are allowed as arguments of predicates. Infinite terms are represented as solutions to unification equations and the occurs check is omitted during the unification process. Coinductive Logic Programming (Co-LP) and Co-SLD resolution can be used to elegantly perform model checking and planning. A combined SLD and Co-SLD resolution based LP system forms the common basis for planning, scheduling, verification, model checking, and constraint solving [9, 4]. This is achieved by amalgamating SLD resolution, co-SLD resolution, and constraint logic programming [13] in a single logic programming system. Given that parallelism in logic programs can be implicitly exploited [8], complex, compute-intensive applications (planning, scheduling, model checking, etc.) can be executed in parallel on multi-core machines. Parallel execution can result in speed-ups as well as in larger instances of the problems being solved. In the remainder we elaborate on (i) how planning can be elegantly and efficiently performed under real-time constraints, (ii) how real-time systems can be elegantly and efficiently model- checked, as well as (iii) how hybrid systems can be verified in a combined system with both co-SLD and SLD resolution. Implementations of co-SLD resolution as well as preliminary implementations of the planning and verification applications have been developed [4]. Co-LP and Model Checking: The vast majority of properties that are to be verified can be classified into safety properties and liveness properties. It is well known within model checking that safety properties can be verified by reachability analysis, i.e, if a counter-example to the property exists, it can be finitely determined by enumerating all the reachable states of the Kripke structure.

Bansal, Ajay↗

Global planning of several plants

This paper discusses an attempt to solve the problem of planning several pharmaceutical plants at a global level. The interest in planning at this level is to increase the global control over the production process, to improve its overall efficiency, and to reduce the need for interaction between production plants. In order to reduce the complexity of this problem and to make it tractable, some abstractions were made. Based on these abstractions, a prototype is being developed within the framework of the EUREKA project PROTOS, using Constraint Logic Programming techniques.

Bescos, Sylvie↗

Quantum-accelerated Global Constraint Filtering

Motivated by recent advances in quantum algorithms and gate-model quantum computation, we introduce quantum-accelerated filtering algorithms for global constraints in constraint programming. We adapt recent work in quantum algorithms for graph problems and identify quantum subroutines that accelerate the main domain consistency algorithms for the all different constraint and the global cardinality constraint (gcc). The subroutines are based on quantum algorithms for finding maximum matchings and strongly connected components in graphs, and provide speedups over the best classical algorithms. We detail both complete and bounded-probability frameworks for quantum-accelerated global constraint filtering algorithms within backtracking search.

Quantum algorithms↗

Software for Autonomous Spacecraft Maneuvers

The AutoCon computer programs facilitate and accelerate the planning and execution of orbital control maneuvers of spacecraft while analyzing and resolving mission constraints. AutoCon-F is executed aboard spacecraft, enabling the spacecraft to plan and execute maneuvers autonomously; AutoCon-G is designed for use on the ground. The AutoCon programs utilize advanced techniques of artificial intelligence, including those of fuzzy logic and natural-language scripting, to resolve multiple conflicting constraints and automatically plan maneuvers. These programs can be used to satisfy requirements for missions that involve orbits around the Earth, the Moon, or any planet, and are especially useful for missions in which there are requirements for frequent maneuvers and for resolution of complex conflicting constraints. During operations, the software targets new trajectories, places and sizes maneuvers, and controls spacecraft burns. AutoCon-G provides a userfriendly graphical interface, and can be used effectively by an analyst with minimal training. AutoCon-F reduces latency and supports multiple-spacecraft and formation-flying missions. The AutoCon architecture supports distributive processing, which can be critical for formation- control missions. AutoCon is completely object-oriented and can easily be enhanced by adding new objects and events. AutoCon-F was flight demonstrated onboard GSFC's EO-1 spacecraft flying in formation with Landsat-7.

Bristow, John↗

Analytical evaluation of two motion washout techniques

Practical tools were developed which extend the state of the art of moving base flight simulation for research and training purposes. The use of visual and vestibular cues to minimize the actual motion of the simulator itself was a primary consideration. The investigation consisted of optimum programming of motion cues based on a physiological model of the vestibular system to yield 'ideal washout logic' for any given simulator constraints.

Young, L. R.↗

Engineering simulation development and evaluation of the two-segment noise abatement approach conducted in the B-727-222 flight simulator

Profile modification as a means of reducing ground level noise from jet aircraft in the landing approach is evaluated. A flight simulator was modified to incorporate the cockpit hardware which would be in the prototype airplane installation. The two-segment system operational and aircraft interface logic was accurately emulated in software. Programs were developed to permit data to be recorded in real time on the line printer, a 14-channel oscillograph, and an x-y plotter. The two-segment profile and procedures which were developed are described with emphasis on operational concepts and constraints. The two-segment system operational logic and the flight simulator capabilities are described. The findings influenced the ultimate system design and aircraft interface.

Nylen, W. E.↗

Integrated payload and mission planning, phase 3. Volume 2: Logic/Methodology for preliminary grouping of spacelab and mixed cargo payloads

The logic and methodology for a preliminary grouping of Spacelab and mixed-cargo payloads is proposed in a form that can be readily coded into a computer program by NASA. The logic developed for this preliminary cargo grouping analysis is summarized. Principal input data include the NASA Payload Model, payload descriptive data, Orbiter and Spacelab capabilities, and NASA guidelines and constraints. The first step in the process is a launch interval selection in which the time interval for payload grouping is identified. Logic flow steps are then taken to group payloads and define flight configurations based on criteria that includes dedication, volume, area, orbital parameters, pointing, g-level, mass, center of gravity, energy, power, and crew time.

Rodgers, T. E.↗

Descent guidance and mission planning for space shuttle

The Space Shuttle descent mission planning, mission design, deorbit targeting, and entry guidance have necessarily become interrelated because of the nature of the Orbiter's design and mission requirements. The desired descent trajectory has been formulated in a drag acceleration/relative velocity state space since nearly all of the vehicle's highly constraining flight limitations can be uniquely represented in this plane. Constraints and flight requirements that affect the descent are described. The guidance logic which allows the Orbiter to follow the designed trajectory, the impacts of contingency aborts and flightcrew interaction are discussed. The mission planning and guidance techniques remain essentially unchanged through the Shuttle flight test program and subsequent operational flights.

Joosten, B. K.↗

Instrumentation of Java Bytecode for Runtime Analysis

This paper describes JSpy, a system for high-level instrumentation of Java bytecode and its use with JPaX, OUT system for runtime analysis of Java programs. JPaX monitors the execution of temporal logic formulas and performs predicative analysis of deadlocks and data races. JSpy s input is an instrumentation specification, which consists of a collection of rules, where a rule is a predicate/action pair The predicate is a conjunction of syntactic constraints on a Java statement, and the action is a description of logging information to be inserted in the bytecode corresponding to the statement. JSpy is built using JTrek an instrumentation package at a lower level of abstraction.

Goldberg, Allen↗

Execution-Based Model Checking of Interrupt-Based Systems

Execution-based model checking (EMC) is a verification technique based on executing a multi-threaded/multiprocess program repeatedly in a systematic manner in order to explore the different interleavings of the program. This is in contrast to traditional model checking, where a model of a system is analyzed Several execution-based model-checking tools exist at this point, such as for example Verisoft and Java PathFinder. The most common formal specification languages used by EMC tools are un- timed, either just assertions, or linear-time temporal logic (LTL). An alternative verification technique is Runtime Execution Monitoring (REM), which is based on monitor- ing the execution of a program, checking that the execution trace conforms to a requirement specification. The Temporal Rover and DBRover are such tools. They provide a very rich specification language, being an extension of LTL with real-time constraints and time-series. We show how execution-based model checking, combined with runtime execution monitoring, can be used for the verification of a large class of safety critical systems commonly known as interrupt-based systems. The proposed approach is novel in that: (i) it supports model checking of a large class of applications not practically verifiable using conventional EMC tools, (ii) it supports verification of LTL assertions extended with real-time and time-series constraints, and (iii) it supports the verification of custom schedulers.

Drusinsky, Doron↗

What Sensing Tells Us: Towards a Formal Theory of Testing for Dynamical Systems

Just as actions can have indirect effects on the state of the world, so too can sensing actions have indirect effects on an agent's state of knowledge. In this paper, we investigate "what sensing actions tell us", i.e., what an agent comes to know indirectly from the outcome of a sensing action, given knowledge of its actions and state constraints that hold in the world. To this end, we propose a formalization of the notion of testing within a dialect of the situation calculus that includes knowledge and sensing actions. Realizing this formalization requires addressing the ramification problem for sensing actions. We formalize simple tests as sensing actions. Complex tests are expressed in the logic programming language Golog. We examine what it means to perform a test, and how the outcome of a test affects an agent's state of knowledge. Finally, we propose automated reasoning techniques for test generation and complex-test verification, under certain restrictions. The work presented in this paper is relevant to a number of application domains including diagnostic problem solving, natural language understanding, plan recognition, and active vision.

McIlraith, Sheila↗

Data Automata in Scala

The field of runtime verification has during the last decade seen a multitude of systems for monitoring event sequences (traces) emitted by a running system. The objective is to ensure correctness of a system by checking its execution traces against formal specifications representing requirements. A special challenge is data parameterized events, where monitors have to keep track of the combination of control states as well as data constraints, relating events and the data they carry across time points. This poses a challenge wrt. efficiency of monitors, as well as expressiveness of logics. Data automata is a form of automata where states are parameterized with data, supporting monitoring of data parameterized events. We describe the full details of a very simple API in the Scala programming language, an internal DSL (Domain-Specific Language), implementing data automata. The small implementation suggests a design pattern. Data automata allow transition conditions to refer to other states than the source state, and allow target states of transitions to be inlined, offering a temporal logic flavored notation. An embedding of a logic in a high-level language like Scala in addition allows monitors to be programmed using all of Scala's language constructs, offering the full flexibility of a programming language. The framework is demonstrated on an XML processing scenario previously addressed in related work.

runtime verification↗

Program for Analysis and Resizing of Structures

Program for Analysis and Resizing of Structures (PARS) determines optimum resizing of structures subject to stress, displacement, and flutter constraints. Is an efficient code for sizing large- or small-scale finite-element models in presence of strength, thermal, and aeroelastic constraints with minimum and maximum bounds on structural dimensions. PARS is composed of individual processors that are executed in a logical sequence to perform analysis or synthesis.

Haftka, R. T.↗

Fuzzy Logic Trajectory Design and Guidance for Terminal Area Energy Management

The second generation reusable launch vehicle will leverage many new technologies to make flight to low earth orbit safer and more cost effective. One important capability will be completely autonomous flight during reentry and landing, thus making it unnecessary to man the vehicle for cargo missions with stringent weight constraints. Implementation of sophisticated new guidance and control methods will enable the vehicle to return to earth under less than favorable conditions. The return to earth consists of three phases--Entry, Terminal Area Energy Management (TAEM), and Approach and Landing. The Space Shuttle is programmed to fly all three phases of flight automatically, and under normal circumstances the astronaut-pilot takes manual control only during the Approach and Landing phase. The automatic control algorithms used in the Shuttle for TAEM and Approach and Landing have been developed over the past 30 years. They are computationally efficient, and based on careful study of the spacecraft's flight dynamics, and heuristic reasoning. The gliding return trajectory is planned prior to the mission, and only minor adjustments are made during flight for perturbations in the vehicle energy state. With the advent of the X-33 and X-34 technology demonstration vehicles, several authors investigated implementing advanced control methods to provide autonomous real-time design of gliding return trajectories thus enhancing the ability of the vehicle to adjust to unusual energy states. The bulk of work published to date deals primarily with the approach and landing phase of flight where changes in heading angle are small, and range to the runway is monotonically decreasing. These benign flight conditions allow for model simplification and fairly straightforward optimization. This project focuses on the TAEM phase of flight where mathematically precise methods have produced limited results. Fuzzy Logic methods are used to make onboard autonomous gliding return trajectory design robust to a wider energy envelope, and the possibility of control surface failures, thus increasing the flexibility of unmanned gliding recovery and landing.

Burchett, Bradley↗

NASA advanced design program: Analysis, design, and construction of a solar powered aircraft

Increase in energy demands coupled with rapid depletion of natural energy resources have deemed solar energy as the most logical alternative source of power. The major objective of this project was to build a solar powered remotely controlled aircraft to demonstrate the feasibility of solar energy as an effective, alternate source of power. The final design was optimized for minimum weight and maximum strength of the structure. These design constraints necessitated a carbon fiber composite structure. Surya is a lightweight, durable aircraft capable of achieving level flight powered entirely by solar cells.

Chan, Agnes↗

On the utilization of engineering knowledge in design optimization

Some current research work conducted at the University of Michigan is described to illustrate efforts for incorporating knowledge in optimization in a nontraditional way. The incorporation of available knowledge in a logic structure is examined in two circumstances. The first examines the possibility of introducing global design information in a local active set strategy implemented during the iterations of projection-type algorithms for nonlinearly constrained problems. The technique used algorithms for nonlinearly constrained problems. The technique used combines global and local monotinicity analysis of the objective and constraint functions. The second examines a knowledge-based program which aids the user to create condigurations that are most desirable from the manufacturing assembly viewpoint. The data bank used is the classification scheme suggested by Boothroyd. The important aspect of this program is that it is an aid for synthesis intended for use in the design concept phase in a way similar to the so-called idea-triggers in creativity-enhancement techniques like brain-storming. The idea generation, however, is not random but it is driven by the goal of achieving the best acceptable configuration.

Papalambros, P.↗

Strategy for outer planets exploration

NASA's Planetary Programs Office formed a number of scientific working groups to study in depth the potential scientific return from the various candidate missions to the outer solar system. The results of these working group studies were brought together in a series of symposia to evaluate the potential outer planet missions and to discuss strategies for exploration of the outer solar system that were consistent with fiscal constraints and with anticipated spacecraft and launch vehicle capabilities. A logical, scientifically sound, and cost effective approach to exploration of the outer solar system is presented.

Source record↗