Given a chordal graph $G$, and a class of subgraphs $\mathcal{H}$ of $G$, we investigate the problem of finding an element $H \in \mathcal{H}$ which minimizes a function $f : \mathcal{H} \to \mathbb{R}$. We show that when $f$ satisfies a decomposability criterion, and when $\mathcal{H}$ admits what we call an efficiently decomposable configuration space with respect to $f$, then this optimization problem can be solved in polynomial time. We give a dynamic programming formulation for solving this problem, which uses a representation of of $G$ called a seperator-tree. The seperator-clique tree is very closely related to the clique-tree representation for $G$, and we give a procedure for constructing a seperator-clique tree from a clique-tree. Gavril and Tarjan have used graph separation properties to solve several combinatorial optimization problems when the size of the minimal separators in the graph is bounded. Our technique is an extension of theirs, and it does not require the minimal separators of $G$ to be of bounded size. We give examples to show that this framework can be used to solve a number of problems in machine learning and statistics that require the reduction of complexity of graphical models. |