Sudoku is a logic-based number placement puzzle that consists of 81 cells which are divided into 9 columns, rows and blocks. The goal of this game is to fill out each cells with numbers 1–9 so that there are no repeating numbers in each row, column and blocks.

In this post, I aim to introduce a digit recognition and integer linear programming based automatic sudoku solver that uses the following: Keras (based on the MNIST database [1]) and OpenCV for digit recognition and PuLP for integer linear programming. …

The vehicle routing problem (VRP) is a combinatorial and integer programming which ask “What is the optimal set of routes for a fleet of vehicles in order to deliver to a given set of customers?” It generalizes the well-known traveling salesman problem (TSP).

There are many variants of vehicle routing problem. Some popular examples are as follows:

**CVRP**(Capacitated Vehicle Routing Problem) : Vehicles have a limited carrying capacity of the goods that must be delivered.**VRPTW**(Vehicle Routing Problem with Time Windows) : The delivery locations have time windows within the deliveries (or visits) must be made.**VRPPD**(Vehicle…