Ant - agent/network intelligence

antani_logo ants optimizing paths on a network

Antani is an agent/network based optimization engine for field operations. Antani efficiently associate a series of tasks to the most eligible operator.


Fleet dispatch is a complex problem which most of the companies can’t solve themselves. Small companies uses manual labour which is unprecise, costy and causes delays in planning.

Mid size companies devolops a backend connection to external services or buy really expensive native software bad integrated in a pipeline.

The most used software in the market is routific, the general feedback is that routes are long, sequences don’t make much sense and drivers intersect their paths.

Starting with routific as benchmark we developed an in house solution for task assignement which considers task priorities and shift constraints.

We developed a microservice based Saas that is capable of returning a coarse solution within few seconds and keep on optimizing successive task assignements. The user can interact with the engine pausing, resuming, and interact with the simulation. For each solution there is a series of kpi that the user can consider before wating for the time out of the simulation.

The software has prooven better performance and reliability compared to commercial softwares and has been brought to a scale where it can handle multiple parallel calls.

Different mid and big size companies have expressed their interest in testing such a product, what is needed to be done is to re build the architecture, and make the solution water proof before allowing potential customers to test the software and come with feedbacks.


Optimization is about finding one optimal configuration for a given system, in this case we want to look for the best asssesment to dispatch n drivers among m tasks

optimization_8 optimization 8 vans


basic concepts

The method consists in creating a network connecting tasks and move ants across network edges to find the most convenient solution.

antani_concept antani concept

Each ant can, sense, move, act and based on the reward the best current solution is taken.

concet_antani definition of an ant


graph building utilities


graph formation

Once created the graph we simplify the computation pre calculating all the routes from geohash to geohash.

routing_info routing information

The cached information fills a database storing the most relevant origin destination connection.

routing_database routing database

Markov chains

To suggest a move from one spot to the next we use Markov chains based on graph connections, for each spot we find the most relevant links and transition probabilities to the closest spots.

markov_chain Markov chains

posterior probability

While collecting data we can calculate more reliable estimation of transition probabilities considering Bayesian inference on real data

post_prob posterior probabilities

setting up

We sum up all the tasks into the corresponding geohash and calculate the transition probability between two hexagons.

concept_mallink summing up tasks per geohash and connecting the spots weighting the edges


engine functionalities


engine description

reinforcement learning

We use reinforcement learning to find the best move for a given simulation time and task completion

reinforce_move reinforcement learning for move probability


kpi comparison


kpi comparison


We provide a frontend solution under the production vpn


And a video explaining the functioning of the frontend


infrastructural design

The solution consists in a series of microservices, many microservices have backup solutions or cached information to garantee operativity.

engine_design design of the engine

The system is dockerized and linked with docker compose into an instance

antani_infra docker and microservices

We expose a series of endpoints on different clusters, the backbone application orchestrate the calls.

infra_design infrastructure design