Solving the RNA design problem with reinforcement learning

PLoS Comput Biol. 2018 Jun 21;14(6):e1006176. doi: 10.1371/journal.pcbi.1006176. eCollection 2018 Jun.


We use reinforcement learning to train an agent for computational RNA design: given a target secondary structure, design a sequence that folds to that structure in silico. Our agent uses a novel graph convolutional architecture allowing a single model to be applied to arbitrary target structures of any length. After training it on randomly generated targets, we test it on the Eterna100 benchmark and find it outperforms all previous algorithms. Analysis of its solutions shows it has successfully learned some advanced strategies identified by players of the game Eterna, allowing it to solve some very difficult structures. On the other hand, it has failed to learn other strategies, possibly because they were not required for the targets in the training set. This suggests the possibility that future improvements to the training protocol may yield further gains in performance.

Publication types

  • Research Support, N.I.H., Extramural
  • Research Support, Non-U.S. Gov't

MeSH terms

  • Algorithms
  • Computer Simulation
  • Computer-Aided Design / instrumentation*
  • Learning
  • Machine Learning
  • Nucleic Acid Conformation
  • Problem Solving
  • RNA / chemistry*
  • RNA Folding / physiology


  • RNA