OK i'm kind of geeking out on this one. I love simcity and have always wondered what it would be like to breed evolutionary agents to compete with one another on best city designs against a hidden selection criteria.

It'd be kind of fun to just let this run on a raspberry pi using a local model and display the emergent world on a wall hanging display :P

Thanks for sharing.

Update: What would it take to run this locally / offline? I'm not quite sure how the cloud flare layer works. Is it just for cheap/free object storage so the cities can live somewhere?

I'm glad you're enjoying it! It was fun to build and I almost can't believe I got this to work.

I don't think it would take much to run locally. In fact, before I did this public version I did a local version on an exe.dev VM (more details here: https://dunn.us/notes/vibe-gaming-simcity/).

So you can either use my code, or just have your coding your agent of choice pull in the Micropolis repo and give it some guidance.

So far this is running quite nicely on a $5 cloudflare account. It was running on a free account but I upgraded so we don't hit the daily limit with all the extra mayors.

Shoot me a message if I can help.

Cool, thank you. I love projects like this. Great work and thank you for sharing!

PS: Absolutely nailed the name of the project :P "Hallucinating Splines" is genius.

Sam Earle did exactly this with RL agents trained via quality-diversity methods on Micropolis: https://github.com/smearle/gym-city

For running locally, I'd recommend the MicropolisCore repo over the one linked in the original post. MicropolisCore is a clean C++ rewrite that compiles to WASM -- runs headless in Node or in any browser:

https://github.com/SimHacker/MicropolisCore

The Raspberry Pi wall display idea is great. The simulation is lightweight enough for that.

The simulator runs and I've written a tile rendering engine in TypeScript/WebGL, but I haven't finished the user interface. (But the Space Inventory works!)

Live demo: https://micropolisweb.com

Here is a video demo of how it works:

Micropolis Web Demo 1:

https://www.youtube.com/watch?v=wlHGfNlE8Os

For fun, I added all the classic tile sets, and it can run a couple of cellular automate rules as well as the game simulator. Here's a video to some original music by Jerry Martin, who composed the music in The Sims and SimCity (see the above video and the keyboard shortcuts in the help window to understand what's going here):

SimCity Micropolis Tile Sets Space Inventory Cellular Automata To Jerry Martin's Chill Resolve:

https://www.youtube.com/watch?v=319i7slXcbI

Here's more about my plans for making a multi player version of Micropolis with time travel, branching, and merging, by using github as MMPORG platform (when it's not down ;):

https://github.com/SimHacker/moollm/blob/main/designs/sims/s...

MOOLLM's "micropolis" skill is still in the design stages, but here's what I've started, which starts by describing the multi player version of SimCity I released in 1993:

SimCityNet announcement (1993):

http://www.art.net/~hopkins/Don/simcity/simcity-announcement...

Multi Player SimCityNet for X11 on Linux:

https://www.youtube.com/watch?v=_fVl4dGwUrA

micropolis skill README, including GitHub-as-MMPORG (MicropolisHub), and Alan Kay's Critique and Vision:

https://github.com/SimHacker/moollm/tree/main/skills/micropo...

micropolis skill prototype:

https://github.com/SimHacker/moollm/blob/main/skills/micropo...

More context about what MOOLLM is:

https://github.com/SimHacker/moollm

And how it extends Anthropic Skills with 8 important features:

MOOLLM: A Microworld Operating System for LLM Orchestration:

https://github.com/SimHacker/moollm/blob/main/designs/LEELA-...

MOOLLM is kind of like The Sims meets LambdaMOO in Cursor then steals all the great ideas from Factorio:

Factorio MOOLLM Design:

https://github.com/SimHacker/moollm/blob/main/designs/FACTOR...

Factorio Logistics Protocol:

https://github.com/SimHacker/moollm/blob/main/designs/factor...

logistic-container skill:

README.md: https://github.com/SimHacker/moollm/tree/main/skills/logisti...

SKILL.md: https://github.com/SimHacker/moollm/blob/main/skills/logisti...