Error-tolerant graph matching on huge graphs and learning strategies on the edit costs

Graphs are abstract data structures used to model real problems with two basic entities: nodes and edges. Each node or vertex represents a relevant point of interest of a problem, and each edge represents the relationship between these points. Nodes and edges could be attributed to increase the accuracy of the modeled problem, which means that these attributes could vary from feature vectors to description labels. Due to this versatility, many applications have been found in fields such as computer vision, bio-medics, network analysis, etc. Graph Edit Distance has become an important tool in structural pattern recognition since it allows to measure the dissimilarity of attributed graphs. One of its main constraints is that it requires an adequate definition of the substitution, deletion and insertion of nodes and edges, which eventually determines which graphs are considered similar. The first part of this thesis presents a method to generate a pair of graphs together with an upper and lower bound distance and a correspondence in a linear computational cost. Through this method, the behaviour of the known -or the new- sub-optimal Error-Tolerant graph matching algorithm can be tested against a lower and an upper bound Graph Edit Distance on large graphs, even though we do not have the true distance. Next, the present thesis is focused on how to measure the dissimilarity between two huge graphs (more than 10.000 nodes), using a new Error-Tolerant graph matching algorithm called Belief Propagation Algorithm, Belief Algorithm for short. It has a O(d^3.5 n) computational cost. For the first time, we have presented an error-tolerant graph-matching algorithm with linear computational and linear space costs with respect to the nodes. This algorithm is useful for computing the correspondence between huge graphs or social networks. The first tests were performed by the graph generation method as has been commented above. This thesis also presents a general framework to learn the edit costs involved in the Graph Edit Distance calculations automatically. This is because we did not want to impose the costs but deduce them through an optimisation process. Then, we concretise this framework in two different models based on neural networks and probability density functions. An exhaustive practical validation on 14 public databases has been performed. This validation shows that the accuracy is higher with the learned edit costs, than with some manually imposed costs or other costs automatically learned by previous methods. Finally we propose an application of the Belief algorithm applied to muscle mechanics. This application closes this thesis giving sense to the need of a linear graph matching method, a learning method and a method to generate synthetic graphs. We propose a new discrete model for the simulation of muscle mechanics where the mesh grid is recomputed in each iteration. Our model solves this problem by using a graph matching algorithm that deduces a sub-optimal correspondence in linear cost our method presents higher accuracy at the expense of a linear and low increase of runtime.