We found that keeping λ fixed throughout the training was inefficient. Starting with a very high value of λ did not allow the model to learn quickly. Instead, we trained it with λ = 1.60 for around 7500 molecules, saving the model after every 50 iterations. We picked the model after 3500 molecules (chosen to have an optimal increase in synthesizability with minimal change in SSD) and followed it by around 4200-4500 molecules each for λ = 2.00, λ = 2.35 and finally λ = 2.60. Each molecule generated can be considered to be one "episode". The evolution of the reward profile with changing values of λ is given in Figure of the SI. After training with this method, about 78.2% of the molecules turned out to be synthesizable, which is a big improvement over the 24% we had without training.