Planning in Agricultural Robotics
I. Introduction
In this article, we will address the question: how is the planning task carried out for an agricultural robot? We will start by proposing a classification of planning types, which will allow us to focus on the two main methods: offline planning and online planning.
II. The Different Types of Planning
- Offline planning: it is carried out before the start of the mission. It involves defining, using a medium (such as a file), all the operations the robot will need to execute. In the case of an agricultural robot, this involves determining the trajectory to follow as well as the precise moments when tools should be raised or lowered during the journey. As illustrated by the Figure 1 opposite, the mission is fully planned in advance, then transmitted to the robot before its execution. Inside the robot, a dedicated functional block is responsible for interpreting this planning and converting it into instructions for the control block, which then drives the actuators.
- Online planning: it is carried out during the execution of the mission, while the robot is in action. It allows the robot to make real-time decisions based on information from its sensors and its current position. Thanks to this mechanism, the robot can adapt its trajectory. This type of planning makes the robot more flexible and autonomous, capable of dynamically reacting to changes in its environment. In the representation of the Figure 1 opposite, the mission file no longer appears, as the mission is generated in real-time. The planning block uses specific algorithms, such as the A* algorithm, to produce planning elements (for example, the trajectory to follow). These elements are then interpreted as instructions by the control block, which drives the robot's actuators.
Figure 1: Principle of Offline Planning

Offline planning involves preparing the mission before its execution. The mission is defined in advance and transmitted to the robot via a file. A planning block is responsible for interpreting the mission. Depending on the state of the robot and its environment, it generates instructions that are then sent to the control block. The latter is responsible for calculating the necessary commands to achieve the instructions and complete the mission.
III. Practical Case of Offline Planning: the JSONAgriFormat
- the trajectory to follow,
- the specification of work zones, corresponding to areas where tools must be lowered,
- the forward speed in these zones,
- the geofencing area, which defines the geographical limits not to be exceeded,
- as well as various metadata related to the agricultural plot.
All this information is structured in a standard format (JSON format), thus facilitating exchange and compatibility between different robotic systems.

Figure 2: Description of the JSONAgriFormat
- the speed at this point,
- the state of the tools (lowered or raised).
The format also allows the inclusion of metadata, for example, the name of the plot or other relevant information.
IV. Practical Case of Online Planning: the Robotic Agreement
Thus, the planning of the path to be followed by the robot is carried out in real-time, that is, 'online', during the mission.

Figure 3: Robotic Agreement
In this concept, the planning of the robot's tasks is carried out in real-time during the mission. Robot B uses the information transmitted by the leader vehicle A, driven by a human, such as its GPS position, the state of its tools, and other parameters, to plan its own actions: path to follow, tool management, etc.
V. Conclusion
Thus, these two approaches illustrate the complementarity between advance preparation and dynamic adaptation, two fundamental pillars of modern agricultural robotics.
*: The technical information presented in this article is provided for informational purposes only. It does not replace the official manuals of the manufacturers. Before any installation, handling or use, please consult the product documentation and follow the safety instructions. The site Torque.works cannot be held responsible for inappropriate use or incorrect interpretation of the information provided.