We then trained a goal-directed generation algorithm to produce molecules with high optimization scores. Here we employ the two top-performing molecule generators according to Guacamol . One of these is a graph-based genetic algorithm (GA) . GA optimizes molecules by iteratively applying random mutations and crossovers to the molecules in a population and keeping the best ones in each generation. The starting population were random molecules from the distribution-learning training set defined in , which is in turn a random subset of the compounds in ChEMBL . The second optimization algorithm we use is called SMILES-LSTM (LSTM) . This method generates molecules by predicting the probabilities of the next character in SMILES strings based on the previous ones. The molecules are optimized using a hill climbing algorithm which can be understood as iteratively sampling molecules, keeping the best ones and fine-tuning the model on these high scoring molecules. We used the pretrained model provided by ) to initialize the generator. This model was trained on the same data set, from which the starting population for GA is drawn. We run each optimization algorithm ten times for each data set. The suggested experimental setup with optimization score and control scores, allows us to get insights into how a generative model optimizes the score and whether it is sensitive to mentioned biases in the bioactivity model. The setup with an optimization and control score mirrors the use of a training and test set in supervised learning methods. In supervised learning the goal is to obtain good performance on a test set that was not used during optimization, which in our case corresponds to the control scores.