We Need New Drugs — Can AI Design Them?

Original article was published by George Gabriel on Artificial Intelligence on Medium

We Need New Drugs — Can AI Design Them?

Artificial intelligence is often touted as a cure-all for the biggest problems in society. But when we find ourselves in need of a more literal “cure”, can AI really help? Recent research has explored the possibility of using AI to help design new drugs to treat a range of conditions, from drug-resistant TB to COVID-19. But how can computers design new drugs when they don’t understand how these diseases actually work? It turns out, they could do it a lot like humans — only quite a bit faster.

Design By Accident

Often, the development of new drugs starts with a process of trial and error. A promising new candidate drug is thought up by a researcher, discovered by chance, or designed as a variation on an existing chemical structure with known properties. The candidate drug is then synthesised in a lab, put through an extensive process of testing, and, in many cases, it ends up being rejected. This might be because it has undersireable effects, or it simply doesn’t work, or a wide range of other possible reasons. Occasionally though, a new drug is found which has useful properties, is safe for human use in reasonable doses, and is easy and cheap enough to manufacture at scale.

A common way of designing new things using AI, whether it’s drugs or something totally different, follows the same kind of trial and error procedure. First, lots of new ideas are randomly generated using information about what existing ideas look like. Secondly, these candidate ideas are evaluated against a range of criteria to get a measure of how good each candidate is. Finally, the best candidates are kept, the others are discarded, and hopefully some of the remaining ideas turn out to be useful.

The key point about this method is that it can be used to design anything — all it needs is a way of generating ideas, and evaluating how good they are. For example, suppose we want to use AI to write a short poem. The process might take the following steps:

Firstly, we show a specialised type of computer program (a machine learning model) a large number of existing poems. While processing these poems, the program automatically adapts its internal parameters, learning about the general structure and linguistic style of the examples.

Secondly, we use the trained algorithm (which now knows something about the structure of poems) to generate lots of strings of text with the required structure and style. These generated strings are the candidate poems.

Thirdly, we automatically rate the quality of each poem using some simple criteria like how well it rhymes, and whether each line has the right number of syllables. Some of the generated poems will probably be better than others, so we might only keep the highest-scoring ones.

Once the computer has filtered out the obviously bad poems, we could ask a human to read the remaining ones, and choose the best one based on things like meaning and imagery, which are hard to analyse automatically using a computer. And thus we’re left with a poem, written by an AI agent.

What Do Good Drugs Look Like?

The main challenges in the above-described process are making the algorithm generate plausible new ideas (poems), rather than ideas which could never work (random strings of words), and choosing evaluation measures which give the better ideas higher scores than the worse ones. This is a bit like teaching the algorithm where to look, in the space of all possible ideas, and teaching it what exactly to look for.

In the case of designing a new drug, the process works in much the same way: the machine learning model needs to know what sorts of chemical structures are likely to make useful drugs, and we need a way of quickly and automatically measuring the potential usefulness of a given chemical structure once it’s been generated.

Information about the chemical structures and known clinical properties of many thousands of drugs is readily available from several large databases. The chemical structures are presented as specially formatted strings of text, and can be directly used to train machine learning models.

Presented with this kind of information, a model learns some abstract properties that the structures of the example drugs have in common. The trained model can then be used to generate new chemical structures (again, represented as strings of text) which are similar to, but not the same as, the ones it saw during training.

A machine learning model learns patterns in the chemical structures it sees during training. Ideally, these patterns correspond to the structural properties which give the chemicals their characteristics.

Many thousands of chemical structures can be rapidly generated at this stage, far exceding the capabilities of any human researcher. Clearly, though, not all of the structures would make equally useful drugs, so it’s important to be able to quickly evaluate the usefulness of the structures, without having to actually synthesise and test the molecules in real life.

One common criterion used to assess the quality of candidate chemical structures is “druglikeness”. Druglikeness is a collection of measures which give a rough idea of whether a candidate molecule will have certain properties which are generally useful in drugs, like the right levels of solubility and a reasonable molecular weight. Other measures, like synthetic accessibility, which describes how easy it is to manufacture actual molecules with the given structure, can also be used to filter out the best of the candidate structures.

It’s possible for this kind of AI technique to discover new drugs which score higher on the chosen evaluation criteria than existing drugs. In one recent example, researchers used this kind of algorithm to generate structures for possible new COVID-19 drugs, some of which scored more highly than known drugs on the druglikeness and synthetic accessibility criteria. Importantly though, higher performance on these measures and similarity to drugs with known properties doesn’t necessarily mean that these new chemicals will definitely have the desired properties, or that they will even be safe for use in humans. The usual process of testing is still required to determine if these new chemicals work as hoped, and a great many candidate drugs will still fail at some point in the testing process.

By training an algorithm to look for chemical structures which resemble drugs with known properties, researchers hope that some of the generated structures will also share those properties. This should increase the chances of at least some of the generated chemicals making it though the testing process. But focussing on familiar-looking molecules also makes it far less likely that the algorithm will discover a totally new class of drugs. For some of our most pressing health challenges, like antimicrobial resistance, the discovery of new classes of drugs in the past has had a far greater positive impact on health than coming up with variations on existing ones. So the short-sightedness of these algorithms could limit their usefulness.

Expanding the Search

It’s natural to wonder, then, if an algorithm could just search more widely around different chemical structures, in the hope of finding a useful new class of drugs. Couldn’t it just search through each possible chemical structure up to a certain maximum size, and check if each one was likely to have the desired properties? In principle, this kind of brute-force search is quite possible; but there are some major practical issues which limit its usefulness.

Firstly, we would need some way of predicting the properties of a drug and how it works in the body just by looking at its structure. For example, if we generated a random chemical structure, how would we know that it could be useful in treating, say, cancer? If we needed to test each possible drug in real life just to understand its properties, this would slow the process down unbearably. Simulating the chemical and biological properties of the candidate drugs may be one way of achieving this, but doing this for all possible structures could also be very time-consuming.

According to some estimates of the number of different possible drug-like chemicals, there could be anywhere from around 10²³ (that’s a ‘1’ with 23 zeros after it) to 10⁶⁰ (a ‘1’ with 60 zeros after it) possible structures to check. Taking the smaller of these numbers, if we could generate and check the usefulness of one of them every microsecond (one millionth of a second), it would still take about 3.2 billion years to finish checking them all. Most of us don’t have that long to wait.

Clearly then, it’s a good idea to narrow down the space of possible chemical structures for the algorithm to search through; but it would also be good if the algorithm was free to explore ideas for new drugs which were quite different from existing ones — as long as they were likely to have the desired properties.

If we had a better understanding of how different diseases work on a biological level, then algorithms could be trained to search more efficiently through the space of potentially effective drugs. Research to understand exactly these kinds of mechanisms is ongoing, and different kinds of AI are helping researchers in this area make surprising new discoveries which might otherwise have been overlooked. It seems then that AI has a range of promising applications in the world of biomedical research.

Returning now to the titular question of this article: can AI design new drugs? The answer is definitely “yes” — in fact, it is already doing so. But, until we have a better understanding of how certain diseases work, or how to teach AI algorithms how they work, it’s unlikely that these algorithms will discover the revolutionary new treatments that certain diseases may require. The challenge is telling AI what to look for and where to look, and researchers are working hard to meet this challenge.