This is a question about an algorithm to solve a graph theory problem.
Let us say we are given two generically globally rigid graphs F1 and F2. We also have a list E of edges that connect vertex pairs (i,j), where i is always a vertex in F1 and j is always a vertex in F2. Eren et al. (see citation below) proved that, in two dimensions, the graph F created by merging F1, F2 and E is also generically globally rigid if the following two conditions are satisfied:
- E contains at least three distinct vertices in F1, and at least three distinct vertices in F2.
- There are at least four edges in E.
It is relatively straightforward to check that the above two conditions hold, for any given F1, F2 and E. What I am interested in is providing a fix for the case where the above conditions are not satisfied. Specifically, I’m looking for an algorithm to find the smallest set of new edges E’ that, when merged with E, satisfy the conditions above. Does anybody have an idea on how I should go about doing this?
I have given the problem a stab, and I know how to check whether F1 and F2 meet Condition (1). I am then able to randomly select new vertices from each graph to use in E+E’. What I’m stuck on is how to decide on the connectivity between the new and old vertices.
Citation (Eren et al.) http://www.cs.columbia.edu/techreports/cucs-022-05.pdf
I think you should just be able to