July 2021. The summer before grad school.
The first task I received after getting my graduate admission offer was an assignment to attend a summer school.
In the last week of July, Huazhong Agricultural University and Imperial College London jointly ran a summer school on computational social science methodology. The courses were online, packed from morning to night every day, and at the end we had to submit a NetLogo model.
Right before this, my mom got hit by an e-bike.
Not me β my mom. She went out early in the morning to buy breakfast when a delivery rider ran into her. Her elbow swelled up badly, her toes were crushed under the front wheel, and a large patch of dead skin peeled off. Police report, CT scan, the police station, the traffic police brigade. Our whole family spent an entire day running around.
The next day, the online classes started.
I thought that was the worst of it. Later I found out it was just the beginning.
On the first morning, during Professor Georgiy's class, I stared at the Russian man on my screen for quite a while. Objectively speaking, he was good-looking, and his research background aligned fairly well with mine. I figured if I could stay in touch, it might be useful someday.
I've pretty much forgotten what he taught that day. All I remember is that before class ended, he demoed a few NetLogo models, and one about COVID left a strong impression β our group's final project was actually adapted from that model.
During the break, I hopped on my bike to use up the remaining rides on my bike-share pass. Came back and continued slacking off. Binge-watched variety shows until three or four in the morning.
Looking back now, that was probably the closest I ever got to the words "Imperial College." Sure, it was online, just one week, and essentially a NetLogo crash course. But still β the title sounded good.
Professor Jerry Sun on the second afternoon was the most down-to-earth of them all.
He started in English, and I was completely lost. Then someone asked if he could switch to Chinese, and Sun actually agreed. Koen listened in for a while, probably found it boring, and went offline to recharge.
Switching to Chinese made a huge difference. Concepts like "learning," "Bayesian networks," and "genetic algorithms" suddenly became much more accessible coming from Sun. When he talked about the micro-to-macro perspective, about abstraction and complexity, it hit me β this might be what modeling as a way of thinking actually means.
When I was teaching myself NetLogo before, I only knew how to get the code right. I had never thought about why we build models, why abstraction, why complexity.
Abstraction or complexity?
That's a philosophical question.
The group project was assigned only near the end of the course.
By then, I had already guessed how it would go β the script for every group project is the same: during the topic-selection meeting, everyone brainstorms enthusiastically, but when it comes to actually doing the work, only one or two people are left. Everyone joins the discussion, everyone speaks up, and then when it's time to write code, you look around and realize you're alone.
Yep. That's exactly what happened.
I don't know why these young people wanted to schedule meetings in the morning. Felt like I'd been played. During the first discussion to pick a topic, with my classmates covering for me, I went on mute and pretended to be the strong silent type. Everyone wanted to work on vaccines β chasing the hot topic, you know how it is. Under the professor's guidance, we decided to add a vaccination intervention to the SIR model to simulate the effect of blocking transmission in social networks.
The topic was set quickly, but the research question was never really clear. This planted a hidden problem for the work ahead β we were designing experiments based on what we already knew the model could do, rather than clarifying the question first and then choosing the method.
By the second discussion, I had already thrown a half-finished model up on the screen. I'd pulled an all-nighter to get it done β many parameters were still untuned, and the ODD protocol wasn't written yet. The team members stared at the model on the other side of their screens, bewildered. Already?
I didn't expect to get into the zone that early either. But what can you do? That's how research works β you push yourself. I was twiddling my thumbs β my teammates didn't seem to be in a hurry.
The summer school had eight lectures in total. I can only recall a handful now.
Lecture 3 covered the ODD protocol. The concept wasn't hard to grasp β it's just Overview, Design Concepts, and Details, right? But when I actually sat down to write one, I was stunned. Describing a model is much harder than understanding one. It's like watching someone swim and thinking you can do it too, then jumping in and realizing you can't even breathe properly.
Lecture 5 was on GIS. Professor Koen talked about how simulations evolve in space and time, how to handle spatial data, how to use shapefiles. It reminded me of when I studied maximum entropy models and encountered these same concepts β I didn't get it then, and I still didn't get it now. Which models need GIS and which don't? What role does geographic information play in a model? These are good questions, but I don't have the answers.
Lecture 7 was the most interesting. Professor Bai Junfei was brought in as a last-minute substitute, and he talked about the standards of applied economics research. He said that a lot of so-called research is merely "discussing problems" rather than "studying how constraints affect behavior." He also made a point that stuck with me: in today's era of cross-disciplinary work, leveraging your own strengths matters more than switching disciplines β the trap of "swapping disciplines" is that you lose yourself in another field, forfeiting your own advantages without having a solid enough foundation to compete with people formally trained in that discipline.
At the time, I had just been admitted to graduate school, majoring in biostatistics. I'd studied biology as an undergrad, dabbled in information and computing science, and self-taught a bit of machine learning. Looking at it now, I knew a little about everything, and nothing deeply.
Isn't that exactly the "swapping disciplines" trap?
But then again, if I hadn't known a little about everything, I wouldn't have been able to do this summer school assignment at all. Complex adaptive systems, multi-agent modeling, NetLogo β I'd never even heard these terms before.
I wrote the entire assignment alone.
Model design and programming β me. Verification β me. Local structural sensitivity analysis β me. Documentation β me. Helping teammates collect, organize, and calibrate parameters β also me. What else could I do? The others hadn't even managed to install NetLogo.
Another group project where I carried the whole thing.
The two teammates I worked with were interesting. One was from a top-tier Chinese university, the other was a PhD student the same age as me. Honestly, when it comes to leading people β either don't bother, or make sure you can actually bring them along.
I wrote the ODD protocol until three in the morning, debugged model parameters until my laptop overheated, ran hundreds of simulations for the sensitivity analysis. Every time I sent a message in the group chat, I had to think carefully about how to phrase it β I needed to keep everyone updated on progress without coming across as too intense.
Complex adaptive systems changed how I understand biology.
Last year, I did a similar study using cellular automata to simulate the spontaneous silence that falls over a classroom β that's the "Angel Passing By" piece. At the time, I just thought it was fun and didn't read too much into it. This summer school made me reconsider the direction β so this was complex adaptive systems, this was multi-agent modeling.
A gut feeling crystallizing into a real framework. It felt almost destined that this would become my research direction.
Interestingly, by this point my machine learning skills had reached the level where I could code a transformer from scratch. But I knew that over the next three years, I probably wouldn't have much use for any of it.
Professor Georgiy's COVID model. The moment Professor Sun switched to Chinese. Koen's classroom energy β so enthusiastic it was genuinely impressive. The Italian professor's drama-filled Twitter feed. Writing the ODD protocol at three in the morning. The careful deliberation before every message I sent in the group chat. The excitement when the model finally produced the results I wanted β
And the e-bike that hit my mom.
That's life. The things you think are important, looking back, aren't really. The details you thought were trivial β those are the ones you remember most clearly.
The summer was hot. The internet was laggy. The assignment was brutal.