Search NASASearch

SEARCH · Search NASA

Results for “graph algorithms”

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

Elimination sequence optimization for SPAR

SPAR is a large-scale computer program for finite element structural analysis. The program allows user specification of the order in which the joints of a structure are to be eliminated since this order can have significant influence over solution performance, in terms of both storage requirements and computer time. An efficient elimination sequence can improve performance by over 50% for some problems. Obtaining such sequences, however, requires the expertise of an experienced user and can take hours of tedious effort to affect. Thus, an automatic elimination sequence optimizer would enhance productivity by reducing the analysts' problem definition time and by lowering computer costs. Two possible methods for automating the elimination sequence specifications were examined. Several algorithms based on the graph theory representations of sparse matrices were studied with mixed results. Significant improvement in the program performance was achieved, but sequencing by an experienced user still yields substantially better results. The initial results provide encouraging evidence that the potential benefits of such an automatic sequencer would be well worth the effort.

Hogan, Harry A.

Space Shuttle Main Engine component assembly, assignment, and scheduling expert system

The SSME's Component Assembly and Life Management Expert System (CALMES) assists the engine assembly and scheduling process, ensuring that these activities utilize available resources with the greatest possible efficiency. On the basis of parts inventories and a proposed flight schedule, CALMES (1) determined how components may be optimally assembled from the parts inventory, (2) assigns components to flights, (3) schedules component testing, and (4) schedules component assembly. A graph-theoretical optimal matching algorithm, based on a modified simplex method, is applied to the major functions required by the SSME component assembly and scheduling processes.

Dietz, W. E.

Spatial deadlocks in task-level planning

We will formulate the problem of resolving spatial (space occupancy and support-stability) interactions in terms of tools developed in Operating Systems for the problems of deadlocks and synchronization. We show how to construct state graphs and to detect resource contentions and deadlocks from these state graphs. We describe an algorithm, called CONTAC, to deal with deadlocks where 'processes' represent the ordered motions of parts. The algorithm is a monitor-like process using preventative preemptive protocol to resolve higher-degree deadlocks. We develop the representation for knowledge about current allocations, pending requests, and synchronization constraints, to generate a contention-free sequence of actions. In this paper we focus on modeling deadlocks which are manifestations of spatial interactions.

Doshi, Rajkumar S.

Dynamic Domains in Data Production Planning

This paper discusses a planner-based approach to automating data production tasks, such as producing fire forecasts from satellite imagery and weather station data. Since the set of available data products is large, dynamic and mostly unknown, planning techniques developed for closed worlds are unsuitable. We discuss a number of techniques we have developed to cope with data production domains, including a novel constraint propagation algorithm based on planning graphs and a constraint-based approach to interleaved planning, sensing and execution.

Golden, Keith

Graph-Based Path-Planning for Titan Balloons

A document describes a graph-based path-planning algorithm for balloons with vertical control authority and little or no horizontal control authority. The balloons are designed to explore celestial bodies with atmospheres, such as Titan, a moon of Saturn. The algorithm discussed enables the balloon to achieve horizontal motion using the local horizontal winds. The approach is novel because it enables the balloons to use arbitrary wind field models. This is in contrast to prior approaches that used highly simplified wind field models, such as linear, or binary, winds. This new approach works by discretizing the space in which the balloon operates, and representing the possible states of the balloon as a graph whose arcs represent the time taken to move from one node to another. The approach works with arbitrary wind fields, by looking up the wind strength and direction at every node in the graph from an arbitrary wind model. Having generated the graph, search techniques such as Dijkstra s algorithm are then used to find the set of vertical actuation commands that takes the balloon from the start to the goal in minimum time. In addition, the set of reachable locations on the moon or planet can be determined.

Blackmore, Lars James

Path planning for assembly of strut-based structures

A path planning method with collision avoidance for a general single chain nonredundant or redundant robot is proposed. Joint range boundary overruns are also avoided. The result is a sequence of joint vectors which are passed to a trajectory planner. A potential field algorithm in joint space computes incremental joint vectors delta-q = delta-q(sub a) + delta-q(sub c) + delta-q(sub r). Adding delta-q to the robot's current joint vector leads to the next step in the path. Delta-q(sub a) is obtained by computing the minimum norm solution of the underdetermined linear system J delta-q(sub a) = x(sub a) where x(sub a) is a translational and rotational force vector that attracts the robot to its goal position and orientation. J is the manipulator Jacobian. Delta-q(sub c) is a collision avoidance term encompassing collisions between the robot (links and payload) and obstacles in the environment as well as collisions among links and payload of the robot themselves. It is obtained in joint space directly. Delta-q(sub r) is a function of the current joint vector and avoids joint range overruns. A higher level discrete search over candidate safe positions is used to provide alternatives in case the potential field algorithm encounters a local minimum and thus fails to reach the goal. The best first search algorithm A* is used for graph search. Symmetry properties of the payload and equivalent rotations are exploited to further enlarge the number of alternatives passed to the potential field algorithm.

Muenger, Rolf

A system for routing arbitrary directed graphs on SIMD architectures

There are many problems which can be described in terms of directed graphs that contain a large number of vertices where simple computations occur using data from connecting vertices. A method is given for parallelizing such problems on an SIMD machine model that is bit-serial and uses only nearest neighbor connections for communication. Each vertex of the graph will be assigned to a processor in the machine. Algorithms are given that will be used to implement movement of data along the arcs of the graph. This architecture and algorithms define a system that is relatively simple to build and can do graph processing. All arcs can be transversed in parallel in time O(T), where T is empirically proportional to the diameter of the interconnection network times the average degree of the graph. Modifying or adding a new arc takes the same time as parallel traversal.

Tomboulian, Sherryl

G-Mapper: Learning a Cover in the Mapper Construction

The Mapper algorithm is a visualization technique in topological data analysis (TDA) that outputs a graph reflecting the structure of a given dataset. However, the Mapper algorithm requires tuning several parameters in order to generate a “nice” Mapper graph. This paper focuses on selecting the cover parameter. We present an algorithm that optimizes the cover of a Mapper graph by splitting a cover repeatedly according to a statistical test for normality. Our algorithm is based on G-means clustering, which searches for the optimal number of clusters in 𝑘-means by iteratively applying the Anderson–Darling test. Our splitting procedure employs a Gaussian mixture model to carefully choose the cover according to the distribution of the given data. In conclusion, experiments for synthetic and real-world datasets demonstrate that our algorithm generates covers so that the Mapper graphs retain the essence of the datasets, while also running significantly faster than a previous iterative method.

G-means clustering

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

Contact Multigraph Routing: Overview and Implementation

In Delay Tolerant Networking (DTN), the standard routing algorithm used to navigate time-varying networks has been Contact Graph Routing (CGR). In CGR, a globally distributed list of contacts, periods during which two DTN nodes may communicate, is used to construct a contact graph, in which contacts are vertices. A version of Dijkstra’s algorithm can then be used to find paths through this model of the timevarying network. However, since contact graphs may be large compared to the network, potentially growing with the square of the number of network nodes and linearly with the time interval represented, the resulting algorithm does not scale well with the size of the network or time. Any improvement to the routing algorithm will bring significant returns to scale. In a previous paper, we briefly introduced an alternative to the contact graph model for routing. This alternative model is based on a multigraph (a graph in which there may be multiple edges between a pair of vertices) where vertices represent network nodes instead of contacts. A version of Dijkstra’s algorithm in these multigraph models reduces the time needed to perform the same routing computations done in the existing CGR algorithm. Moreover, a modified version of Yen’s algorithm for multigraphs is included. Our variation of CGR, which we call Contact Multigraph Routing (CMR), provides an in-line replacement for the previously used pathfinding algorithms. This paper describes an implementation created based on the CMR approach, and experimental comparisons to traditional CGR are given. In addition, we explore some additional modifications to the routing pipeline traditionally assumed in CGR. These modifications range from the theoretical to the practical in terms of size and scope. We step forward our understanding of sheaftheoretic networking and describe how to model the routing pipeline using sheaves. We detail some enhanced route selection criteria that addresses some of the added complexity of DTNbased systems. We also include a future works section on future improvements and implementations that would be of service to the broader DTN community.

contact graph routing

The ATAMM procedure model for concurrent processing of large grained control and signal processing algorithms

An overview is presented of a model for describing data and control flow associated with the execution of large-grained, decision-free algorithms in a special distributed computer environment. The ATAMM (Algorithm-To-Architecture Mapping Model) model provides a basis for relating an algorithm to its execution in a dataflow multicomputer environment. The ATAMM model features a marked graph Petri net description of the algorithm behavior with regard to both data and control flow. The model provides an analytical basis for calculating performance bounds on throughput characteristics which are demonstrated here.

Stoughton, John W.

Algorithm To Architecture Mapping Model (ATAMM) multicomputer operating system functional specification

A functional description of the ATAMM Multicomputer Operating System is presented. ATAMM (Algorithm to Architecture Mapping Model) is a marked graph model which describes the implementation of large grained, decomposed algorithms on data flow architectures. AMOS, the ATAMM Multicomputer Operating System, is an operating system which implements the ATAMM rules. A first generation version of AMOS which was developed for the Advanced Development Module (ADM) is described. A second generation version of AMOS being developed for the Generic VHSIC Spaceborne Computer (GVSC) is also presented.

Mielke, R.

Using Graph Coloring to Compute Total Derivatives More Efficiently in OpenMDAO

When they are applicable, gradient based optimization algorithms are the most efficient way to solve design optimization problems. Although gradient based methods are generally efficient, they can be made significantly more so through the usage of analytic techniques to compute the necessary total derivatives. The traditional forward (direct) and reverse (adjoint) analytic techniques have computational costs that scale linearly with the number of design variables and the number of constraints, respectively. In this work, we present an application of a graph coloring algorithm to the analytic techniques for computing total derivative Jacobians in order to achieve much better computational scaling than the pure analytic methods can provide alone. A detailed theoretical explanation of how coloring algorithms interact with analytic derivative methods is presented that illustrates specific types of sparsity patterns that must be present in total derivative Jacobians in order for this coloring technique to be effective. The new technique has been implemented as a feature in the OpenMDAO framework and the implementation is demonstrated on two example problems. The performance on the example problems up to 50% reduction in compute cost for optimizations with bi-directional coloring compared to traditional constraint aggregation. Additionally, the results show how coloring technique alleviates some of the numerical difficulties that constraint aggregation can cause, leading to the ability to solve larger problems. It is expected that the new method will have wide applicability to multidisciplinary optimization problems, and that its availability in OpenMDAO will offer significant computational savings for users without the need for them to implement the coloring algorithm themselves.

Trajectory

Parametric binary dissection

Binary dissection is widely used to partition non-uniform domains over parallel computers. This algorithm does not consider the perimeter, surface area, or aspect ratio of the regions being generated and can yield decompositions that have poor communication to computation ratio. Parametric Binary Dissection (PBD) is a new algorithm in which each cut is chosen to minimize load + lambda x(shape). In a 2 (or 3) dimensional problem, load is the amount of computation to be performed in a subregion and shape could refer to the perimeter (respectively surface) of that subregion. Shape is a measure of communication overhead and the parameter permits us to trade off load imbalance against communication overhead. When A is zero, the algorithm reduces to plain binary dissection. This algorithm can be used to partition graphs embedded in 2 or 3-d. Load is the number of nodes in a subregion, shape the number of edges that leave that subregion, and lambda the ratio of time to communicate over an edge to the time to compute at a node. An algorithm is presented that finds the depth d parametric dissection of an embedded graph with n vertices and e edges in O(max(n log n, de)) time, which is an improvement over the O(dn log n) time of plain binary dissection. Parallel versions of this algorithm are also presented; the best of these requires O((n/p) log(sup 3)p) time on a p processor hypercube, assuming graphs of bounded degree. How PBD is applied to 3-d unstructured meshes and yields partitions that are better than those obtained by plain dissection is described. Its application to the color image quantization problem is also discussed, in which samples in a high-resolution color space are mapped onto a lower resolution space in a way that minimizes the color error.

Bokhari, Shahid H.

A study of the Nordsieck-type predictor-corrector methods

Predictor-corrector schemes are discussed for the numerical integration of initial value problems by computer. Descloux formulas, which are considered modified Nordsieck formulas are studied because of their desirable stability and truncation properties along with the standard Nordsieck formulas. The stability of Nordsieck and modified Nordsieck algorithms are computed, and the results are graphed. Test problems are included as examples for comparing the efficiency of the algorithms.

Eiserike, H. M.

Planning Assembly Of Large Truss Structures In Outer Space

Report dicusses developmental algorithm used in systematic planning of sequences of operations in which large truss structures assembled in outer space. Assembly sequence represented by directed graph called "assembly graph", in which each arc represents joining of two parts or subassemblies. Algorithm generates assembly graph, working backward from state of complete assembly to initial state, in which all parts disassembled. Working backward more efficient than working forward because it avoids intermediate dead ends.

De Mello, Luiz S. Homem

Efficient parallel architecture for highly coupled real-time linear system applications

A systematic procedure is developed for exploiting the parallel constructs of computation in a highly coupled, linear system application. An overall top-down design approach is adopted. Differential equations governing the application under consideration are partitioned into subtasks on the basis of a data flow analysis. The interconnected task units constitute a task graph which has to be computed in every update interval. Multiprocessing concepts utilizing parallel integration algorithms are then applied for efficient task graph execution. A simple scheduling routine is developed to handle task allocation while in the multiprocessor mode. Results of simulation and scheduling are compared on the basis of standard performance indices. Processor timing diagrams are developed on the basis of program output accruing to an optimal set of processors. Basic architectural attributes for implementing the system are discussed together with suggestions for processing element design. Emphasis is placed on flexible architectures capable of accommodating widely varying application specifics.

Carroll, Chester C.

Systems Engineering Design Via Experimental Operation Research: Complex Organizational Metric for Programmatic Risk Environments (COMPRE)

Unique and innovative graph theory, neural network, organizational modeling, and genetic algorithms are applied to the design and evolution of programmatic and organizational architectures. Graph theory representations of programs and organizations increase modeling capabilities and flexibility, while illuminating preferable programmatic/organizational design features. Treating programs and organizations as neural networks results in better system synthesis, and more robust data modeling. Organizational modeling using covariance structures enhances the determination of organizational risk factors. Genetic algorithms improve programmatic evolution characteristics, while shedding light on rulebase requirements for achieving specified technological readiness levels, given budget and schedule resources. This program of research improves the robustness and verifiability of systems synthesis tools, including the Complex Organizational Metric for Programmatic Risk Environments (COMPRE).

Mog, Robert A.