Learning to Solve NP-Complete Problems: A Graph Neural Network for Decision TSP

Authors

  • Marcelo Prates Federal University of Rio Grande do Sul
  • Pedro H. C. Avelar Federal University of Rio Grande do Sul
  • Henrique Lemos Federal University of Rio Grande do Sul
  • Luis C. Lamb Federal University of Rio Grande do Sul
  • Moshe Y. Vardi Rice University

DOI:

https://doi.org/10.1609/aaai.v33i01.33014731

Abstract

Graph Neural Networks (GNN) are a promising technique for bridging differential programming and combinatorial domains. GNNs employ trainable modules which can be assembled in different configurations that reflect the relational structure of each problem instance. In this paper, we show that GNNs can learn to solve, with very little supervision, the decision variant of the Traveling Salesperson Problem (TSP), a highly relevant NP-Complete problem. Our model is trained to function as an effective message-passing algorithm in which edges (embedded with their weights) communicate with vertices for a number of iterations after which the model is asked to decide whether a route with cost < C exists. We show that such a network can be trained with sets of dual examples: given the optimal tour cost C, we produce one decision instance with target cost x% smaller and one with target cost x% larger than C. We were able to obtain 80% accuracy training with −2%,+2% deviations, and the same trained model can generalize for more relaxed deviations with increasing performance. We also show that the model is capable of generalizing for larger problem sizes. Finally, we provide a method for predicting the optimal route cost within 2% deviation from the ground truth. In summary, our work shows that Graph Neural Networks are powerful enough to solve NP-Complete problems which combine symbolic and numeric data.

Downloads

Published

2019-07-17

How to Cite

Prates, M., Avelar, P. H. C., Lemos, H., Lamb, L. C., & Vardi, M. Y. (2019). Learning to Solve NP-Complete Problems: A Graph Neural Network for Decision TSP. Proceedings of the AAAI Conference on Artificial Intelligence, 33(01), 4731-4738. https://doi.org/10.1609/aaai.v33i01.33014731

Issue

Section

AAAI Technical Track: Machine Learning