In this paper we use a modified algorithm of the ant system optimization (ASO) to solve the capacitated vehicle routing problem (CVRP), i.e., finding the (approximate) optimum routes, the main modifications consist of, (1) Adding pheromone to the best three routes found by the ants instead of adding pheromone to the global best route only, (2) Introducing the concept of probability of stagnation which represent the probability of having the previous solution in the next iteration, (3) Adding a local optimizer to improve the global best routes found by artificial ants. We test our modified algorithm on some benchmark problems that have been also tested by other ant colony optimization (ACO) metaheuristics, our results was best in the sense that it is closer to the known optimum routes for these benchmark problems except one problem. Introduction Transportation is a major problem domain in logistics and represents a substantial task in the activity of many companies, Toth [1]. An important problem in the field of transportation consist of finding the optimum routes for a fleet of vehicles to serve a set of customers, this problem known as vehicle routing problem (VRP). Dantizag and Ramser in 1959 proposed the first VRP, Dantizag[2], they introduce the following scenario, consider a depot having a fleet of vehicles with limited capacity and a set of customers each with a certain demand for merchandise or goods to be dispatched, the problem is to determine optimum route for each vehicle to visit every customer exactly once in order to fulfill the demand, the most common goal for optimization is to minimize the overall distance traveled by the vehicles, this problem known as capacitated vehicles routing problem (CVRP), for more information about the (CVRP) and its variant one referred to, Toth[1], Dantizag[2]. Vehicle routing problem: The VRP can be represented by an undirected graph G = (V,E), Bullnheimer[3], where V={v0,v1, v2...vn} is a vertex set and E={(vi, vj)| vi, vjV, i≠j} is an edge set, the depot is represented by vertex v0 and it is from where that (m) identical vehicles of capacity (Q) must serve all the (k) clients (or customers) represented by the set of (n) vertices , for each edge there is a non-negative cost (distance or travel time) represented by a matrix C=(Cij) between customers vi and vj, each customer vi has non-negative demand qi, now if we let (R1, R2,...Rm) represent a partition of V representing the routes of the (m) vehicles to serve all customers where Ri={v0, v1, v2, ...,vk,vk+1} with i=1,...,m and v0=vk+1 represent the depot, then the cost for a route is