Efficient exact solution of the ring perception problem - Journal of

Franziska Berger, Christoph Flamm, Petra M. Gleiss, Josef Leydold, and Peter F. Stadler. Journal of Chemical Information and Computer Sciences 2004 44...
0 downloads 0 Views 2MB Size
J. Chem. In$ Comput. Sci. 1994, 34, 822-831

a22

Efficient Exact Solution of the Ring Perception Problem Renzo Balducci and Robert S.Pearlman' Laboratory for Molecular Graphics and Theoretical Modeling, College of Pharmacy, University of Texas at Austin, Austin, Texas 78712-1074 Received October 29, 1993' The literature of the past 3 decades reports a large number of algorithms dealing with the perception of a 'smallest set of smallest rings" (SSSR). However, the vast majority of the published algorithms are based upon heuristic approacheswhich provide an acceptableanswer for some, but not all, possible connected graphs, This proliferation of approximate solutions to the SSSR perception problem arises primarily from the widespread belief that the problem is NP-complete (exponential order). Here, we present a highly efficient exact solution to this problem with a polynomial computational order. Our novel algorithm is based upon the concurrent traversal of a set of N partial breadth-first trees of the structural graph (where N is the number of nodes). The graph is represented as an object-oriented model in which each node acts as a message transceiver in a network. Each message contains the history of the connected path traversed as it propagates through the network. Message collisions correspond to ring closures. This "chain-message" algorithm detects a superset of an SSSR of the structure. The rings of this superset are identified in increasing ring size order. The SSSR is then rapidly selected from this set with a series of linear independence tests. The algorithm can be easily extended to accommodatethe canonical selection of an application-defined "preferred" SSSR. We show that the order of this algorithm is at most O(&W log N), where d is the maximum degree of any node of the sturcture. For chemical structures (for which d