Search NASA⌕ Search

SEARCH · Search NASA

Results for “tree search”

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 109 records · Page 6

Model Checker for Java Programs

Java Pathfinder (JPF) is a verification and testing environment for Java that integrates model checking, program analysis, and testing. JPF consists of a custom-made Java Virtual Machine (JVM) that interprets bytecode, combined with a search interface to allow the complete behavior of a Java program to be analyzed, including interleavings of concurrent programs. JPF is implemented in Java, and its architecture is highly modular to support rapid prototyping of new features. JPF is an explicit-state model checker, because it enumerates all visited states and, therefore, suffers from the state-explosion problem inherent in analyzing large programs. It is suited to analyzing programs less than 10kLOC, but has been successfully applied to finding errors in concurrent programs up to 100kLOC. When an error is found, a trace from the initial state to the error is produced to guide the debugging. JPF works at the bytecode level, meaning that all of Java can be model-checked. By default, the software checks for all runtime errors (uncaught exceptions), assertions violations (supports Java s assert), and deadlocks. JPF uses garbage collection and symmetry reductions of the heap during model checking to reduce state-explosion, as well as dynamic partial order reductions to lower the number of interleavings analyzed. JPF is capable of symbolic execution of Java programs, including symbolic execution of complex data such as linked lists and trees. JPF is extensible as it allows for the creation of listeners that can subscribe to events during searches. The creation of dedicated code to be executed in place of regular classes is supported and allows users to easily handle native calls and to improve the efficiency of the analysis.

Visser, Willem↗

The Right Amount of Glue: Technologies and Standards Relevant to a Future Solar-Terrestrial Data Environment

In order to meet the challenge of developing a new system science, we will need to employ technology that enables researchers to access data from fields with which they are at least initially unfamiliar as well as from sources they use more regularly. At the same time, the quantity of data to be obtained by missions such as the Solar Dynamics Observatory demands ease and simplicity of data access. These competing demands must in turn fit within severely constrained funding for data analysis in such projects. Based on experience in only a single discipline but with a diversity of data types and sources, we will give examples of technology that have made a significant difference in the way people do science. Similarly, we will show how adoption of a well-documented data format has made it easier for one community to search, reduce, and analyze data. We will also describe a community-supported data reduction and analysis software tree with useful features. We will attempt to generalize the lessons learned in these instances to features the broader, solar-terrestrial community might find compelling, while avoiding overdesign of a common data environment.

Gurman, J. B.↗

An Automated Detection Methodology for Dry Well-Mixed Layers

The intense surface heating over arid land surfaces produces dry well-mixed layers (WML) via dry convection. These layers are characterized by nearly constant potential temperature and low, nearly constant water vapor mixing ratio. To further the study of dry WMLs, we created a detection methodology and supporting software to automate the identification and characterization of dry WMLs from multiple data sources including rawinsondes, remote sensing platforms, and model products. The software is a modular code written in Python, an open source language. Radiosondes from a network of synoptic stations in North Africa were used to develop and test the WML detection process. The detection involves an iterative decision tree that ingests a vertical profile from an input data file, performs a quality check for sufficient data density, and then searches upward through the column for successive points where the simultaneous changes in water vapor mixing ratio and potential temperature are less than the specified maxima. If points in the vertical profile meet the dry WML identification criteria, statistics are generated detailing the characteristics of each layer in the profile. At the end of the vertical profile analysis, there is an option to plot analyzed profiles in a variety of file formats. Initial results show that the detection methodology can be successfully applied across a wide variety of input data and North African environments and for all seasons. It is sensitive enough to identify dry WMLs from other types of isentropic phenomena such as subsidence layers and distinguish the current day’s dry WML from previous days.

Stephen D. Nicholls↗

Adaptable Constrained Genetic Programming: Extensions and Applications

An evolutionary algorithm applies evolution-based principles to problem solving. To solve a problem, the user defines the space of potential solutions, the representation space. Sample solutions are encoded in a chromosome-like structure. The algorithm maintains a population of such samples, which undergo simulated evolution by means of mutation, crossover, and survival of the fittest principles. Genetic Programming (GP) uses tree-like chromosomes, providing very rich representation suitable for many problems of interest. GP has been successfully applied to a number of practical problems such as learning Boolean functions and designing hardware circuits. To apply GP to a problem, the user needs to define the actual representation space, by defining the atomic functions and terminals labeling the actual trees. The sufficiency principle requires that the label set be sufficient to build the desired solution trees. The closure principle allows the labels to mix in any arity-consistent manner. To satisfy both principles, the user is often forced to provide a large label set, with ad hoc interpretations or penalties to deal with undesired local contexts. This unfortunately enlarges the actual representation space, and thus usually slows down the search. In the past few years, three different methodologies have been proposed to allow the user to alleviate the closure principle by providing means to define, and to process, constraints on mixing the labels in the trees. Last summer we proposed a new methodology to further alleviate the problem by discovering local heuristics for building quality solution trees. A pilot system was implemented last summer and tested throughout the year. This summer we have implemented a new revision, and produced a User's Manual so that the pilot system can be made available to other practitioners and researchers. We have also designed, and partly implemented, a larger system capable of dealing with much more powerful heuristics.

Janikow, Cezary Z.↗

Human Mars Mission Contamination Issues

A potential challenge for a human Mars mission is that while humans are by most measures the obvious best way to search for life on Mars, we may also be the most problematic in that we could unduly compromise the search for life by contaminating relevant environments and/or possibly adversely and irreversibly affecting indigenous life. Perhaps more problematic is the fundamental epistemic challenge of the "one data point" limitation which could decrease confidence in applying terrestrially based research to extraterrestrial life issues in general. An informal decision tree is presented as one way to begin thinking about contamination issues. There are many sub-questions and distinctions not shown such as biological vs. nonbiological (but biologically relevant) contamination, viable vs. dead organisms, masking indigenous organisms vs. merely making the search more difficult, and independent origin vs. panspermia distinctions. While it may be unlikely that terrestrial microbes could survive on Mars, let alone reproduce and unduly compromise the search for life, the unpredictable potential for microbial life to survive, grow exponentially, evolve and modify (and sometimes destroy) environments, warrants focusing carefully on biologically relevant contamination as we prepare to send humans to the first planet that may have indigenous life-forms.

Lupisella, M. L.↗

ICESat-2 Tracking App for Public Engagement

Information regarding the predicted ground tracks of Earth observing satellites is typically difficult to find and understand for the general public. This paper will describe and demonstrate an iOS mobile application for tracking NASA’s ICESat-2 (Ice, Cloud, and land Elevation Satellite 2), making it easier for users to see exactly when the satellite will be passing over any location in the world. ICESat-2, launched in 2018, uses green lasers to track elevation changes in polar ice and indirectly measure trees, land, and water, providing a precise height map of our planet. Most satellite tracking mobile apps display information about where a specific satellite is at that given moment and when it will be passing over the user’s location in the near future. ICESat-2 the app differs by allowing users to search for data about the satellite’s future flybys relative to a specific search location and radius that they get to choose. The search results include points up to three months into the future. By supplying user-centric results, users are provided relevant data in an easy-to- access manner. Additionally, this data is very clear to visualize in-app through maps, pins, and ground track lines. This becomes an incredibly useful tool not only to plan an observation of the satellite as it passes, but also for knowing when elevation data for a specific area will be available. In addition, this flyby information helps students and citizen scientists take more valuable tree height measurements to better validate the elevation data collected by the satellite. To achieve this outreach product, three key components were developed. These include a Python script to simplify the raw ground track data, a Node.js server that actively takes requests, and the iOS app itself. From initial beta tests, it has been noted that providing users with a map for visual awareness of search radius and result coordinates gives them a more comprehensive understanding of the data. Overall, by cleaning the raw data and making it available in a much more accessible and easier to understand way, ICESat-2 the app has exceeded expectations in providing educational and exciting data for all.

Harbeck, Kaitlin↗

Fault trees and imperfect coverage

A new algorithm is presented for solving the fault tree. The algorithm includes the dynamic behavior of the fault/error handling model but obviates the need for the Markov chain solution. As the state space is expanded in a breadth-first search (the same is done in the conversion to a Markov chain), the state's contribution to each future state is calculated exactly. A dynamic state truncation technique is also presented; it produces bounds on the unreliability of the system by considering only part of the state space. Since the model is solved as the state space is generated, the process can be stopped as soon as the desired accuracy is reached.

Dugan, Joanne B.↗

A Fast Implementation of the ISOCLUS Algorithm

Unsupervised clustering is a fundamental building block in numerous image processing applications. One of the most popular and widely used clustering schemes for remote sensing applications is the ISOCLUS algorithm, which is based on the ISODATA method. The algorithm is given a set of n data points in d-dimensional space, an integer k indicating the initial number of clusters, and a number of additional parameters. The general goal is to compute the coordinates of a set of cluster centers in d-space, such that those centers minimize the mean squared distance from each data point to its nearest center. This clustering algorithm is similar to another well-known clustering method, called k-means. One significant feature of ISOCLUS over k-means is that the actual number of clusters reported might be fewer or more than the number supplied as part of the input. The algorithm uses different heuristics to determine whether to merge lor split clusters. As ISOCLUS can run very slowly, particularly on large data sets, there has been a growing .interest in the remote sensing community in computing it efficiently. We have developed a faster implementation of the ISOCLUS algorithm. Our improvement is based on a recent acceleration to the k-means algorithm of Kanungo, et al. They showed that, by using a kd-tree data structure for storing the data, it is possible to reduce the running time of k-means. We have adapted this method for the ISOCLUS algorithm, and we show that it is possible to achieve essentially the same results as ISOCLUS on large data sets, but with significantly lower running times. This adaptation involves computing a number of cluster statistics that are needed for ISOCLUS but not for k-means. Both the k-means and ISOCLUS algorithms are based on iterative schemes, in which nearest neighbors are calculated until some convergence criterion is satisfied. Each iteration requires that the nearest center for each data point be computed. Naively, this requires O(kn) time, where k denotes the current number of centers. Traditional techniques for accelerating nearest neighbor searching involve storing the k centers in a data structure. However, because of the iterative nature of the algorithm, this data structure would need to be rebuilt with each new iteration. Our approach is to store the data points in a kd-tree data structure. The assignment of points to nearest neighbors is carried out by a filtering process, which successively eliminates centers that can not possibly be the nearest neighbor for a given region of space. This algorithm is significantly faster, because large groups of data points can be assigned to their nearest center in a single operation. Preliminary results on a number of real Landsat datasets show that our revised ISOCLUS-like scheme runs about twice as fast.

Memarsadeghi, Nargess↗

Constraints in Genetic Programming

Genetic programming refers to a class of genetic algorithms utilizing generic representation in the form of program trees. For a particular application, one needs to provide the set of functions, whose compositions determine the space of program structures being evolved, and the set of terminals, which determine the space of specific instances of those programs. The algorithm searches the space for the best program for a given problem, applying evolutionary mechanisms borrowed from nature. Genetic algorithms have shown great capabilities in approximately solving optimization problems which could not be approximated or solved with other methods. Genetic programming extends their capabilities to deal with a broader variety of problems. However, it also extends the size of the search space, which often becomes too large to be effectively searched even by evolutionary methods. Therefore, our objective is to utilize problem constraints, if such can be identified, to restrict this space. In this publication, we propose a generic constraint specification language, powerful enough for a broad class of problem constraints. This language has two elements -- one reduces only the number of program instances, the other reduces both the space of program structures as well as their instances. With this language, we define the minimal set of complete constraints, and a set of operators guaranteeing offspring validity from valid parents. We also show that these operators are not less efficient than the standard genetic programming operators if one preprocesses the constraints - the necessary mechanisms are identified.

Janikow, Cezary Z.↗

Artificial Intelligence Enhancements to Imagery for Space Operations

Philosophy classes still ponder the question asked by Dr. George Berkely, an Anglican Bishop and philosopher in the 1600’s-- “If a tree falls in a forest and no one is around to hear it, does it make a sound?” With that in mind, I ask the following—If a still image or motion imagery from a space mission cannot be found during a search, does it exist? Since the beginning of spaceflight, imagery has been a key form of data collected. Whether for mere curiosity (what does Earth look like from Space?), or for operational reasons (did the solar panel deploy?), or for engineering purposes (what was that object that floated away from the spacecraft?), imagery has been included in space missions. To be useful, though, the image or motion imagery must be accessible and accessed when needed. During the analog era, that typically meant captions and numbers associated with the physical media. With “born digital” imagery, it is possible to add metadata to the image data file. This metadata might include the date and time of capture, mission, camera, exposure data, and similar data fields. Many modern cameras embed some basic metadata into the image file at the moment of capture. The reality, though, is even with today’s born-digital enhancements with embedded metadata at the time of capture, reviewing and cataloging still and motion imagery is very labor intensive. Humans review the imagery for sensitive content (privacy concerns, imagery containing proprietary data/subject matter), and to identify imagery containing crew members or imagery that should be reviewed for engineering or scientific reasons. All this review and manual data entry is very time-consuming. Many improvements in Artificial Intelligence (AI), Machine Learning, and processing power now make it possible to identify persons, objects, motion, color, audio with sensitive content, and other details after or while the imagery is captured.

Rodney Grubbs↗

Direct Measurement of the Spectral Structure of Cosmic-Ray Electrons+Positrons in the Tev Region With Calet on the International Space Station

Detailed measurements of the spectral structure of cosmic-ray electrons and positrons from 10.6 GeV to 7.5 TeV are presented from over 7 years of observations with the CALorimetric Electron Telescope (CALET) on the International Space Station. The instrument, consisting of a charge detector, an imaging calorimeter, and a total absorption calorimeter with a total depth of 30 radiation lengths at normal incidence and a fine shower imaging capability, is optimized to measure the all-electron spectrum well into the TeV region. Because of the excellent energy resolution (a few percent above 10 GeV) and the outstanding e/p separation (10 5 ), CALET provides optimal performance for a detailed search of structures in the energy spectrum. The analysis uses data up to the end of 2022, and the statistics of observed electron candidates has increased more than 3 times since the last publication in 2018. By adopting an updated boosted decision tree analysis, a sufficient proton rejection power up to 7.5 TeV is achieved, with a residual proton contamination less than 10%. The observed energy spectrum becomes gradually harder in the lower energy region from around 30 GeV, consistently with AMS-02, but from 300 to 600 GeV it is considerably softer than the spectra measured by DAMPE and Fermi-LAT. At high energies, the spectrum presents a sharp break around 1 TeV, with a spectral index change from −3.15 to −3.91, and a broken power law fitting the data in the energy range from 30 GeV to 4.8 TeV better than a single power law with 6.9 sigma significance, which is compatible with the DAMPE results. The break is consistent with the expected effects of radiation loss during the propagation from distant sources (except the highest energy bin). We have fitted the spectrum with a model consistent with the positron flux measured by AMS-02 below 1 TeV and interpreted the electron+positron spectrum with possible contributions from pulsars and nearby sources. Above 4.8 TeV, a possible contribution from known nearby supernova remnants, including Vela, is addressed by an event-by-event analysis providing a higher proton-rejection power than a purely statistical analysis.

O. Adriani↗

Approximate algorithms for partitioning and assignment problems

The problem of optimally assigning the modules of a parallel/pipelined program over the processors of a multiple computer system under certain restrictions on the interconnection structure of the program as well as the multiple computer system was considered. For a variety of such programs it is possible to find linear time if a partition of the program exists in which the load on any processor is within a certain bound. This method, when combined with a binary search over a finite range, provides an approximate solution to the partitioning problem. The specific problems considered were: a chain structured parallel program over a chain-like computer system, multiple chain-like programs over a host-satellite system, and a tree structured parallel program over a host-satellite system. For a problem with m modules and n processors, the complexity of the algorithm is no worse than O(mnlog(W sub T/epsilon)), where W sub T is the cost of assigning all modules to one processor and epsilon the desired accuracy.

Iqbal, M. A.↗

Improving Search Properties in Genetic Programming

With the advancing computer processing capabilities, practical computer applications are mostly limited by the amount of human programming required to accomplish a specific task. This necessary human participation creates many problems, such as dramatically increased cost. To alleviate the problem, computers must become more autonomous. In other words, computers must be capable to program/reprogram themselves to adapt to changing environments/tasks/demands/domains. Evolutionary computation offers potential means, but it must be advanced beyond its current practical limitations. Evolutionary algorithms model nature. They maintain a population of structures representing potential solutions to the problem at hand. These structures undergo a simulated evolution by means of mutation, crossover, and a Darwinian selective pressure. Genetic programming (GP) is the most promising example of an evolutionary algorithm. In GP, the structures that evolve are trees, which is a dramatic departure from previously used representations such as strings in genetic algorithms. The space of potential trees is defined by means of their elements: functions, which label internal nodes, and terminals, which label leaves. By attaching semantic interpretation to those elements, trees can be interpreted as computer programs (given an interpreter), evolved architectures, etc. JSC has begun exploring GP as a potential tool for its long-term project on evolving dextrous robotic capabilities. Last year we identified representation redundancies as the primary source of inefficiency in GP. Subsequently, we proposed a method to use problem constraints to reduce those redundancies, effectively reducing GP complexity. This method was implemented afterwards at the University of Missouri. This summer, we have evaluated the payoff from using problem constraints to reduce search complexity on two classes of problems: learning boolean functions and solving the forward kinematics problem. We have also developed and implemented methods to use additional problem heuristics to fine-tune the searchable space, and to use typing information to further reduce the search space. Additional improvements have been proposed, but they are yet to be explored and implemented.

Janikow, Cezary Z.↗

Sequential Testing Algorithms for Multiple Fault Diagnosis

In this paper, we consider the problem of constructing optimal and near-optimal test sequencing algorithms for multiple fault diagnosis. The computational complexity of solving the optimal multiple-fault isolation problem is super-exponential, that is, it is much more difficult than the single-fault isolation problem, which, by itself, is NP-hard. By employing concepts from information theory and AND/OR graph search, we present several test sequencing algorithms for the multiple fault isolation problem. These algorithms provide a trade-off between the degree of suboptimality and computational complexity. Furthermore, we present novel diagnostic strategies that generate a diagnostic directed graph (digraph), instead of a diagnostic tree, for multiple fault diagnosis. Using this approach, the storage complexity of the overall diagnostic strategy reduces substantially. The algorithms developed herein have been successfully applied to several real-world systems. Computational results indicate that the size of a multiple fault strategy is strictly related to the structure of the system.

Shakeri, Mojdeh↗

Improve Data Mining and Knowledge Discovery Through the Use of MatLab

Data mining is widely used to mine business, engineering, and scientific data. Data mining uses pattern based queries, searches, or other analyses of one or more electronic databases/datasets in order to discover or locate a predictive pattern or anomaly indicative of system failure, criminal or terrorist activity, etc. There are various algorithms, techniques and methods used to mine data; including neural networks, genetic algorithms, decision trees, nearest neighbor method, rule induction association analysis, slice and dice, segmentation, and clustering. These algorithms, techniques and methods used to detect patterns in a dataset, have been used in the development of numerous open source and commercially available products and technology for data mining. Data mining is best realized when latent information in a large quantity of data stored is discovered. No one technique solves all data mining problems; challenges are to select algorithms or methods appropriate to strengthen data/text mining and trending within given datasets. In recent years, throughout industry, academia and government agencies, thousands of data systems have been designed and tailored to serve specific engineering and business needs. Many of these systems use databases with relational algebra and structured query language to categorize and retrieve data. In these systems, data analyses are limited and require prior explicit knowledge of metadata and database relations; lacking exploratory data mining and discoveries of latent information. This presentation introduces MatLab(R) (MATrix LABoratory), an engineering and scientific data analyses tool to perform data mining. MatLab was originally intended to perform purely numerical calculations (a glorified calculator). Now, in addition to having hundreds of mathematical functions, it is a programming language with hundreds built in standard functions and numerous available toolboxes. MatLab's ease of data processing, visualization and its enormous availability of built in functionalities and toolboxes make it suitable to perform numerical computations and simulations as well as a data mining tool. Engineers and scientists can take advantage of the readily available functions/toolboxes to gain wider insight in their perspective data mining experiments.

Shaykhian, Gholam Ali↗

Improve Data Mining and Knowledge Discovery through the use of MatLab

Data mining is widely used to mine business, engineering, and scientific data. Data mining uses pattern based queries, searches, or other analyses of one or more electronic databases/datasets in order to discover or locate a predictive pattern or anomaly indicative of system failure, criminal or terrorist activity, etc. There are various algorithms, techniques and methods used to mine data; including neural networks, genetic algorithms, decision trees, nearest neighbor method, rule induction association analysis, slice and dice, segmentation, and clustering. These algorithms, techniques and methods used to detect patterns in a dataset, have been used in the development of numerous open source and commercially available products and technology for data mining. Data mining is best realized when latent information in a large quantity of data stored is discovered. No one technique solves all data mining problems; challenges are to select algorithms or methods appropriate to strengthen data/text mining and trending within given datasets. In recent years, throughout industry, academia and government agencies, thousands of data systems have been designed and tailored to serve specific engineering and business needs. Many of these systems use databases with relational algebra and structured query language to categorize and retrieve data. In these systems, data analyses are limited and require prior explicit knowledge of metadata and database relations; lacking exploratory data mining and discoveries of latent information. This presentation introduces MatLab(TradeMark)(MATrix LABoratory), an engineering and scientific data analyses tool to perform data mining. MatLab was originally intended to perform purely numerical calculations (a glorified calculator). Now, in addition to having hundreds of mathematical functions, it is a programming language with hundreds built in standard functions and numerous available toolboxes. MatLab's ease of data processing, visualization and its enormous availability of built in functionalities and toolboxes make it suitable to perform numerical computations and simulations as well as a data mining tool. Engineers and scientists can take advantage of the readily available functions/toolboxes to gain wider insight in their perspective data mining experiments.

Shaykahian, Gholan Ali↗

Horizontal transfer of archaeal genes into the deinococcaceae: detection by molecular and computer-based approaches

Members of the Deinococcaceae (e.g., Thermus, Meiothermus, Deinococcus) contain A/V-ATPases typically found in Archaea or Eukaryotes which were probably acquired by horizontal gene transfer. Two methods were used to quantify the extent to which archaeal or eukaryotic genes have been acquired by this lineage. Screening of a Meiothermus ruber library with probes made against Thermoplasma acidophilum DNA yielded a number of clones which hybridized more strongly than background. One of these contained the prolyl tRNA synthetase (RS) gene. Phylogenetic analysis shows the M. ruber and D. radiodurans prolyl RS to be more closely related to archaeal and eukaryal forms of this gene than to the typical bacterial type. Using a bioinformatics approach, putative open reading frames (ORFs) from the prerelease version of the D. radiodurans genome were screened for genes more closely related to archaeal or eukaryotic genes. Putative ORFs were searched against representative genomes from each of the three domains using automated BLAST. ORFs showing the highest matches against archaeal and eukaryotic genes were collected and ranked. Among the top-ranked hits were the A/V-ATPase catalytic and noncatalytic subunits and the prolyl RS genes. Using phylogenetic methods, ORFs were analyzed and trees assessed for evidence of horizontal gene transfer. Of the 45 genes examined, 20 showed topologies in which D. radiodurans homologues clearly group with eukaryotic or archaeal homologues, and 17 additional trees were found to show probable evidence of horizontal gene transfer. Compared to the total number of ORFs in the genome, those that can be identified as having been acquired from Archaea or Eukaryotes are relatively few (approximately 1%), suggesting that interdomain transfer is rare.

Non-NASA Center↗