Mowrobot simulation


I have been working with Grasshopper quite some time however that was purely geometrical and static. I want to dive deeper in the simulation with Grasshopper and to do that I wanted to simulate the behavior of a Grassmowing robot in a garden.

So to simplify I want a rectangle (=robot) to move within a closed curve. When the rectangle collides with the outside curve it should change direction. If I could keep track of the total track of the robot with a polyline I could analyse that to see which parameters are the best.

I’ve seen Kangaroo used to simulate stuff but as far as I can tell that searches for a “final” solution based on the constraints. Does anyone have some advice on how to get started or can someone point me in the right direction to start my adventure?

Many thanks

Hey Peter -

You can use the Data Recorder component to store the points that go into the polyline.

In my opinion, this is a good use case for a single particle or agent with boundary detection that would be a proxy for the mowing robot. This would be best and most flexibly implemented with scripting (e.g. Python, C#), but can also probably be done with Anemone and the Boids add-ons, if the latter still works in Rhino 7/8. Anemone would be used for looping and Boids for the particle simulation. Anemone can also record data, here the trail of the single particle.