0

We have a simple autonomous car with the brush, the goal is to paint the biggest area in a circle. There are following rules:

  • We can move car by the given angle and the distance from the current angle and position.
  • Starting point is in the center of the circle with known radius.
  • Movements are imprecise, every time you move it the actual move would be let's say ~20% normal error in both distance ang angle.
  • It's ok if the area won't be painted fully, and it's ok to paint the same spot multiple times.
  • Area contains obstacles, you don't know where they are. It's ok to hit it, the car will be stopped and you will be notified if it hit something and the distance it travelled before hitting it, with ~20% error.
  • Car has limited fuel and can travel only limited distance, you don't know how big it is. The goal is to paint the biggest area within the circle until all fuel is used.

I wonder if there some simple algorithm like brownian motion that could be used in that case?

Alex Craft
  • 13,598
  • 11
  • 69
  • 133
  • I would say in order to paint the biggest area, you need to move in the spiral direction, but it is not random. Randomness will result into ineffective algorithm because it will go through already painted surface. It is either "we need random algorithm" or "we need to paint the biggest area", choose one. – Yeldar Kurmangaliyev Feb 12 '19 at 21:38
  • @YeldarKurmangaliyev it doesn't have to be random. As for the spiral motion - sounds reasonable, I haven't thought about it, thanks! – Alex Craft Feb 12 '19 at 22:12
  • 1
    Here is the picture with algorithm description: http://rulibs.com/ru_zar/children/nosov/c/j24.html – Severin Pappadeux Feb 13 '19 at 02:56

0 Answers0