What?

A model + task specification to obtain molecules that we can synthesize in real life.

Why?

Generating a molecule with a model tells us what to synthesize. Knowing how to do that would be very useful. Moreover, the model might generate a molecule that is not possible to get in the lab. How can avoid that?

How?

source: original paper

source: original paper

The authors consider two problems:

The main idea is to build a synthesis task in a way that gives us an idea of how to synthesize a molecule in the real-life as well as reduce the probability of getting molecules impossible in the real life. They turn it into a sequential decision making problem:

The process above can be represented as a DAG, and, gives us an idea of how to synthesize the molecule in the lab.

How do the authors solve the problem:

And?