Search NASA⌕ Search

SEARCH · Search NASA

Results for “algorithm”

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 469 records · Page 26

A Diagonal Form of an Implicit Approximate-Factorization Algorithm

A modification of an implicit approximate-factorization finite-difference algorithm applied to partial differential equations is presented. This algorithm is applied to the two- and three-dimensional Euler equations in general curvilinear coordinates. The modification transforms the coupled system of equations into an uncoupled diagonal form that requires less computational work. For steady-state applications, the resulting diagonal algorithm retains the stability and accuracy characteristics of the original algorithm. The diagonal algorithm reduces the storage requirement of the implicit solution process and therefore has an important effect on the application of implicit finite-difference schemes to vector processors. Results are presented for realistic two-dimensional transonic flow fields about airfoils. Computation costs are reduced 24-34%.

Pulliam, T. H.↗

Algorithms and Libraries

This exploratory study initiated our inquiry into algorithms and applications that would benefit by latency tolerant approach to algorithm building, including the construction of new algorithms where appropriate. In a multithreaded execution, when a processor reaches a point where remote memory access is necessary, the request is sent out on the network and a context--switch occurs to a new thread of computation. This effectively masks a long and unpredictable latency due to remote loads, thereby providing tolerance to remote access latency. We began to develop standards to profile various algorithm and application parameters, such as the degree of parallelism, granularity, precision, instruction set mix, interprocessor communication, latency etc. These tools will continue to develop and evolve as the Information Power Grid environment matures. To provide a richer context for this research, the project also focused on issues of fault-tolerance and computation migration of numerical algorithms and software. During the initial phase we tried to increase our understanding of the bottlenecks in single processor performance. Our work began by developing an approach for the automatic generation and optimization of numerical software for processors with deep memory hierarchies and pipelined functional units. Based on the results we achieved in this study we are planning to study other architectures of interest, including development of cost models, and developing code generators appropriate to these architectures.

Dongarra, Jack↗

Application of Least Mean Square Algorithms to Spacecraft Vibration Compensation

This paper describes the application of the Least Mean Square (LMS) algorithm in tandem with the Filtered-X Least Mean Square algorithm for controlling a science instrument's line-of-sight pointing. Pointing error is caused by a periodic disturbance and spacecraft vibration. A least mean square algorithm is used on-orbit to produce the transfer function between the instrument's servo-mechanism and error sensor. The result is a set of adaptive transversal filter weights tuned to the transfer function. The Filtered-X LMS algorithm, which is an extension of the LMS, tunes a set of transversal filter weights to the transfer function between the disturbance source and the servo-mechanism's actuation signal. The servo-mechanism's resulting actuation counters the disturbance response and thus maintains accurate science instrumental pointing. A simulation model of the Upper Atmosphere Research Satellite is used to demonstrate the algorithms.

Woodard , Stanley E.↗

Development and Validation of a Polar Cloud Algorithm for CERES

The objectives of this project, as described in the original proposal, were to develop an algorithm for diagnosing cloud properties over snow- and ice-covered surfaces, particularly at night, using satellite radiances from the Advanced Very High Resolution Radiometer (AVHRR) and High-resolution Infrared Radiation Sounder (HIRS) sensors. Products from this algorithm include a cloud mask and additional cloud properties such as cloud phase, amount, and height. The SIVIS software package, developed as a part of the CERES project, was originally the primary tool used to develop the algorithm, but as it is no longer supported we have had to pursue a new tool to enable the combination and analysis of collocated radiances from AVHRR and HIRS. This turned out to be a much larger endeavor than we expected, but we now have the data sets collocated (with many thanks to B. Baum for the fundamental code) and we have developed a nighttime cloud detection algorithm. Using this algorithm we have also computed realistic-looking cloud fractions from AVHRR brightness temperatures. A method to identify cloud phase has also been implemented. Atmospheric information from the TIROS Operational Vertical Sounder (TOVS) Polar Pathfinder Data Set, which includes temperature and moisture profiles as well as surface information, provides information required for determining cloud-top height.

Source record↗

Weighted MinMax Algorithm for Color Image Quantization

The maximum intercluster distance and the maximum quantization error that are minimized by the MinMax algorithm are shown to be inappropriate error measures for color image quantization. A fast and effective (improves image quality) method for generalizing activity weighting to any histogram-based color quantization algorithm is presented. A new non-hierarchical color quantization technique called weighted MinMax that is a hybrid between the MinMax and Linde-Buzo-Gray (LBG) algorithms is also described. The weighted MinMax algorithm incorporates activity weighting and seeks to minimize WRMSE, whereby obtaining high quality quantized images with significantly less visual distortion than the MinMax algorithm.

Reitan, Paula J.↗

A Computational Fluid Dynamics Algorithm on a Massively Parallel Computer

The discipline of computational fluid dynamics is demanding ever-increasing computational power to deal with complex fluid flow problems. We investigate the performance of a finite-difference computational fluid dynamics algorithm on a massively parallel computer, the Connection Machine. Of special interest is an implicit time-stepping algorithm; to obtain maximum performance from the Connection Machine, it is necessary to use a nonstandard algorithm to solve the linear systems that arise in the implicit algorithm. We find that the Connection Machine ran achieve very high computation rates on both explicit and implicit algorithms. The performance of the Connection Machine puts it in the same class as today's most powerful conventional supercomputers.

Jespersen, Dennis C.↗

Multi-Parent Clustering Algorithms from Stochastic Grammar Data Models

We introduce a statistical data model and an associated optimization-based clustering algorithm which allows data vectors to belong to zero, one or several "parent" clusters. For each data vector the algorithm makes a discrete decision among these alternatives. Thus, a recursive version of this algorithm would place data clusters in a Directed Acyclic Graph rather than a tree. We test the algorithm with synthetic data generated according to the statistical data model. We also illustrate the algorithm using real data from large-scale gene expression assays.

Mjoisness, Eric↗

A Parallel Genetic Algorithm for Automated Electronic Circuit Design

Parallelized versions of genetic algorithms (GAs) are popular primarily for three reasons: the GA is an inherently parallel algorithm, typical GA applications are very compute intensive, and powerful computing platforms, especially Beowulf-style computing clusters, are becoming more affordable and easier to implement. In addition, the low communication bandwidth required allows the use of inexpensive networking hardware such as standard office ethernet. In this paper we describe a parallel GA and its use in automated high-level circuit design. Genetic algorithms are a type of trial-and-error search technique that are guided by principles of Darwinian evolution. Just as the genetic material of two living organisms can intermix to produce offspring that are better adapted to their environment, GAs expose genetic material, frequently strings of 1s and Os, to the forces of artificial evolution: selection, mutation, recombination, etc. GAs start with a pool of randomly-generated candidate solutions which are then tested and scored with respect to their utility. Solutions are then bred by probabilistically selecting high quality parents and recombining their genetic representations to produce offspring solutions. Offspring are typically subjected to a small amount of random mutation. After a pool of offspring is produced, this process iterates until a satisfactory solution is found or an iteration limit is reached. Genetic algorithms have been applied to a wide variety of problems in many fields, including chemistry, biology, and many engineering disciplines. There are many styles of parallelism used in implementing parallel GAs. One such method is called the master-slave or processor farm approach. In this technique, slave nodes are used solely to compute fitness evaluations (the most time consuming part). The master processor collects fitness scores from the nodes and performs the genetic operators (selection, reproduction, variation, etc.). Because of dependency issues in the GA, it is possible to have idle processors. However, as long as the load at each processing node is similar, the processors are kept busy nearly all of the time. In applying GAs to circuit design, a suitable genetic representation 'is that of a circuit-construction program. We discuss one such circuit-construction programming language and show how evolution can generate useful analog circuit designs. This language has the desirable property that virtually all sets of combinations of primitives result in valid circuit graphs. Our system allows circuit size (number of devices), circuit topology, and device values to be evolved. Using a parallel genetic algorithm and circuit simulation software, we present experimental results as applied to three analog filter and two amplifier design tasks. For example, a figure shows an 85 dB amplifier design evolved by our system, and another figure shows the performance of that circuit (gain and frequency response). In all tasks, our system is able to generate circuits that achieve the target specifications.

Long, Jason D.↗

JavaGenes and Condor: Cycle-Scavenging Genetic Algorithms

A genetic algorithm code, JavaGenes, was written in Java and used to evolve pharmaceutical drug molecules and digital circuits. JavaGenes was run under the Condor cycle-scavenging batch system managing 100-170 desktop SGI workstations. Genetic algorithms mimic biological evolution by evolving solutions to problems using crossover and mutation. While most genetic algorithms evolve strings or trees, JavaGenes evolves graphs representing (currently) molecules and circuits. Java was chosen as the implementation language because the genetic algorithm requires random splitting and recombining of graphs, a complex data structure manipulation with ample opportunities for memory leaks, loose pointers, out-of-bound indices, and other hard to find bugs. Java garbage-collection memory management, lack of pointer arithmetic, and array-bounds index checking prevents these bugs from occurring, substantially reducing development time. While a run-time performance penalty must be paid, the only unacceptable performance we encountered was using standard Java serialization to checkpoint and restart the code. This was fixed by a two-day implementation of custom checkpointing. JavaGenes is minimally integrated with Condor; in other words, JavaGenes must do its own checkpointing and I/O redirection. A prototype Java-aware version of Condor was developed using standard Java serialization for checkpointing. For the prototype to be useful, standard Java serialization must be significantly optimized. JavaGenes is approximately 8700 lines of code and a few thousand JavaGenes jobs have been run. Most jobs ran for a few days. Results include proof that genetic algorithms can evolve directed and undirected graphs, development of a novel crossover operator for graphs, a paper in the journal Nanotechnology, and another paper in preparation.

Globus, Al↗

OCTS And Seawifs Bio-Optical Algorithm and Product Vaildattion and Intercomparison in US Coastal Waters

Monitoring the health of U.S. coastal waters is an important goal of the National Oceanic and Atmospheric Administration (NOAA). Satellite sensors are capable of providing daily synoptic data of large expanses of the U.S. coast. Ocean color sensor, in particular, can be used to monitor the water quality of coastal waters on an operational basis. To appraise the validity of satellite-derived measurements, such as chlorophyll concentration, the bio-optical algorithms used to derive them must be evaluated in coastal environments. Towards this purpose, over 21 cruises in diverse U.S. coastal waters have been conducted. Of these 21 cruises, 12 have been performed in conjunction with and under the auspices of the NASA/SIMBIOS Project. The primary goal of these cruises has been to obtain in-situ measurements of downwelling irradiance, upwelling radiance, and chlorophyll concentrations in order to evaluate bio-optical algorithms that estimate chlorophyll concentration. In this Technical Memorandum, we evaluate the ability of five bio-optical algorithms, including the current SeaWiFS algorithm, to estimate chlorophyll concentration in surface waters of the South Atlantic Bight (SAB). The SAB consists of a variety of environments including coastal and continental shelf regimes, Gulf Stream waters, and the Sargasso Sea. The biological and optical characteristics of the region is complicated by temporal and spatial variability in phytoplankton composition, primary productivity, and the concentrations of colored dissolved organic matter (CDOM) and suspended sediment. As such, the SAB is an ideal location to test the robustness of algorithms for coastal use.

Brow, Chirstopher↗

OCTS and SeaWiFS Bio-Optical Algorithm and Product Validation and Intercomparison in US Coastal Waters

Monitoring the health of US coastal waters is an important goal of the National Oceanic and Atmospheric Administration (NOAA). Satellite sensors are capable of providing daily synoptic data of large expanses of the US coast. Ocean color sensors, in particular, can be used to monitor the water quality of coastal waters on an operational basis. To appraise the validity of satellite-derived measurements, such as chlorophyll concentration, the bio-optical algorithms used to derive them must be evaluated in coastal environments. Towards this purpose, over 21 cruises in diverse US coastal waters have been conducted. Of these 21 cruises, 12 have been performed in conjunction with and under the auspices of the NASA/Sensor Intercomparison and Merger for Biological and Interdisciplinary Oceanic Studies (SIMBIOS) Project. The primary goal of these cruises has been to obtain in-situ measurements of downwelling irradiance, upwelling radiance, and chlorophyll concentrations in order to evaluate bio-optical algorithms that estimate chlorophyll concentration. In this Technical Memorandum, we evaluate the ability of five bio-optical algorithms, including the current Sea-Viewing Wide Field-of-view Sensor (SeaWiFS) algorithm, to estimate chlorophyll concentration in surface waters of the South Atlantic Bight (SAB). The SAB consists of a variety of environments including coastal and continental shelf regimes, Gulf Stream waters, and the Sargasso Sea. The biological and optical characteristics of the region is complicated by temporal and spatial variability in phytoplankton composition, primary productivity, and the concentrations of colored dissolved organic matter (CDOM) and suspended sediment. As such, the SAB is an ideal location to test the robustness of algorithms for coastal use.

Brown, Christopher W.↗

The Computational Complexity, Parallel Scalability, and Performance of Atmospheric Data Assimilation Algorithms

The computational complexity of algorithms for Four Dimensional Data Assimilation (4DDA) at NASA's Data Assimilation Office (DAO) is discussed. In 4DDA, observations are assimilated with the output of a dynamical model to generate best-estimates of the states of the system. It is thus a mapping problem, whereby scattered observations are converted into regular accurate maps of wind, temperature, moisture and other variables. The DAO is developing and using 4DDA algorithms that provide these datasets, or analyses, in support of Earth System Science research. Two large-scale algorithms are discussed. The first approach, the Goddard Earth Observing System Data Assimilation System (GEOS DAS), uses an atmospheric general circulation model (GCM) and an observation-space based analysis system, the Physical-space Statistical Analysis System (PSAS). GEOS DAS is very similar to global meteorological weather forecasting data assimilation systems, but is used at NASA for climate research. Systems of this size typically run at between 1 and 20 gigaflop/s. The second approach, the Kalman filter, uses a more consistent algorithm to determine the forecast error covariance matrix than does GEOS DAS. For atmospheric assimilation, the gridded dynamical fields typically have More than 10(exp 6) variables, therefore the full error covariance matrix may be in excess of a teraword. For the Kalman filter this problem can easily scale to petaflop/s proportions. We discuss the computational complexity of GEOS DAS and our implementation of the Kalman filter. We also discuss and quantify some of the technical issues and limitations in developing efficient, in terms of wall clock time, and scalable parallel implementations of the algorithms.

Lyster, Peter M.↗

UFLIC: A Line Integral Convolution Algorithm for Visualizing Unsteady Flows

This paper presents an algorithm, UFLIC (Unsteady Flow LIC), to visualize vector data in unsteady flow fields. Using the Line Integral Convolution (LIC) as the underlying method, a new convolution algorithm is proposed that can effectively trace the flow's global features over time. The new algorithm consists of a time-accurate value depositing scheme and a successive feed-forward method. The value depositing scheme accurately models the flow advection, and the successive feed-forward method maintains the coherence between animation frames. Our new algorithm can produce time-accurate, highly coherent flow animations to highlight global features in unsteady flow fields. CFD scientists, for the first time, are able to visualize unsteady surface flows using our algorithm.

Shen, Han-Wei↗

NWRA AVOSS Wake Vortex Prediction Algorithm

This report provides a detailed description of the wake vortex prediction algorithm used in the Demonstration Version of NASA's Aircraft Vortex Spacing System (AVOSS). The report includes all equations used in the algorithm, an explanation of how to run the algorithm, and a discussion of how the source code for the algorithm is organized. Several appendices contain important supplementary information, including suggestions for enhancing the algorithm and results from test cases.

Robins, R. E.↗

New Attitude Sensor Alignment Calibration Algorithms

Accurate spacecraft attitudes may only be obtained if the primary attitude sensors are well calibrated. Launch shock, relaxation of gravitational stresses and similar effects often produce large enough alignment shifts so that on-orbit alignment calibration is necessary if attitude accuracy requirements are to be met. A variety of attitude sensor alignment algorithms have been developed to meet the need for on-orbit calibration. Two new algorithms are presented here: ALICAL and ALIQUEST. Each of these has advantages in particular circumstances. ALICAL is an attitude independent algorithm that uses near simultaneous measurements from two or more sensors to produce accurate sensor alignments. For each set of simultaneous observations the attitude is overdetermined. The information content of the extra degrees of freedom can be combined over numerous sets to provide the sensor alignments. ALIQUEST is an attitude dependent algorithm that combines sensor and attitude data into a loss function that has the same mathematical form as the Wahba problem. Alignments can then be determined using any of the algorithms (such as the QUEST quaternion estimator) that have been developed to solve the Wahba problem for attitude. Results from the use of these methods on active missions are presented.

Hashmall, Joseph A.↗

Combinatorial Multiobjective Optimization Using Genetic Algorithms

The research proposed in this document investigated multiobjective optimization approaches based upon the Genetic Algorithm (GA). Several versions of the GA have been adopted for multiobjective design, but, prior to this research, there had not been significant comparisons of the most popular strategies. The research effort first generalized the two-branch tournament genetic algorithm in to an N-branch genetic algorithm, then the N-branch GA was compared with a version of the popular Multi-Objective Genetic Algorithm (MOGA). Because the genetic algorithm is well suited to combinatorial (mixed discrete / continuous) optimization problems, the GA can be used in the conceptual phase of design to combine selection (discrete variable) and sizing (continuous variable) tasks. Using a multiobjective formulation for the design of a 50-passenger aircraft to meet the competing objectives of minimizing takeoff gross weight and minimizing trip time, the GA generated a range of tradeoff designs that illustrate which aircraft features change from a low-weight, slow trip-time aircraft design to a heavy-weight, short trip-time aircraft design. Given the objective formulation and analysis methods used, the results of this study identify where turboprop-powered aircraft and turbofan-powered aircraft become more desirable for the 50 seat passenger application. This aircraft design application also begins to suggest how a combinatorial multiobjective optimization technique could be used to assist in the design of morphing aircraft.

Crossley, William A.↗

Dynamics of Quantum Adiabatic Evolution Algorithm for Number Partitioning

We have developed a general technique to study the dynamics of the quantum adiabatic evolution algorithm applied to random combinatorial optimization problems in the asymptotic limit of large problem size n. We use as an example the NP-complete Number Partitioning problem and map the algorithm dynamics to that of an auxiliary quantum spin glass system with the slowly varying Hamiltonian. We use a Green function method to obtain the adiabatic eigenstates and the minimum exitation gap, gmin = O(n2(sup -n/2)), corresponding to the exponential complexity of the algorithm for Number Partitioning. The key element of the analysis is the conditional energy distribution computed for the set of all spin configurations generated from a given (ancestor) configuration by simultaneous flipping of a fixed number of spins. For the problem in question this distribution is shown to depend on the ancestor spin configuration only via a certain parameter related to the energy of the configuration. As the result, the algorithm dynamics can be described in terms of one-dimensional quantum diffusion in the energy space. This effect provides a general limitation of a quantum adiabatic computation in random optimization problems. Analytical results are in agreement with the numerical simulation of the algorithm.

Smelyanskiy, Vadius↗

A De-centralized Scheduling and Load Balancing Algorithm for Heterogeneous Grid Environments

In the past two decades, numerous scheduling and load balancing techniques have been proposed for locally distributed multiprocessor systems. However, they all suffer from significant deficiencies when extended to a Grid environment: some use a centralized approach that renders the algorithm unscalable, while others assume the overhead involved in searching for appropriate resources to be negligible. Furthermore, classical scheduling algorithms do not consider a Grid node to be N-resource rich and merely work towards maximizing the utilization of one of the resources. In this paper, we propose a new scheduling and load balancing algorithm for a generalized Grid model of N-resource nodes that not only takes into account the node and network heterogeneity, but also considers the overhead involved in coordinating among the nodes. Our algorithm is decentralized, scalable, and overlaps the node coordination time with that of the actual processing of ready jobs, thus saving valuable clock cycles needed for making decisions. The proposed algorithm is studied by conducting simulations using the Message Passing Interface (MPI) paradigm.

Arora, Manish↗