Engineering Papers⌕ Search

SEARCH · Engineering Papers

Results for “Programming Framework”

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 271 records · Page 15

Runtime Analysis of Linear Temporal Logic Specifications

This report presents an approach to checking a running program against its Linear Temporal Logic (LTL) specifications. LTL is a widely used logic for expressing properties of programs viewed as sets of executions. Our approach consists of translating LTL formulae to finite-state automata, which are used as observers of the program behavior. The translation algorithm we propose modifies standard LTL to B chi automata conversion techniques to generate automata that check finite program traces. The algorithm has been implemented in a tool, which has been integrated with the generic JPaX framework for runtime analysis of Java programs.

Giannakopoulou, Dimitra↗

Data-Driven Energy Resilience Assessment and Enhancement in Urban Communities: A Case Study in Detroit

This paper presents a data-driven framework for assessing and enhancing energy resilience in urban communities. The resilience assessment is based on two datasets: 1) annual aggregated power outage data and 2) 15-minute interval outage data. High-impact, low-probability (HILP) events are identified within these datasets to evaluate community resilience under extreme conditions. To enhance resilience, an optimization framework utilizing mixed integer linear programming is developed to determine the optimal sizing and placement of solar photovoltaic (PV) systems and battery energy storage systems (BESS). This method offers a cost-effective and practical solution for improving energy resilience in vulnerable communities. Furthermore, a case study of the City of Detroit in Michigan demonstrates the effectiveness of the framework through simulation and validation.

Energy resilience assessment↗

Navigating Large Chemical Spaces Using Graph Theory and Integer Programming

Navigating and analyzing large chemical spaces are necessary to accelerate the design and discovery of new molecules and chemical processes. In this work, we introduce a computational framework that integrates graph theory and integer programming to enable the efficient navigation of large chemical spaces. Our framework represents the chemical space as a graph, wherein nodes represent molecules and edges represent the degree of similarity or connectivity based on domain-specific information. Using the graph representation, we identify representative molecules by computing the so-called minimum dominating set (MDS), which in our context is the minimum set of molecules that is connected to all other molecules. We present a suite of solution strategies for the MDS problem including heuristic and rigorous integer programming (IP) approaches. We show that these approaches allow us to capture physicochemical properties and domain-specific logic and constraints, facilitating the identification of molecules with the target properties. We demonstrate the effectiveness of the proposed approach by navigating the chemical space of per- and polyfluoroalkyl substances (PFAS); this comprises approximately 15,000 molecular structures. We compare our framework against traditional dimensionality reduction and clustering methods such as t-SNE and K-means clustering.

Chemical structure↗

Model Predictive Control of Discrete-Continuous Energy Systems via Generalized Disjunctive Programming

Generalized Disjunctive Programming (GDP) provides an alternative framework to model optimization problems with both discrete and continuous variables. The key idea behind GDP involves the use of logical disjunctions to represent discrete decisions in the continuous space, and logical propositions to denote algebraic constraints in the discrete space. Compared to traditional mixed-integer programming (MIP), the inherent logic structure in GDP yields tighter relaxations that are exploited by global branch and bound algorithms to improve solution quality. In this paper, we present a general GDP model for optimal control of hybrid systems that exhibit both discrete and continuous dynamics. Specifically, we use GDP to formulate a model predictive control (MPC) model for piecewise-affine systems with implicit switching logic. As an example, the GDP-based MPC approach is used as a supervisory control to improve energy efficiency in residential buildings with binary on/off, relay-based thermostats. A simulation study is used to demonstrate the validity of the proposed approach, and the improved solution quality compared to existing MIPbased control approaches.

Bhattacharya, Arnab↗

SeeQ: A Programming Model for Portable Data-Driven Building Applications

This paper introduces SeeQ, a programming model and an abstraction framework that facilitates the development of portable data- driven building applications. Data-driven approaches can provide insights into building operations and guide decision-making to achieve operational objectives. Yet the configuration of such applications per building requires extensive effort and tacit knowledge. In SeeQ, we propose a portable programming model and build a software system that enables self-configuration and execution across diverse buildings. The configuration of each building is captured in a unified data model - in this paper, we work with the Brick ontology without loss of generality. SeeQ focuses on the distinction between the application logic and the configuration of an application against building-specific data inputs and systems. We test the proposed approach by configuring and deploying a diverse range of applications across five heterogeneous real-world buildings. The analysis shows the potential of SeeQ to significantly reduce the efforts associated with the delivery of building analytics.

analytics↗

Model Checking JAVA Programs Using Java Pathfinder

This paper describes a translator called JAVA PATHFINDER from JAVA to PROMELA, the "programming language" of the SPIN model checker. The purpose is to establish a framework for verification and debugging of JAVA programs based on model checking. This work should be seen in a broader attempt to make formal methods applicable "in the loop" of programming within NASA's areas such as space, aviation, and robotics. Our main goal is to create automated formal methods such that programmers themselves can apply these in their daily work (in the loop) without the need for specialists to manually reformulate a program into a different notation in order to analyze the program. This work is a continuation of an effort to formally verify, using SPIN, a multi-threaded operating system programmed in Lisp for the Deep-Space 1 spacecraft, and of previous work in applying existing model checkers and theorem provers to real applications.

Havelund, Klaus↗

NASA Procurement Career Development Program

The NASA Procurement Career Development Program establishes an agency-wide framework for the management of career development activity in the procurement field. Within this framework, installations are encouraged to modify the various components to meet installation-specific mission and organization requirements. This program provides a systematic process for the assessment of and planning for the development, training, and education required to increase the employees' competence in the procurement work functions. It includes the agency-wide basic knowledge and skills by career field and level upon which individual and organizational development plans are developed. Also, it provides a system that is compatible with other human resource management and development systems, processes, and activities. The compatibility and linkage are important in fostering the dual responsibility of the individual and the organization in the career development process.

Source record↗

Jay : A software framework for prototyping and evaluating offloading applications in hybrid edge clouds

Abstract We present Jay , a software framework for offloading applications in hybrid edge clouds. Jay provides an API, services, and tools that enable mobile application developers to implement, instrument, and evaluate offloading applications using configurable cloud topologies, offloading strategies, and job types. We start by presenting Jay 's job model and the concrete architecture of the framework. We then present the programming API with several examples of customization. Then, we turn to the description of the internal implementation of Jay instances and their components. Finally, we describe the Jay Workbench, a tool that allows the setup, execution, and reproduction of experiments with networks of hosts with different resource capabilities organized with specific topologies. The complete source code for the framework and workbench is provided in a GitHub repository.

Silva, Joaquim↗

Parallel Hybrid Turboprop Performance Modeling and Optimization

NASA’s Electrified Powertrain Flight Demonstration (EPFD) project conducts ground and flight tests of integrated Megawatt (MW) class hybrid-electric powertrain systems on regional turboprop aircraft demonstrators. To meet the increased demand for assessment of potential capabilities and benefits from these novel vehicle configurations, NASA is developing tooling and models to estimate the performance of hybridized regional turboprops. This paper covers the development of a parametrically driven performance model for a De Havilland Canada Dash 8-400 (Q400) regional turboprop integrated with a novel parallel hybrid architecture using the Gascon framework. Gascon is a modern reimplementation of the General Aviation Synthesis Program (GASP) built using the Condor mathematical modeling framework in Python. Within Gascon, a parametric representation of the parallel hybrid architecture was synthesized, which features the electric motor coupled to the power turbine. This capability allows for in-the-loop optimization of the parametric parallel hybrid architecture to characterize the mission capabilities and fuel savings of the design and determine optimal power scheduling strategies for efficient electric power management for a given mission. The study shows that a fuel savings of up to 20% can be achieved, but that increased fuel savings comes at the expense of payload capacity.

Gascon↗

Parallel Hybrid Turboprop Performance Modeling and Optimization

NASA’s Electrified Powertrain Flight Demonstration (EPFD) project conducts ground and flight tests of integrated Megawatt (MW) class hybrid-electric powertrain systems on regional turboprop aircraft demonstrators. To meet the increased demand for assessment of potential capabilities and benefits from these novel vehicle configurations, NASA is developing tooling and models to estimate the performance of hybridized regional turboprops. This paper covers the development of a parametrically driven performance model for a De Havilland Canada Dash 8-400 (Q400) regional turboprop integrated with a novel parallel hybrid architecture using the Gascon framework. Gascon is a modern reimplementation of the General Aviation Synthesis Program (GASP) built using the Condor mathematical modeling framework in Python. Within Gascon, a parametric representation of the parallel hybrid architecture was synthesized, which features the electric motor coupled to the power turbine. This capability allows for in-the-loop optimization of the parametric parallel hybrid architecture to characterize the mission capabilities and fuel savings of the design and determine optimal power scheduling strategies for efficient electric power management for a given mission. The study shows that a fuel savings of up to 20% can be achieved, but that increased fuel savings comes at the expense of payload capacity.

Gascon↗

GAHLS: an optimized graph analytics based high level synthesis framework

The urgent need for low latency, high-compute and low power on-board intelligence in autonomous systems, cyber-physical systems, robotics, edge computing, evolvable computing, and complex data science calls for determining the optimal amount and type of specialized hardware together with reconfigurability capabilities. With these goals in mind, we propose a novel comprehensive graph analytics based high level synthesis (GAHLS) framework that efficiently analyzes complex high level programs through a combined compiler-based approach and graph theoretic optimization and synthesizes them into message passing domain-specific accelerators. This GAHLS framework first constructs a compiler-assisted dependency graph (CaDG) from low level virtual machine (LLVM) intermediate representation (IR) of high level programs and converts it into a hardware friendly description representation. Next, the GAHLS framework performs a memory design space exploration while account for the identified computational properties from the CaDG and optimizing the system performance for higher bandwidth. The GAHLS framework also performs a robust optimization to identify the CaDG subgraphs with similar computational structures and aggregate them into intelligent processing clusters in order to optimize the usage of underlying hardware resources. Finally, the GAHLS framework synthesizes this compressed specialized CaDG into processing elements while optimizing the system performance and area metrics. Evaluations of the GAHLS framework on several real-life applications (e.g., deep learning, brain machine interfaces) demonstrate that it provides 14.27× performance improvements compared to state-of-the-art approaches such as LegUp 6.2.

97 MATHEMATICS AND COMPUTING↗

MDDC Multi-Length Scale Data Architecture Contribution Report – PNNL, INL, ANL, LANL and ORNL

This report offers a comprehensive view of data streams currently generated at Pacific Northwest National Laboratory, Idaho National Laboratory, Argonne National Laboratory, Los Alamos National Laboratory, and Oak Ridge National Laboratory set to integrate into the evolving Multi-Dimensional Data Correlation framework at Oak Ridge National Laboratory. Developed by the Advanced Materials and Manufacturing Technologies program, the Multi-Dimensional Data Correlation framework serves as a cutting-edge software to manage data relevant to advanced manufacturing and material behavior in advanced reactors. The report defines data streams, highlights their generation methods and visualization methods both for experimental and computational aspects relevant to the Advanced Materials and Manufacturing Technologies project. A logical next step for this work is to integrate the MDDC framework into PNNL’s, INL’s, ANL’s, LANL’s and ORNL’s fabrication, experimentation, and modelling workflows. This would require setting up the MDDC framework at PNNL, INL, ANL, and LANL and integrating it into the data collection and storage for these different activities.

36 MATERIALS SCIENCE↗

X-Windows PVT Widget Class

The X-Windows Process Validation Table (PVT) Widget Class ( Class is used here in the object-oriented-programming sense of the word) was devised to simplify the task of implementing network registration services for Information Sharing Protocol (ISP) graphical-user-interface (GUI) computer programs. Heretofore, ISP PVT programming tasks have required many method calls to identify, query, and interpret the connections and messages exchanged between a client and a PVT server. Normally, programmers have utilized direct access to UNIX socket libraries to implement the PVT protocol queries, necessitating the use of many lines of source code to perform frequent tasks. Now, the X-Windows PVT Widget Class encapsulates ISP client server network registration management tasks within the framework of an X Windows widget. Use of the widget framework enables an X Windows GUI program to interact with PVT services in an abstract way and in the same manner as that of other graphical widgets, making it easier to program PVT clients. Wrapping the PVT services inside the widget framework enables a programmer to treat a PVT server interface as though it were a GUI. Moreover, an alternate subclass could implement another service in a widget of the same type. This program was written by Matthew R. Barry of United Space Alliance for Johnson Space Center. For further information, contact the Johnson Technology Transfer Office at (281) 483-3809. MSC-23582 Shuttle Data Center File- Processing Tool in Java A Java-language computer program has been written to facilitate mining of data in files in the Shuttle Data Center (SDC) archives. This program can be executed on a variety of workstations or via Web-browser programs. This program is partly similar to prior C-language programs used for the same purpose, while differing from those programs in that it exploits the platform-neutrality of Java in implementing several features that are important for analysis of large sets of time-series data. The program supports regular expression queries of SDC archive files, reads the files, interleaves the time-stamped samples according to a chosen output, then transforms the results into that format. A user can choose among a variety of output file formats that are useful for diverse purposes, including plotting, Markov modeling, multivariate density estimation, and wavelet multiresolution analysis, as well as for playback of data in support of simulation and testing.

Barry, Matthew R.↗

Co-design optimization of combined heat and power-based microgrids

With the emergent need for clean and reliable energy resources, hybrid energy systems, such as the microgrid, are widely adopted in the United States. A microgrid can consist of various distributed energy resources, for instance, combined heat and power (CHP) systems. Here, the CHP module is a distributed cogeneration technology that produces electricity and recaptures heat generated as a by-product. It is an energy-efficient technology converting heat that would otherwise be wasted to valuable thermal energy. For an optimal system configuration, this study develops a novel co-design optimization framework for CHP-based cogeneration microgrids. The framework provides the stakeholder with a method to optimize investments and attain resilient operations. The proposed co-design framework has a mixed integer programming (MIP) model that outputs decisions for both plant designs and operating controls. The microgrid considered in this study contains six components: the CHP, boiler, heat recovery unit, thermal storage system, power storage system, and photovoltaic plant. After solving the MIP model, the optimal design parameters of each component can be found to minimize the total installation cost of all components in the microgrid. Furthermore, the online costs from energy production, operation, maintenance, machine startup, and disruption-induced unsatisfied loads are minimized by solving the optimal control decisions for operations. Case studies based on designing a CHP-based microgrid with empirical data are conducted. Moreover, we consider both nominal and disruptive operational scenarios to validate the performance of the proposed co-design framework in terms of a cost-effective, resilient system.

42 ENGINEERING↗

DFSynthesizer: Dataflow-based Synthesis of Spiking Neural Networks to Neuromorphic Hardware

Spiking Neural Networks (SNNs) are an emerging computation model that uses event-driven activation and bio-inspired learning algorithms. SNN-based machine learning programs are typically executed on tile-based neuromorphic hardware platforms, where each tile consists of a computation unit called a crossbar, which maps neurons and synapses of the program. However, synthesizing such programs on an off-the-shelf neuromorphic hardware is challenging. This is because of the inherent resource and latency limitations of the hardware, which impact both model performance, e.g., accuracy, and hardware performance, e.g., throughput. We propose DFSynthesizer, an end-to-end framework for synthesizing SNN-based machine learning programs to neuromorphic hardware. The proposed framework works in four steps. First, it analyzes a machine learning program and generates SNN workload using representative data. Second, it partitions the SNN workload and generates clusters that fit on crossbars of the target neuromorphic hardware. Third, it exploits the rich semantics of the Synchronous Dataflow Graph (SDFG) to represent a clustered SNN program, allowing for performance analysis in terms of key hardware constraints such as number of crossbars, dimension of each crossbar, buffer space on tiles, and tile communication bandwidth. Finally, it uses a novel scheduling algorithm to execute clusters on crossbars of the hardware, guaranteeing hardware performance. We evaluate DFSynthesizer with 10 commonly used machine learning programs. Our results demonstrate that DFSynthesizer provides a much tighter performance guarantee compared to current mapping approaches.

Computer Science↗

Collaborative Exploration of Scientific Datasets Using Immersive and Statistical Visualization: Preprint

We discuss the value of collaborative, immersive visualization for the exploration of scientific datasets and review techniques and tools that have been developed and deployed at the National Renewable Energy Laboratory (NREL). We believe that collaborative visualizations linking statistical interfaces and graphics on laptops and high-performance computing (HPC) with 3D visualizations on immersive displays (head-mounted displays and large-scale immersive environments) enable scientific workflows that further rapid exploration of large, high-dimensional datasets by teams of analysts. We present a framework, PlottyVR, that blends statistical tools, general-purpose programming environments, and simulation with 3D visualizations. To contextualize this framework, we propose a categorization and loose taxonomy of collaborative visualization and analysis techniques. Finally, we describe how scientists and engineers have adopted this framework to investigate large, complex datasets.

collaborative visualization↗

Collaborative Exploration of Scientific Datasets Using Immersive and Statistical Visualization

We discuss the value of collaborative, immersive visualization for the exploration of scientific datasets and review techniques and tools that have been developed and deployed at the National Renewable Energy Laboratory (NREL). We believe that collaborative visualizations linking statistical interfaces and graphics on laptops and high-performance computing (HPC) with 3D visualizations on immersive displays (head-mounted displays and large-scale immersive environments) enable scientific workflows that further rapid exploration of large, high-dimensional datasets by teams of analysts. We present a framework, PlottyVR, that blends statistical tools, general-purpose programming environments, and simulation with 3D visualizations. To contextualize this framework, we propose a categorization and loose taxonomy of collaborative visualization and analysis techniques. Finally, we describe how scientists and engineers have adopted this framework to investigate large, complex datasets.

collaborative visualization↗

Synthesizing Monitors for Safety Properties

The problem of testing a linear temporal logic (LTL) formula on a finite execution trace of events, generated by an executing program, occurs naturally in time analysis of software. An algorithm which takes a past time LTL formula and generates an efficient dynamic programming algorithm is presented. The generated algorithm tests whether the formula is satisfied by a finite trace of events given as input and runs in linear time, its constant depending on the size of the LTL formula. The memory needed is constant, also depending on the size of the formula. Further optimizations of the algorithm are suggested. Past time operators suitable for writing succinct specifications axe introduced and shown definitionally equivalent to the standard operators. This work is part of the PathExplorer project, the objective of which it is to construct a flexible framework for monitoring and analyzing program executions.

Havelund, Klaus↗