Order picking in a warehouse is considered to be a time-consuming and costly process that results in loss of profit for the management. Hence a warehouse management team is always looking to improve their picking process and increase their efficiency. In this research, a warehouse with narrow aisles is studied. The aisles are so narrow that a forklift is only allowed to traverse them in one direction thus making them unidirectional. The picking process is modeled first as an uncapacitated vehicle routing problem and then as a capacitated vehicle routing problem. The objective is to minimize the total travel distance. Since the Mixed Integer Programming model takes a long time to solve large instances, we develop a heuristic algorithm both for the uncapacitated and capacitated problems by combining two methodologies of heuristics and machine learning. The algorithm is able to solve the instances to near optimality quickly, finding practical solutions that could potentially be implemented into actual warehouses to reduce order picking time and hence, overall warehouse costs.