Search NASA⌕ Search

SEARCH · Search NASA

Results for “software behavior computation”

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 163 records · Page 9

Aspects, Wrappers and Events

This viewgraph presentation provides information on Object Infrastructure Framework (OIF), an Aspect-Oriented Programming (AOP) system. The presentation begins with an introduction to the difficulties and requirements of distributed computing, including functional and non-functional requirements (ilities). The architecture of Distributed Object Technology includes stubs, proxies for implementation objects, and skeletons, proxies for client applications. The key OIF ideas (injecting behavior, annotated communications, thread contexts, and pragma) are discussed. OIF is an AOP mechanism; AOP is centered on: 1) Separate expression of crosscutting concerns; 2) Mechanisms to weave the separate expressions into a unified system. AOP is software engineering technology for separately expressing systematic properties while nevertheless producing running systems that embody these properties.

Filman, Robert E.↗

Fluid seals technology at BHR Group Ltd.

A mathematical model was developed for ESA, which couples the rigid body dynamics in four degrees of freedom of a flexibly mounted stator (with Coulomb damping) of a turbopump face seal with the fluid film behavior. The interfacial film is assumed gaseous, and the model incorporates laminar/turbulent flow, inertia and sonic choking. Seal faces may be wavy and coned, while the rotating ring can be eccentrically mounted, misaligned with the shaft and oscillate axially at arbitrary frequency. The model is currently being coded into software. An experimental program using a high speed cryogenic/hot gas test rig is being conducted to verify the output of the computer program.

Leefe, Simon↗

Swarming Robot Design, Construction and Software Implementation

In this paper is presented an overview of the hardware design, construction overview, software design and software implementation for a small, low-cost robot to be used for swarming robot development. In addition to the work done on the robot, a full simulation of the robotic system was developed using Robot Operating System (ROS) and its associated simulation. The eventual use of the robots will be exploration of evolving behaviors via genetic algorithms and builds on the work done at the University of New Mexico Biological Computation Lab.

construction overview↗

A Unified Approach to Model-Based Planning and Execution

Writing autonomous software is complex, requiring the coordination of functionally and technologically diverse software modules. System and mission engineers must rely on specialists familiar with the different software modules to translate requirements into application software. Also, each module often encodes the same requirement in different forms. The results are high costs and reduced reliability due to the difficulty of tracking discrepancies in these encodings. In this paper we describe a unified approach to planning and execution that we believe provides a unified representational and computational framework for an autonomous agent. We identify the four main components whose interplay provides the basis for the agent's autonomous behavior: the domain model, the plan database, the plan running module, and the planner modules. This representational and problem solving approach can be applied at all levels of the architecture of a complex agent, such as Remote Agent. In the rest of the paper we briefly describe the Remote Agent architecture. The new agent architecture proposed here aims at achieving the full Remote Agent functionality. We then give the fundamental ideas behind the new agent architecture and point out some implication of the structure of the architecture, mainly in the area of reactivity and interaction between reactive and deliberative decision making. We conclude with related work and current status.

Muscettola, Nicola↗

HabSim: A Modular Coupled Virtual Testbed for Simulating ExtraTerrestrial Habitat Systems

Extraterrestrial habitats involve a tightly coupled combination of hardware, software, and humans while operating in an unforgiving environment that poses many risks, both anticipated and unanticipated. Traditional approaches with such systems of systems focus on reliability, robustness, and redundancy. These approaches seek to avoid failure rather than reduce overall risk. However, faults are inevitable, and understanding and managing the complex and emergent behavior and cascading events of such a complex system is critical. This study describes the development of HabSim, a computational simulation environment intended to support research to establish the know-how to design and operate resilient and autonomous SmartHabs. HabSim is a modular virtual testbed composed of many of the coupled dynamic systems expected in a typical SmartHab. A heterogeneous set of interconnected physics-based and phenomenological models is used to represent the essential functions of a SmartHab. HabSim further considers disruptions and models damage and repair of certain components. This paper discusses a) system and subsystem requirements of the deep space habitat included in the HabSim platform; b) architectural choices made in response to the requirements; c) technical considerations for developing, verifying, configuring, and executing HabSim; and d) illustrative sample results from a simulation of a representative disruption scenario.

Mohsen Azimi↗

Development and Validation of a Computational Model for Predicting the Behavior of Plumes from Large Solid Rocket Motors

Exhaust plumes from large solid rocket motors fired at ATK's Promontory test site carry particulates to high altitudes and typically produce deposits that fall on regions downwind of the test area. As populations and communities near the test facility grow, ATK has become increasingly concerned about the impact of motor testing on those surrounding communities. To assess the potential impact of motor testing on the community and to identify feasible mitigation strategies, it is essential to have a tool capable of predicting plume behavior downrange of the test stand. A software package, called PlumeTracker, has been developed and validated at ATK for this purpose. The code is a point model that offers a time-dependent, physics-based description of plume transport and precipitation. The code can utilize either measured or forecasted weather data to generate plume predictions. Next-Generation Radar (NEXRAD) data and field observations from twenty-three historical motor test fires at Promontory were collected to test the predictive capability of PlumeTracker. Model predictions for plume trajectories and deposition fields were found to correlate well with the collected dataset.

Wells, Jason E.↗

Adaptive System Modeling for Spacecraft Simulation

This invention introduces a methodology and associated software tools for automatically learning spacecraft system models without any assumptions regarding system behavior. Data stream mining techniques were used to learn models for critical portions of the International Space Station (ISS) Electrical Power System (EPS). Evaluation on historical ISS telemetry data shows that adaptive system modeling reduces simulation error anywhere from 50 to 90 percent over existing approaches. The purpose of the methodology is to outline how someone can create accurate system models from sensor (telemetry) data. The purpose of the software is to support the methodology. The software provides analysis tools to design the adaptive models. The software also provides the algorithms to initially build system models and continuously update them from the latest streaming sensor data. The main strengths are as follows: Creates accurate spacecraft system models without in-depth system knowledge or any assumptions about system behavior. Automatically updates/calibrates system models using the latest streaming sensor data. Creates device specific models that capture the exact behavior of devices of the same type. Adapts to evolving systems. Can reduce computational complexity (faster simulations).

Thomas, Justin↗

Perseverance Rover Collision Model for a range of Autonomous Behaviors

The NASA Mars 2020 Perseverance rover landed in Jezero crater on Mars on 18 February 2021. It is a science mission to collect and cache sample cores for possible return to Earth in the future. Robot collision modeling is traditionally used in robotics for hardware safety for manipulation and sampling. The Mars 2020 Rover Collision Model (RCM) optimizes and extends collision checking in innovative ways to provide a range of onboard autonomous capability on a computationally constrained system. It provides an example of the benefit of systems and operations cognizant software design and development of autonomous systems.

Klein, Douglas↗

Regression Verification Using Impact Summaries

Regression verification techniques are used to prove equivalence of syntactically similar programs. Checking equivalence of large programs, however, can be computationally expensive. Existing regression verification techniques rely on abstraction and decomposition techniques to reduce the computational effort of checking equivalence of the entire program. These techniques are sound but not complete. In this work, we propose a novel approach to improve scalability of regression verification by classifying the program behaviors generated during symbolic execution as either impacted or unimpacted. Our technique uses a combination of static analysis and symbolic execution to generate summaries of impacted program behaviors. The impact summaries are then checked for equivalence using an o-the-shelf decision procedure. We prove that our approach is both sound and complete for sequential programs, with respect to the depth bound of symbolic execution. Our evaluation on a set of sequential C artifacts shows that reducing the size of the summaries can help reduce the cost of software equivalence checking. Various reduction, abstraction, and compositional techniques have been developed to help scale software verification techniques to industrial-sized systems. Although such techniques have greatly increased the size and complexity of systems that can be checked, analysis of large software systems remains costly. Regression analysis techniques, e.g., regression testing [16], regression model checking [22], and regression verification [19], restrict the scope of the analysis by leveraging the differences between program versions. These techniques are based on the idea that if code is checked early in development, then subsequent versions can be checked against a prior (checked) version, leveraging the results of the previous analysis to reduce analysis cost of the current version. Regression verification addresses the problem of proving equivalence of closely related program versions [19]. These techniques compare two programs with a large degree of syntactic similarity to prove that portions of one program version are equivalent to the other. Regression verification can be used for guaranteeing backward compatibility, and for showing behavioral equivalence in programs with syntactic differences, e.g., when a program is refactored to improve its performance, maintainability, or readability. Existing regression verification techniques leverage similarities between program versions by using abstraction and decomposition techniques to improve scalability of the analysis [10, 12, 19]. The abstractions and decomposition in the these techniques, e.g., summaries of unchanged code [12] or semantically equivalent methods [19], compute an over-approximation of the program behaviors. The equivalence checking results of these techniques are sound but not complete-they may characterize programs as not functionally equivalent when, in fact, they are equivalent. In this work we describe a novel approach that leverages the impact of the differences between two programs for scaling regression verification. We partition program behaviors of each version into (a) behaviors impacted by the changes and (b) behaviors not impacted (unimpacted) by the changes. Only the impacted program behaviors are used during equivalence checking. We then prove that checking equivalence of the impacted program behaviors is equivalent to checking equivalence of all program behaviors for a given depth bound. In this work we use symbolic execution to generate the program behaviors and leverage control- and data-dependence information to facilitate the partitioning of program behaviors. The impacted program behaviors are termed as impact summaries. The dependence analyses that facilitate the generation of the impact summaries, we believe, could be used in conjunction with other abstraction and decomposition based approaches, [10, 12], as a complementary reduction technique. An evaluation of our regression verification technique shows that our approach is capable of leveraging similarities between program versions to reduce the size of the queries and the time required to check for logical equivalence. The main contributions of this work are: - A regression verification technique to generate impact summaries that can be checked for functional equivalence using an off-the-shelf decision procedure. - A proof that our approach is sound and complete with respect to the depth bound of symbolic execution. - An implementation of our technique using the LLVMcompiler infrastructure, the klee Symbolic Virtual Machine [4], and a variety of Satisfiability Modulo Theory (SMT) solvers, e.g., STP [7] and Z3 [6]. - An empirical evaluation on a set of C artifacts which shows that the use of impact summaries can reduce the cost of regression verification.

Backes, John↗

CLARAty Functional-Layer Software

Functional-layer software for the Coupled Layer Architecture for Robotics Autonomy (CLARAty) is being developed. [CLARAty was described in Coupled-Layer Architecture for Advanced Software for Robots (NPO-21218), NASA Tech Briefs, Vol. 26, No. 12 (December 2002), page 48. To recapitulate: CLARAty was proposed to improve the modularity of robotic software while tightening the coupling between planning/execution and control subsystems. Whereas prior robotic software architectures have typically contained three levels, the CLARAty architecture contains two layers: a decision layer and a functional layer.] Just as an operating system provides abstraction from computational hardware, the CLARAty functional-layer software provides for abstraction for the different robotic systems. The functional-layer software establishes interrelated, object-oriented hierarchies that contain active and passive objects that represent the different levels of system abstrations and components. The functional-layer software is decomposed into a set of reusable core components and a set of extended components that adapt the reusable set to specific hardware implementations. The reusable components (a) provide behavior and interface definitions and implementations of basic functionality, (b) provide local executive capabilities, (c) manage local resources, and (d) support state and resource queries by the decision layer. Software for robotic systems can be built by use of these components.

Nesnas, Issa↗

A knowledge based software engineering environment testbed

The Carnegie Group Incorporated and Boeing Computer Services Company are developing a testbed which will provide a framework for integrating conventional software engineering tools with Artifical Intelligence (AI) tools to promote automation and productivity. The emphasis is on the transfer of AI technology to the software development process. Experiments relate to AI issues such as scaling up, inference, and knowledge representation. In its first year, the project has created a model of software development by representing software activities; developed a module representation formalism to specify the behavior and structure of software objects; integrated the model with the formalism to identify shared representation and inheritance mechanisms; demonstrated object programming by writing procedures and applying them to software objects; used data-directed and goal-directed reasoning to, respectively, infer the cause of bugs and evaluate the appropriateness of a configuration; and demonstrated knowledge-based graphics. Future plans include introduction of knowledge-based systems for rapid prototyping or rescheduling; natural language interfaces; blackboard architecture; and distributed processing

Gill, C.↗

NASA Tech Briefs, May 2004

Topics include: Embedded Heaters for Joining or Separating Plastic Parts; Curing Composite Materials Using Lower-Energy Electron Beams; Aluminum-Alloy-Matrix/Alumina-Reinforcement Composites; Fibrous-Ceramic/Aerogel Composite Insulating Tiles; Urethane/Silicone Adhesives for Bonding Flexing Metal Parts; Scalable Architecture for Multihop Wireless ad Hoc Networks; Improved Thermoplastic/Iron-Particle Transformer Cores; Cooperative Lander-Surface/Aerial Microflyer Missions for Mars Exploration Dual-Frequency Airborne Scanning Rain Radar Antenna System Eight-Channel Continuous Timer Reduction of Phase Ambiguity in an Offset-QPSK Receiver Ambient-Light-Canceling Camera Using Subtraction of Frames Lightweight, Flexible, Thin, Integrated Solar-Power Packs Windows(Registered Trademark)-Based Software Models Cyclic Oxidation Behavior Software for Analyzing Sequences of Flow-Related Images Improved Ball-and-Socket Docking Mechanism Two-Stage Solenoid Ordered Nanostructures Made Using Chaperonin Polypeptides Low-Temperature Plasma Functionalization of Carbon Nanotubes Improved Cryostat for Cooling a Wide Panel Current Pulses Momentarily Enhance Thermoelectric Cooling Hand-Held Color Meters Based on Interference Filters Calculating Mass Diffusion in High-Pressure Binary Fluids Fresnel Lenses for Wide-Aperture Optical Receivers Increasing Accuracy in Computed Inviscid Boundary Conditions Higher-Order Finite Elements for Computing Thermal Radiation Radar for Monitoring Hurricanes from Geostationary Orbit Time-Transfer System for Two Orbiting Spacecraft

Source record↗

A learning apprentice for software parts composition

An overview of the knowledge acquisition component of the Bauhaus, a prototype computer aided software engineering (CASE) workstation for the development of domain-specific automatic programming systems (D-SAPS) is given. D-SAPS use domain knowledge in the refinement of a description of an application program into a compilable implementation. The approach to the construction of D-SAPS was to automate the process of refining a description of a program, expressed in an object-oriented domain language, into a configuration of software parts that implement the behavior of the domain objects.

Allen, Bradley P.↗

Aspect-Oriented Programming

Computer science has experienced an evolution in programming languages and systems from the crude assembly and machine codes of the earliest computers through concepts such as formula translation, procedural programming, structured programming, functional programming, logic programming, and programming with abstract data types. Each of these steps in programming technology has advanced our ability to achieve clear separation of concerns at the source code level. Currently, the dominant programming paradigm is object-oriented programming - the idea that one builds a software system by decomposing a problem into objects and then writing the code of those objects. Such objects abstract together behavior and data into a single conceptual and physical entity. Object-orientation is reflected in the entire spectrum of current software development methodologies and tools - we have OO methodologies, analysis and design tools, and OO programming languages. Writing complex applications such as graphical user interfaces, operating systems, and distributed applications while maintaining comprehensible source code has been made possible with OOP. Success at developing simpler systems leads to aspirations for greater complexity. Object orientation is a clever idea, but has certain limitations. We are now seeing that many requirements do not decompose neatly into behavior centered on a single locus. Object technology has difficulty localizing concerns invoking global constraints and pandemic behaviors, appropriately segregating concerns, and applying domain-specific knowledge. Post-object programming (POP) mechanisms that look to increase the expressiveness of the OO paradigm are a fertile arena for current research. Examples of POP technologies include domain-specific languages, generative programming, generic programming, constraint languages, reflection and metaprogramming, feature-oriented development, views/viewpoints, and asynchronous message brokering. (Czarneclu and Eisenecker s book includes a good survey of many of these technologies).

Elrad, Tzilla↗

Design for Validation

The use of computer hardware and software in life-critical applications, such as for civil air transports, demands the use of rigorous formal mathematical validation procedures. However, formal specification and verification will only be tractable if the system is designed in a manner that lends itself to formal methods. Likewise, accurate reliability analysis will only be tractable if the number of interacting components that must be individually included in a single reliability model is kept to a low number and if their failure behavior interactions can be modeled simply. Also, the system must be designed such that the system reliability does not directly depend on system parameters that cannot be accurately determined. This paper presents a design methodology based on the concept of designing a system in such a manner that it can be rigorously validated, or "design for validation."

Johnson, Sally C.↗

Controls and guidance: Space

The Space Controls and Guidance Research and Technology Program is directed toward enabling the next generation of space transportation systems, large future spacecraft, and space systems such as the Space Station to have large communication antennas and high precision segmented reflector astrophysical telescopes. The new generation of transportation vehicles has demanding requirements to provide for an order of magnitude reduction in cost as well as an increase in capability. The future orbital facilities have demanding control requirements for pointing and stabilization, momentum management, build-up and growth accomodation, and disturbance management. To address these advanced requirements, the research and development program is designed to provide the generic technology base to support the implementation of advanced guidance, navigation, and control. The area of computational controls will be stressed in order to develop cost effective, high speed, high fidelity control system simulation and analysis and synthesis tools. The trust of this work will be to develop methods and software to enable analysis and real-time hardware-in-the-loop simulation of complex spacecraft for control design certification. To address future orbital facilities requirements, an advanced technology program is underway in system identification, distributed control, integrated controls/structures design methods, and advanced sensors and actuators. Because the behavior of large, light weight per unit area deployable/assembled spacecraft is greatly influenced by the ground environment, the testing and verification activity is both ground- and space-based.

Dibattista, John D.↗

Onyx-Advanced Aeropropulsion Simulation Framework Created

The Numerical Propulsion System Simulation (NPSS) project at the NASA Glenn Research Center is developing a new software environment for analyzing and designing aircraft engines and, eventually, space transportation systems. Its purpose is to dramatically reduce the time, effort, and expense necessary to design and test jet engines by creating sophisticated computer simulations of an aerospace object or system (refs. 1 and 2). Through a university grant as part of that effort, researchers at the University of Toledo have developed Onyx, an extensible Java-based (Sun Micro-systems, Inc.), objectoriented simulation framework, to investigate how advanced software design techniques can be successfully applied to aeropropulsion system simulation (refs. 3 and 4). The design of Onyx's architecture enables users to customize and extend the framework to add new functionality or adapt simulation behavior as required. It exploits object-oriented technologies, such as design patterns, domain frameworks, and software components, to develop a modular system in which users can dynamically replace components with others having different functionality.

Reed, John A.↗

Short- and Long-Term Propagation of Spacecraft Orbits

The Planetary Observer Planning Software (POPS) comprises four computer programs for use in designing orbits of spacecraft about planets. These programs are the Planetary Observer High Precision Orbit Propagator (POHOP), the Planetary Observer Long-Term Orbit Predictor (POLOP), the Planetary Observer Post Processor (POPP), and the Planetary Observer Plotting (POPLOT) program. POHOP and POLOP integrate the equations of motion to propagate an initial set of classical orbit elements to a future epoch. POHOP models shortterm (one revolution) orbital motion; POLOP averages out the short-term behavior but requires far less processing time than do older programs that perform long-term orbit propagations. POPP postprocesses the spacecraft ephemeris created by POHOP or POLOP (or optionally can use a less accurate internal ephemeris) to search for trajectory-related geometric events including, for example, rising or setting of a spacecraft as observed from a ground site. For each such event, POPP puts out such user-specified data as the time, elevation, and azimuth. POPLOT is a graphics program that plots data generated by POPP. POPLOT can plot orbit ground tracks on a world map and can produce a variety of summaries and generic ordinate-vs.-abscissa plots of any POPP data.

Smith, John C., Jr.↗