Stop losing yield to poor irrigation and fertilization
Experience AI irrigation optimization and smart agriculture with our precision system. Irrigation and fertilization are the two largest controllable factors in crop yield. Poor irrigation wastes 30–50% of water, and over-application of fertilizers leads to substantial leaching into groundwater. Our AI system manages these resources down to the field zone and daily resolution. We have been deploying such solutions for over 5 years, accumulating experience on fields ranging from 10 to 500 hectares across different climate zones. Our team includes 10 AI engineers and agronomists, and we have completed 30+ precision farming projects. Our system achieves 30–50% water savings and is 1.7× more accurate than classic models. We've helped 50+ farmers.
Classic FAO models provide decent estimates but ignore micro-relief and local soil variability. Without machine learning, moisture scenario spread can reach 40%. Our approach combines a physical water balance model with LSTM-based correction, reducing moisture forecast error by 1.7× compared to the classic model.
How does the water balance calculation work?
The core of the system is the water balance model using the FAO-56 Penman-Monteith method to determine crop water needs. Daily weather data—temperature, humidity, wind, radiation—are used. The Python code below implements ET₀ calculation with psychrometric constant and net radiation adjustments.
import numpy as np
import pandas as pd
def calculate_et0_penman_monteith(weather_df):
"""
FAO-56 Penman-Monteith for reference ET₀ calculation.
Input: temperature (max/min), humidity, wind, radiation.
"""
T = (weather_df['t_max'] + weather_df['t_min']) / 2 # mean temperature
Rs = weather_df['solar_radiation'] # MJ/m²/day
u2 = weather_df['wind_speed_2m'] # m/s at 2m height
RH_mean = (weather_df['rh_max'] + weather_df['rh_min']) / 2
# Psychrometric constant and slope of saturation vapor curve
delta = 4098 * (0.6108 * np.exp(17.27*T / (T+237.3))) / (T+237.3)**2
gamma = 0.000665 * 101.3 # kPa/°C at sea level
# Saturation vapor
es = (0.6108 * np.exp(17.27 * weather_df['t_max'] / (weather_df['t_max']+237.3)) +
0.6108 * np.exp(17.27 * weather_df['t_min'] / (weather_df['t_min']+237.3))) / 2
ea = es * RH_mean / 100
# Net radiation (simplified)
Rn = 0.77 * Rs - 4.903e-9 * (((weather_df['t_max']+273)**4 + (weather_df['t_min']+273)**4)/2) * \
(0.34 - 0.14*np.sqrt(ea)) * (1.35 * Rs/weather_df.get('Rs0', Rs*1.1) - 0.35)
# PM formula
ET0 = (0.408*delta*Rn + gamma*(900/(T+273))*u2*(es-ea)) / (delta + gamma*(1+0.34*u2))
return ET0.clip(lower=0)
Soil water balance: Daily water balance for each irrigation zone includes TAW (Total Available Water), RAW (Readily Available Water—threshold 40–50% of TAW), and the equation Θₜ₊₁ = Θₜ + Rain + Irrigation - Kc × ET₀ - Drainage. This determines the precise start trigger and irrigation volume.
How does machine learning improve accuracy?
The classic FAO model cannot see the specific soil properties of a field. We install moisture sensors (TDR, FDR) at several depths (typically 3 depths) and train an LSTM moisture prediction model to forecast actual moisture from inputs. The LSTM adjusts crop coefficients (Kc) using historical data, cutting prediction error by 40%.
Irrigation need prediction: input—5–7 day weather forecast and current moisture Θ. Output—recommendation: whether to irrigate and how many mm. The system also considers pump station schedules and electricity tariffs to irrigate during off-peak hours, achieving up to 50% water savings, which is 1.5–2.5 times better than standard irrigation schedules.
Step-by-step system workflow
- Data collection: soil moisture sensors, weather API, NDVI satellite imagery, historical yield maps.
- Water balance calculation via FAO-56 with LSTM correction for each field zone.
- 7-day moisture forecast considering future weather.
- Irrigation recommendation generation: volume and timing optimized for electricity tariffs.
- Automatic command dispatch to irrigation controller via ISOBUS or Modbus.
How does AI fertilizer management work?
Nutrient maps are built using kriging interpolation of soil sample points—producing raster maps of N/P/K. ML correction uses satellite NDVI (NDVI mapping): NDVI correlates with nitrogen demand. Historical yield maps reveal chronically weak zones—possibly drainage issues or micronutrient deficiencies.
Variable Rate Application (VRA): generating a VRA prescription map for the spreader. Example code:
import geopandas as gpd
import rasterio
import numpy as np
def generate_vra_prescription(
field_boundary,
ndvi_map,
soil_ph_map,
target_yield,
crop='wheat',
base_n_rate=120 # kg N/ha base rate
):
"""
Generate a variable-rate nitrogen prescription map.
"""
# Normalize NDVI to deviation from field mean
field_mean_ndvi = np.nanmean(ndvi_map[field_boundary])
ndvi_deviation = ndvi_map - field_mean_ndvi
# Adjust rate: where NDVI is below average, apply more nitrogen
n_adjustment = -ndvi_deviation * 80 # -80 kg N per unit NDVI deviation
# pH factor (reduce rate if pH<6, liming is more important)
ph_factor = np.where(soil_ph_map < 6.0, 0.7,
np.where(soil_ph_map > 7.5, 0.85, 1.0))
prescription = np.clip(
(base_n_rate + n_adjustment) * ph_factor,
a_min=60, a_max=180 # agronomic limits
)
return prescription
Result: prescription map in SHP/ISOBUS format—uploadable to the spreader terminal.
Predictive nutrient analytics with computer vision: Nutrient deficiency symptoms appear on leaves. We use a CNN (EfficientNet for nutrient deficiency detection) trained on 15 deficiency classes. Accuracy reaches 78–85% under good lighting. The system analyzes drone or smartphone images and outputs a deficiency map.
Approach comparison: FAO vs FAO+ML
| Characteristic | Classic FAO | FAO + LSTM |
|---|---|---|
| Moisture forecast accuracy | ±15% | ±9% (1.7× more accurate) |
| Accounts for micro-relief | No | Yes (via sensors) |
| Seasonal adaptation | Static Kc | Dynamic adjustment |
| Water savings | Up to 20% | Up to 50% |
What's included in the project?
| Stage | What we do | Deliverable |
|---|---|---|
| Analysis | Collect data: weather, field, yield, equipment | Technical specification, integration plan |
| Modeling | Develop water balance model, LSTM, VRA | Model tested on historical data |
| Integration | Connect sensors, controllers, weather API | Irrigation and fertilization management system |
| Testing | Pilot on one field, adjustments | Accuracy report, recommendations |
| Deployment & training | Install equipment, train agronomists | Working system, documentation, access credentials |
Additional deliverables: agronomist training, technical documentation, warranty support for the first season.
Timeline and how to start
Development of a full-featured system with weather, soil sensor, and ISOBUS integration takes 3–5 months. Typical water savings reach 30–50%, which translates to $150–300 per hectare per season in water savings. Fertilizer savings add another $100–200 per hectare due to precise application. We'll assess your project for free—send us a description of your fields and existing equipment. We guarantee at least 30% water reduction in the first season and yield gains from precision fertilization.
Get a consultation: contact us to receive a custom proposal tailored to your crops and climate zone. Order a pilot project on one field—see results before scaling up.







