ADIOS to Viruses: Teaching Antibodies to Shape Viral Evolution
↑ Top
TL;DR ADIOS optimises antibodies to shape the entire anticipated evolutionary response of viruses, rather than only targeting the current variant. We’ll take you on a journey that shaped this discovery…
Credit for this image goes to DALL-E and my questionable Photoshop skills which I used to blindfold the virus.
Picture this: an antibody and virus sitting across from each other at a chess board in a library, deep in strategic thought. But here’s the fascinating asymmetry in this game - the virus is essentially playing with a blindfold on. It can only respond to the current state of the board, using trial-and-error mutations (an evolutionary algorithm) to find better moves. It also is not aware that the board position will ever change! It has no foresight about how the antibody will play in the future, it has no grand strategy, no ability to think multiple moves ahead. The virus is a myopic player.
We, on the other hand, don’t have to be so myopic. Yet that’s exactly how we’ve been designing antiviral therapies. Take COVID-19 as an example. We developed effective vaccines in record time. But as new variants like B.1.351 emerged, vaccine efficacy dropped significantly (Madhi et al. (2021)). The vaccines were designed as the optimal response to the original virus, but viruses don’t stay put. They evolve, adapt, and escape. Viruses are adaptive agents.
This got us thinking: why don’t we take advantage of viruses adapting in response to our therapies to design better therapies? Instead of just defending against the current virus, what if our therapies could actively shape where viral evolution goes? What if we could guide the virus toward variants that are inherently easier to target?
This is the core idea behind ADIOS: Antibody Development vIa Opponent Shaping - a framework that brings game-theoretic thinking and opponent shaping (as first introduced by Foerster et al. (2018)) to antibody design. Rather than playing defense, we’re learning to play offense, steering viral evolution in our favor.
The key insight? While viruses are stuck being naive agents, our therapies can act as shaper agents. We can think several moves ahead, anticipating how our therapeutic choices will influence the evolutionary pressures on the virus. And just like in chess, sometimes the best defense is a good offense.
The Myopic Therapy Problem
Designing therapies against viruses is hard. But at a very high level, this is how it’s done: identify the current viral strains, design a treatment that works against the current virus, test it and if all is good deploy it. This approach optimises for immediate effectiveness against the current viral strains - we have a great therapy that works well against variant A, for now…

But the therapy creates selective pressure, giving any escape mutation a fitness advantage. Through viral escape — the process by which mutations allow viruses to evade treatment — therapy-resistant Variant B emerges and dominates. Our once-effective therapy doesn’t work anymore and we’re almost back to square one. Now we need to design a booster therapy that would work against Variant B too.
But what if we could do better? What if instead of accidentally pushing viruses toward resistance, we could intentionally steer them toward variants that are actually easier to target (Variant C)? This is the promise of shaper therapies - treatments designed not just to be effective now, but to influence viral evolutionary landscape in our favor.
The question is: how do we design such therapies? This is where opponent shaping and meta-learning come in.
The ADIOS Framework
So how do we actually design shaper therapies? The key insight comes from meta-learning and opponent shaping: instead of just optimising antibodies against the current virus, we optimise them against the entire trajectory of viral evolution they’ll induce. This setup is conceptually very similar to Model-Free Opponent Shaping (M-FOS, Lu et al. (2022)).
Here’s the setup: we have two nested optimisation loops, just like in meta-learning. The outer loop optimises the antibody design, while the inner loop simulates how the virus will evolve in response to that antibody.

Think of it this way: for each candidate antibody we’re considering, we run a simulation of viral evolution to see what kinds of variants will emerge over time. Then we evaluate how well our antibody performs not just against the starting virus, but against the entire sequence of future variants it will face.
This is fundamentally different from myopic design. Instead of asking “how well does this antibody work against the current virus?”, we’re asking “how well does this antibody work against the evolutionary trajectory it will induce?”
The antibody that looks best myopically might actually perform terribly in the long run if it pushes the virus toward highly resistant variants. Conversely, an antibody that seems slightly worse initially might be much better if it steers evolution toward more targetable variants.
But here’s the thing - this approach is computationally expensive. For every candidate antibody, we need to simulate many steps of viral evolution, and each step requires calculating binding strengths between antibodies and viruses. We needed this to be fast. Really fast.
That’s where our first major challenge came in…
Problem 1: We Needed a Fast Binding Simulator
Here’s where theory meets reality. Our meta-learning approach sounds great in principle, but we need to actually evaluate how good different antibodies are. While antibody effectiveness depends on many factors, one of the most fundamental is binding - how strongly the antibody attaches to the virus.
Our approach is computationally demanding. For each candidate antibody, we need to simulate viral evolution across hundreds of steps, each requiring binding calculations. Most existing approaches weren’t going to cut it - molecular dynamics simulations are accurate but incredibly slow, while ML models struggle with the novel mutations we need to simulate.
Enter Absolut! (Robert et al. (2022)) - a binding simulator that strikes the right balance for us. It’s fast enough for large-scale optimization but general enough to handle evolutionary novelty.
But even Absolut! wasn’t fast enough. The original implementation took 1.8 seconds per binding calculation. With hundreds of thousands of evaluations needed, we were looking at weeks of computation time.
So we got to work and reimplemented the core calculation in JAX with GPU acceleration. The result? A 10,000-fold speedup - from 1.8 seconds down to 0.0002 seconds.
Implementation | Hardware | Time per Binding |
---|---|---|
Original Absolut! | Apple M2 Max (CPU) | 1.8 seconds |
Absolut! + JAX | Nvidia A40 (GPU) | 0.0002 seconds |
Suddenly, our meta-learning approach became feasible. Problem 1: solved.
Problem 2: Avoiding Trivial Solutions
With our fast binding simulator ready, we started running optimization experiments. But first, we needed to properly frame the virus-antibody interaction as a two-player game.
The setup seemed simple: antibody wants to maximise binding, virus wants to minimise it. But we immediately hit mode collapse.
The virus can “solve” the problem by becoming completely non-sticky - barely binding to anything, including our antibody. Meanwhile, the antibody became molecular velcro, sticking to everything in sight.
Both solutions are unrealistic. An inert virus can’t infect cells. An antibody that binds everything would trigger devastating autoimmune responses.
We needed constraints. Enter targets and anti-targets: the virus must maintain its ability to bind to host cell receptors (to stay infectious), while the antibody must avoid binding to human proteins (to prevent autoimmunity).

This creates a more realistic game where both players have competing objectives that prevent trivial solutions. Problem solved. With this framework, we could finally build the nested optimisation loops that make ADIOS work.
Time for the moment of truth.
The Results: Shapers Actually Work
After all this theoretical setup and technical machinery, the big question remained: do shapers actually work? Can we really design antibodies that not only perform well now but actively steer viral evolution in our favor?
The answer, it turns out, is yes.
We tested our approach on dengue virus, comparing shapers optimised with horizon \(H=100\) against traditional myopic antibodies \((H=0)\). This figure shows what happens during the inner loop - when we simulate viral escape over 100 evolutionary steps:

The pattern is striking. Myopic antibodies start strong - they’re optimised for immediate effectiveness against the current virus, so they perform well initially. But as the virus evolves, their effectiveness rapidly degrades. The viral fitness climbs steadily, indicating successful escape.
Shapers tell a different story. They start slightly worse than myopic antibodies - this makes sense since they’re not optimised purely for immediate binding. But as viral evolution progresses, shapers maintain their effectiveness much better. They’re playing the long game, and it shows.
This figure shows what happens in the outer loop - how antibody performance improves as we run more optimisation steps:

The results are clear: longer horizons work better. Shapers with \(H=100\) consistently outperform those with shorter horizons. The meta-learning approach pays off - the more we simulate future viral evolution during training, the better our antibodies become at handling it.
This wasn’t just a dengue-specific fluke, either. We tested ADIOS on three other viruses (West Nile, Influenza, MERS-CoV) and one bacterium (Clostridium Difficile), and the same patterns emerged: shapers outperform myopic antibodies, and longer horizons generally work better.
But the most exciting discovery was still to come…
Attack is the Best Defense
Our results showed that shapers work - they outperform myopic antibodies over long horizons. But how do they work? We hypothesised they could achieve this through two distinct strategies: robustness or shaping.
A robustness strategy involves developing antibodies that are inherently resistant to viral evolution — antibodies that remain effective even as viruses mutate — a “good defense” approach. In contrast, a shaping strategy aims to actively influence the evolutionary trajectory of the virus itself — an “attack” approach.
To find out which strategy our shapers were using, we designed a cross-evaluation experiment. We tested antibodies optimised with different horizons against viruses that had evolved under pressure from other antibodies.
Here is what we discovered:

The results revealed something remarkable. Viruses that evolved under pressure from \(H=100\) shapers (rightmost column) are consistently easier for all antibodies to target - not just the shapers that induced them. The \(H=100\) shapers aren’t just defending better; they’re actively steering viral evolution toward more exploitable variants.
This is the essence of “attack is the best defense.” Instead of just building robust antibodies that can handle whatever variants emerge, we’re influencing which variants emerge in the first place. We’re changing the rules of the evolutionary game. This insight opens up fascinating possibilities for therapeutic design. Rather than just trying to build better defenses against viral evolution, we could strategically guide that evolution in directions that favor us.
What’s Next? Limitations and Future Directions
Let’s be honest: ADIOS is a proof of concept. Our binding simulator, while fast and generalisable, is a massive simplification of real protein interactions. Our evolutionary algorithm is simple compared to data-driven models that capture virus-specific dynamics more accurately (though most don’t account for antibody pressure like we do). And we’re nowhere near designing actual therapeutic antibodies yet.
But that’s exactly the point. ADIOS is a framework that could work with any binding model or evolutionary simulator. As more sophisticated tools emerge - like AlphaFold3 for structure prediction or advanced viral evolution models - the opponent shaping principles remain the same.
The broader vision is even more exciting. The same principles could apply to cancer therapy, antimicrobial resistance, or any domain where we’re fighting adaptive biological opponents. Instead of just building better defenses, we could guide evolution itself.
The key insight is simple: against adaptive opponents, foresight beats reaction. And unlike viruses, we’re not stuck being myopic. We can plan several moves ahead, anticipate responses, and steer the game in our favor.
That’s a powerful advantage - if we’re smart enough to use it.
Want to dive deeper? Check out our full paper (accepted at ICML 2025) for all the technical details, or explore the open-source code to try ADIOS yourself. And if this work is useful for your research, here is how you can cite us:
@article{towers2025adios,
title={ADIOS: Antibody Development via Opponent Shaping},
author={Sebastian Towers and Aleksandra Kalisz and Philippe A. Robert and Alicia Higueruelo and Francesca Vianello and Ming-Han Chloe Tsai and Harrison Steel and Jakob N. Foerster},
year={2025},
eprint={2409.10588},
archivePrefix={arXiv},
primaryClass={q-bio.PE},
url={https://arxiv.org/abs/2409.10588},
}
Acknowledgements: Massive thanks to all of my co-authors (who are all listed at the top), especially Sebastian Towers who contributed equally to this work, this project would not have been possible without them. I would also like to thank Marius Urbonas, Duygu Açıkalın, Michael Matthews, Benjamin Ellis, Benedetta L. Mussati, Andrei Lupu, Mattie Fellows, Lisa Zillig, Ting Lee, Matthew Raybould and Charlotte Deane who all helped us along the way.