Naive control techniques are working with a direct policy. For a situation, a certain action is executed. These rules are easy to implement but they are preventing a planning process. Planning means, to find the action sequence for different goals. The precondition for planning is that a prediction model is there.

Let me give an example from the domain of weather forecasting. A simple direct policy is equal to the rule “If it's rain, then open the umbrella”. The idea is to react to an event with a certain action. On the first look this rule make sense, because the umbrella prevents that the user gets wet. But what is if “getting wet” was the goal, for example in case of watering flowers? The elaborated technique separates between events and actions. Instead of specify the action “open the umbrella” the question is: Will it rain? This type of problems can be answered with a rainfall prediction models. If the model comes to the conclusion that it will rain, we can plan the next step. It's possible to open the umbrella, but it's also possible to open the greenhouse for watering the flowers.

The best practice method for creating a prediction model is a neural network.[1] The accuracy is high and neural networks can be programmed with standard libraries like Torch and Tensorflow. The weaker alternative would be a fuzzy logic model.[2] Here is the problem, that the accuracy is low, and it wasn't understand what probability is.


  1. Mishra, Neelam, et al. "Development and analysis of artificial neural network models for rainfall prediction by using time-series data." International Journal of Intelligent Systems and Applications 11.1 (2018): 16.
  2. Safar, Noor Zuraidin Mohd, et al. "Rain prediction using fuzzy rule based system in North-West Malaysia." Indonesian Journal of Electrical Engineering and Computer Science 14.3 (2019): 1572-1581.
Community content is available under CC-BY-SA unless otherwise noted.