kvsoftware

AgriClime

Weather forecasts and alerts that help farmers plan around the climate

An Android app that helps farmers plan around the weather. A forecasting model predicts the next hours from the last day of hourly readings for their location, and a classifier labels the conditions ahead, served to the app through a Flask API.

A farmer's week is planned around the weather: when to plant, water, spray, or harvest. AgriClime is an Android app that helps them plan ahead, built as our capstone project at Bangkit Academy: it forecasts the weather for the farmer's location and labels the conditions coming.

Program
Bangkit capstone
Team
7 people
Built in
Nov – Dec 2024

How the forecast works

Two models, one after the other. An LSTM looks at the last day of hourly readings for the location and forecasts what comes next, across every reading a weather app gives you. A TensorFlow neural network then labels the conditions ahead, so the app can say more than numbers.

  1. Hourly readings

    The last day of weather for the farmer's location.

  2. LSTM forecast

    Predicts the readings for the hours ahead.

  3. DNN classifier

    Labels the conditions those readings mean.

  4. Flask API

    Serves both to the Android app.

From the last day of readings to a forecast the farmer can plan around.

The forecast can run as far ahead as you ask, but it gets less accurate the further out it goes, the usual trade-off with any weather model.

The data

The models were trained on open data: the Global Weather Repository on Kaggle, a daily-updating dataset of weather around the world. Live readings for the app come from WeatherAPI.com.

My part

On a team of seven covering machine learning, Android, and cloud, I owned the backend API and the machine learning flow: getting the models from the notebook to an API the app could call.

Back to the work