google-deepmind / concordia

A library for generative social simulation
Apache License 2.0
633 stars 148 forks source link

[Question] Scaling number of agents #65

Closed austinmw closed 1 week ago

austinmw commented 3 months ago

Hi, apologies if there's another thread or mention about this that I missed.

I'm curious about scaling number of agents. In particular,

Any advice would be greatly appreciated!

duenez commented 3 months ago

We haven't experimented on scaling up much. There are some considerations about scaling:

  1. The GameMaster currently calls on all agents at every step. So, linearly scaling calls for agents to act. A different GameMaster (or one with different components, anyway) could be designed (we have some ideas, so stay tuned) to only ask "relevant" players for actions, causing sub-linear scaling.
  2. Having many agents might trigger conversations more frequently (we haven't tested). This would make the virtual time go more slowly, but conversations are between specific players, so they don't necessarily involve all agents. It's hard to predict whether this would be super-linear or sub-linear.
  3. ~We don't provide an example for generating agents in parallel, but it should be trivial to use the utility for concurrent execution on generating agents.~ [this is how the modular examples do it, actually] This would have to be linear, unless you wanted to make some partial backgrounds (i.e. for siblings) and then just re-adapt them.
austinmw commented 3 months ago

Thanks for your response!