Changes between Version 11 and Version 12 of soc2009


Ignore:
Timestamp:
Mar 21, 2009, 5:15:45 PM (14 years ago)
Author:
Andrew Sutton
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • soc2009

    v11 v12  
    348348The Network Workbench ([http://nwb.slis.indiana.edu/]) is a GUI-based framework for analysis of large-scale networks.  This project would involve implementing components for NWB based on BGL and/or Parallel BGL.
    349349
     350=== Incidence Matrices ===
     351
     352An incidence matrix (http://en.wikipedia.org/wiki/Incidence_matrix) is a graph data structure that relates vertices to the set of edges that connect them. This project would entail the implementation of a generic incidence matrix data structure that fits into the BGL generic graph interface. This project can include the development and definition of concepts related to graphs represented by incidence matrices (e.g., signed and bidirected graphs).  Incidence matrices can also be adapted to implement hypergraphs.
     353
     354=== Hypergraphs ===
     355
     356A hypergraph (http://en.wikipedia.org/wiki/Hypergraph) is a generalization of graphs where an edge can connect any number of vertices (instead of exactly two). Hypergraphs can also be directed or undirected, and have their own algorithms (e.g., traversal and partitioning). This project minimally involves the definition of one hypergraph data structure and a generic traversal algorithm. This project would also involve the identification and definition of generic concepts related to hypergraphs.
     357
     358Note: This is a non-trivial project that requires substantial knowledge of graph theory, algorithms, and generic programming.
     359
     360=== Implicit Graphs ===
     361
     362Design and develop a framework for adapting functions and function objects into graphs. For example, a binary predicate function can be made to behave like an adjacency matrix, returning an "edge" if the predicate is true. This project will require a substantial amount of metaprogramming to adapt function concepts (e.g., domain, range, etc.), onto graph concepts (vertices, edges, etc.).
     363
     364=== Closures and Reductions ===
     365
     366Implement a suite of generic graph algorithms that computer closures and reductions on graphs. The BGL already contains a `transitive_closure` algorithm, but not (yet) a `transitive_reduction`. Other kinds of computable closures and reductions include reflexive, symmetric, and congruence. This project can also include predicates to test whether or not a graph exhibits these properties (e.g., is_symmetric).
     367
     368=== Lattices ===
     369
     370Define and implement a generic lattice abstraction over a graph or relation. A lattice represents relations between objects in a partially ordered set (poset). Lattices are frequently used (outside of abstract mathematics) to descibe and reason about the relations of discrete objects. One such example is ontologies. Implement algorithms over the lattice that return its minima and maxima, and compute the meet and join of elements in the lattice.
     371
    350372= Earlier Boost SOC Project Proposals =
    351373