Further investigation:
 
 

Bacterial colonies not only interact locally, as in our simulation, but also indirectly via marks left on the agar surface and chemical (chemotactic) signaling. For example, it was observed in experiments [1] that in extreme adverse growth conditions, the patterns of bacterial colonies become dense again, as can be explained by chemotaxic signaling in a communication model. The inactive walkers produce a certain chemical to attract active walkers. A communication field is generated, which biases the movement of the active walkers to the directions of the signaling materials. By using two landscapes (both nutrient concentration and chemical concentration), this model is expected to capture the qualitative features of the growth patterns at extreme adverse growth conditions.
 

In our simulation of two bacterial colonies, we used a fixed nutrient and surface roughness. It might be interesting to see how varying these parameters can change the interaction strength between the two colonies.
 

Our code is far from optimized for speed and size.  The resulting executable is over 1MB, which indicates some code bloat occurred.  Optimization of template instantiation and random number mapping and hard coding some table lookups/interpolation for walker step direction could significantly reduce both the size and, more importantly, the speed of our code, allowing investigation of parameters that are only relevant at large R (with >2000 steps).
 

There are also many other parameters that can be adjusted to simulate the growth process more realistically. For example, we use a constant metabolism rate and a constant consumption here while in real life they might depend on the step size as well as the local nutrient concentration. To further our investigation, we need to obtain more insight into the experimental results and improve our simulation algorithm.