Software II: Autonomous Decision Making Model

Artificial Intelligence for autonomous and smart agricultural decisions.

Berlin, GermanyJanuary 20, 2026 – October 31, 2026

In the app today

How Software II works in the Smart Farming web and mobile apps, as of October 6, 2026. The January report below is kept as published.

From a drone flight to advice

In the app, Software II is no longer a single prompt: it is the last step of a pipeline that runs on every upload. Each step is computed on the server, so the web application and the mobile app show the same results.

1. Upload

Per plot

The farmer uploads the NDVI zonal statistics of a drone flight (XML), with the sowing date and the date the images were taken. Days after sowing (DAS) is computed per plot from those two dates.

2. Score

Software I

A model pack scores irrigation and nitrogen for each plot as low, medium or high. The farmer chooses the pack on the upload page: the models from Data Collection 1 or from Data Collection 2.

3. Judge NDVI by growth stage

Normal · watch · low

The plot's NDVI is compared with the healthy range for its wheat growth stage. From heading on, a low model score with NDVI still in range is shown as likely ripening rather than a problem.

4. Field health

0–100

One score per plot, averaged over the field, from how far NDVI sits below its stage's range and from the nitrogen and irrigation levels.

5. Recommend

Software II

A language model turns the stage, the two levels and the NDVI judgement into advice for water and fertiliser, in Turkish or English. It runs as a background job; the app shows its progress, and its errors if it fails.

Two model packs, side by side

Every upload is scored by both packs and both results are kept, so the apps can show where they disagree. The pack chosen on the upload page drives the recommendation.

Data Collection 1

Decision Tree (irrigation) · Naive Bayes (nitrogen)

Features: DAS and the plot's NDVI mean, maximum, minimum, median, covariance and range. No validation result was recorded for these models.

Data Collection 2

Extra Trees (irrigation) · XGBoost (nitrogen)

Features: DAS and the plot's NDVI mean, maximum, minimum, standard deviation and range. Validated on the 2025 and 2026 data with plot-wise 15-fold cross-validation: nitrogen 51% (chance 33%, p = 0.01), irrigation 36% (p = 0.14).

What the accuracy means

The Data Collection 2 irrigation model cannot be told apart from chance, so it must not drive decisions on its own; the app says so next to its results. The nitrogen model separates unfertilised plots well but confuses the two fertilised levels. Both results hold for these two seasons on this field and claim nothing for another field or year.

Growth stages and their NDVI ranges

The decision matrix and the NDVI check use the same five wheat stages, by days after sowing:

Emergence and tillering

DAS 0–50 · NDVI 0.15–0.60

Advice focuses on establishing the crop: enough water, and fertiliser early to raise the tiller count.

Stem extension

DAS 50–110 · NDVI 0.40–0.85

The crop's hungriest stage: low water or nitrogen gets the most urgent advice.

Heading and flowering

DAS 110–140 · NDVI 0.45–0.90

Water stress costs grain; yellowing leaves can start and are not treated as a problem when NDVI is in range.

Grain filling

DAS 140–165 · NDVI 0.30–0.80

No more fertiliser; water is reduced gradually. Yellowing within the range is natural ripening.

Ripening

DAS 165+ · NDVI 0.10–0.55

No water and no fertiliser: the crop dries down for harvest.

Field health score

Each plot scores 100 minus three penalties: up to 50 points for NDVI below its stage's range (a continuous measure, estimated from the plot's own mean and spread), up to 30 for nitrogen and up to 20 for irrigation (a low level costs the full weight, a medium level half). The field's score is the average over the plots that could be scored.

  • The nitrogen and irrigation penalties are weighted by the model's validated accuracy: a model within five points of chance counts for a tenth, so it barely moves the score. Models without a recorded validation (Data Collection 1) count in full, and Data Collection 2's penalties are further scaled by the model's own probability for its answer.
  • From heading on, when NDVI is still inside its stage's range, a low nitrogen or irrigation level counts for a quarter: the low score is most likely the yellowing that comes with ripening.
  • When fewer than half of the plots can be scored, the apps show no score instead of a misleading one.

The language model layer today

The January report used the Llama-3.3-70b-versatile model through an external provider. Since then the recommendations run through preunec's own OpenAI-compatible model gateway, currently with Google's Gemini 3.1 Flash-Lite (gemini-3.1-flash-lite). The model is a configuration setting, so it can be changed without changing the software.

  • The model answers in a fixed JSON structure (field status, water advice, fertiliser advice, a note to keep in mind), so the apps can lay the advice out reliably.
  • The prompt carries the decision matrix for the five stages and the plot's NDVI judgement, and tells the model not to recommend water or fertiliser for yellowing that is natural for the stage.
  • Rate limits from the gateway are waited out and retried; a recommendation that still fails is reported in the app rather than silently skipped.

The stage ranges against the 2025 field

Every plot of the 2025 season, judged exactly as the app would judge it: its NDVI on each flight against the range for its stage, counted in days after sowing.

Early sowing
Measured NDVI and the app's expected range, 2025 season: Early sowing0.00.20.40.60.81.04080120160200Days after sowing0 g20 g10 g
Late sowing
Measured NDVI and the app's expected range, 2025 season: Late sowing0.00.20.40.60.81.04080120160200Days after sowing10 g20 g0 g
Show the numbers
Measured NDVI and the app's expected range, 2025 season
FlightBlockDays after sowing0 g/m² N10 g/m² N20 g/m² NApp's rangePlots: normal / watch / low
Apr 15, 2025Early sowing1240.580.840.830.45–0.9024 / 2 / 1
Apr 15, 2025Late sowing460.370.680.640.23–0.6827 / 0 / 0
Apr 18, 2025Early sowing1270.550.810.800.45–0.9024 / 2 / 1
Apr 18, 2025Late sowing490.350.640.620.26–0.7127 / 0 / 0
May 7, 2025Early sowing1460.350.640.630.33–0.8221 / 5 / 1
May 7, 2025Late sowing680.360.560.560.40–0.8520 / 3 / 4
Jun 4, 2025Early sowing1740.290.240.250.11–0.5627 / 0 / 0
Jun 4, 2025Late sowing960.310.520.440.40–0.8514 / 7 / 6
Jun 16, 2025Early sowing1860.160.100.100.10–0.5513 / 11 / 3
Jun 16, 2025Late sowing1080.080.150.110.42–0.870 / 0 / 27
  • Early sowing: the ranges fit. In mid-April 24 of 27 plots read as normal, and the three below range were exactly the unfertilised ones: the check picks out the missing nitrogen. On 16 June (day 186), 14 plots fell below the ripening range as the crop dried out for harvest.
  • Late sowing: the ranges do not fit. On 16 June, at day 108, the app expects a growing crop (stem extension, NDVI 0.42–0.87), but the late wheat had already ripened after a much shorter season: all 27 plots would be judged low. Ten days earlier 13 already were.
  • What this means: counting the stage in days after sowing alone misreads a late, warm-spring crop. The ranges are to be calibrated per stage from the reference plots, and the stage itself needs more than the sowing date, for example the temperature the crop has accumulated.

First Data Collection

Turning Software I's scores into time-aware field recommendations

What Software II Does

Software II, the Autonomous Decision Making Model, turns the analytical output of Software I into practical guidance. It treats the drone measurements not as static numbers but as part of the crop's timeline, and turns them into an action plan with concrete recommendations for the farmer.

Inputs

Nitrogen score

from Software I

The predicted nutrient status: Low, Medium or Ideal, corresponding to 0, 10 and 20 g/m².

Irrigation score

from Software I

The predicted water stress status: Low, Medium or Ideal.

Days after sowing (DAS)

the crop's biological clock

More than a counter: DAS decides the growth stage and with it what the crop needs. The same scores lead to different recommendations at different stages.

Growth Stages (Zadoks-Based)

The decisions follow the Zadoks phenological scale, matched to NDVI and DAS data measured in the field, so that each stage rests on evidence rather than assumptions.

Establishment and tillering

DAS 40–50 · Zadoks 20–30

NDVI around 0.55 as root establishment completes. Decisions here directly affect the final head count.

Rapid growth and stem elongation

DAS 50–110 · Zadoks 31–50

The crop builds biomass fast and needs the most resources: interventions get the highest priority.

Flowering and anthesis

DAS 110–140 · Zadoks 60–75

NDVI peaks at about 0.75 and the yield potential is set. No tolerance for water or nutrient stress in this window.

Grain filling

DAS 140–165 · Zadoks 80–89

NDVI falls back towards 0.50 as nutrients move from the leaves to the grain; interventions become less frequent.

Harvest preparation

DAS 165+ · Zadoks 90+

NDVI drops below 0.20. The plant can no longer use inputs, so the advice is to stop water and fertilizer and plan the harvest.

The Decision Layer: Llama-3.3-70b-Versatile

Software II uses the reasoning ability of the Llama-3.3-70b-versatile language model to weigh several variables at once and handle agricultural trade-offs.

  • Contextual evaluation: Software I's scores are judged like an expert consultant would, by the risks and opportunities of the current growth stage.
  • Non-linear relationships: the model can reason about links between plant biology and resource management, such as the balance between nitrogen and water.
  • Room to grow: new inputs such as temperature or humidity can be added later without changing the core of the system.

Decision filters

Economic advice: a falling NDVI before harvest is recognised as natural, and the user is warned against costly, useless field applications. Time-sensitive priority: in critical stages even small deviations become high-priority actions. Operational checks: in early growth, the model warns about practices that work against each other, such as over-irrigation washing nitrogen out of the root zone.

Conclusion

Software II refines Software I's technical diagnosis into strategic guidance. Filtering the data through the crop's biology means only decisions worth acting on reach the producer, and advising against unnecessary fertilization or irrigation supports both economic savings and sustainable production.

Second Data Collection

What the 2026 season changed for the inputs Software II decides from, and how far each can be trusted.

New inputs from the second data collection

Software II decides from Software I's nitrogen and irrigation levels. After the 2026 season those come from new models, retrained on both seasons together: 594 plot measurements from the 54 plots, 12 flights. They were delivered as a web integration package, and in the app they are the Data Collection 2 model pack.

Input

One flight

The flight's zonal statistics table (one file for all plots, or one file per plot) and the sowing date, one for the field or one per plot. The flight date is read from the file name.

Output

Per plot

Days after sowing, the predicted nitrogen level (0, 10 or 20 g/m²) and irrigation level (0, 50 or 100%), each with its probability for every level, and a warning when a prediction should not be trusted.

Models

Chosen from 12 tested

XGBoost for nitrogen and Extra Trees for irrigation, chosen by accuracy on plots the model had never seen, over 15 test rounds. All 12 models landed within a few points of each other.

Unsown plots

No prediction

A plot flown before it was sown gets no prediction, so Software II gives no advice for it. Two 2026 flights came before the late block was sown; those bare-soil measurements were left out of training.

Into the app, September 2026

In mid-September 2026 the new models went into the web and mobile apps next to the first-phase ones instead of replacing them, so the two can be compared on the same uploads.

Both sets score every upload

Nothing re-uploaded

Each plot is scored by both model sets and both results are stored. Earlier uploads were scored by the new set from the statistics already in the database.

Chosen at upload

Web and mobile

The upload page lets the farmer pick "Data Collection 1" or "Data Collection 2". The recommendations always use the set chosen for the upload; the server administrator sets the default and whether users may switch.

Side by side

Results page

The results page shows either set, or both together with the plots where they disagree highlighted. Each set's own accuracy and caveats are shown next to its results.

Reproducible

Pinned library

The machine-learning library was upgraded to the version both sets were saved with, and an automated test pins the first-phase predictions so the upgrade cannot change them unnoticed.

How far each input can be trusted

Nitrogen

51% · chance 33% · p = 0.01

A real, repeatable signal. The model reliably finds plots that got no fertiliser (80% in a fertilised-or-not test, against 67% for always guessing fertilised), but cannot tell the half dose from the full dose (49%, a coin flip): the crop looks the same at both. The practical ceiling for this data is about 67%.

Irrigation

36% · chance 33% · p = 0.14

No usable signal: the model cannot be told apart from chance. Each irrigation level was one strip of the field, so water and position in the field are the same variable (ρ = 0.94), and rain covered most of the crop's water demand: 87% in 2025, and 140% in 2026 (878 mm against 620 mm).

Measured afterwards with the same 15-round procedure, the first-phase models reach 42% for nitrogen and 35% for irrigation. The second-phase nitrogen model is therefore better than both chance and its predecessor; for irrigation, both sets sit at chance level.

What this means for the advice

Software II can act on the nitrogen signal where it is strong: a plot that looks unfertilised. It should not rely on the difference between the two fertilised levels, nor on the irrigation level at all. In the app, the Data Collection 2 irrigation result carries the model's own warning and counts for almost nothing in the field health score (the Data Collection 1 models have no validation recorded in the app, so they count in full; the accuracy measured afterwards is not used there yet). For water, the growth stage and recent rain are the better guide.

Two plots, scored

How the field health score treats a Data Collection 2 warning, worked through for two example plots with the analysis server's own code. Both plots carry the same "low" nitrogen and irrigation warning; what differs is their NDVI against the range for their growth stage.

Plot A: stem extension

NDVI 0.32 at day 80 · score 84.2

20% below the stage's minimum of 0.40, which costs 20% of the 50 NDVI points: 10. The nitrogen warning costs 4.77 of its 30 points, because the model is only partly better than chance and its own probability for the warning is 60%. The irrigation warning costs 1 point: that model is at chance level. The plot needs action.

Plot B: ripening

NDVI 0.35 at day 175 · score 98.6

Inside the ripening range (0.10–0.55), so the same warnings count only a quarter: 1.44 points in all. The apps show this plot as likely ripening, in violet, outside the red–amber–green severity scale: an earlier wheat-gold version was read as medium severity.

  • Before September the tile showed 50% for every upload with any issue: it was computed in the browser from a fixed placeholder. It is now calculated on the server and returned with its breakdown, so every value can be traced.
  • The field summaries had stored days after sowing counted to the current date (641 days, for example) instead of the flight date; they are now regenerated whenever the stored value is wrong.

What would improve the inputs

  • More data of the same kind or another algorithm is unlikely to help: going from 24 to 43 training plots raised nitrogen accuracy by only 2.7 points, and NDVI's five statistics carry essentially two pieces of information, how green a plot is and how uniform.
  • Relative NDVI within a flight: comparing each plot with the other plots of the same flight raised nitrogen accuracy from 49% to 56% in tests. The input already contains every plot of a flight; it is not yet part of the delivered model.
  • For future trials: irrigation levels spread across the field instead of in strips, recorded irrigation dates and amounts, soil moisture measurements, and spectral bands beyond NDVI (such as red edge) to separate nitrogen doses.
  • In the software: review the growth-stage NDVI ranges and the field health weights with the agronomy partners. Both are first versions, not yet validated against field observations, and a plot's share below the healthy range is still estimated from its statistics rather than measured from the drone image.

Reports

  • Autonomous Decision Making Model ReportPDF