Continual Reinforcement Learning
Mohamed Ayman Mohamed
Research scientist and software engineer. MSc, University of Alberta, Machado Lab. Currently a software engineer at AWS.
I work on continual reinforcement learning: agents that have to keep learning after the world stops holding still. Most benchmarks quietly assume the problem stops changing. I build the environments and measurements that remove that assumption, then find out which algorithms actually survive it.
About
I work on continual reinforcement learning, the setting where an agent never gets a final task, only a world that keeps moving.
I did my MSc at the University of Alberta with Marlos C. Machado. Most of my time there went into a problem that sounds like bookkeeping and turns out not to be: we had no good place to study agents that must keep adapting. Benchmarks hand you a fixed task and ask how well you eventually solve it. So I built one that refuses to hold still, then measured how the standard algorithms cope. They largely do not.
Alongside that I work on multi-agent cooperation, asking how agents can value each other's behaviour without ever seeing each other's rewards. Earlier, at KAUST, I worked on grounding language in 3D scenes, which is where the ICLR and TPAMI papers below come from.
Day to day I am a software engineer at AWS, building AI systems for Kubernetes and region infrastructure. Before research I spent a long time close to the metal: pipelined RISC-V in Verilog, an x86-64 bootloader that walks itself into long mode, a distributed system in Rust with its own election protocol. That background still shapes how I work: I would rather measure the quantity everyone assumes than assume it.
Research interests
- Continual RL
- Distribution shift
- Plasticity & adaptation
- Representation learning
- Multi-agent cooperation
- Benchmark design
Toolkit
Research
Four strands, all public. The first two are where I spend most of my time.
Experience
Education
Teaching
Projects
Research code, plus a back catalogue of public repositories covering distributed systems, and things that run before the operating system does.