1. A method implemented by a computing device, the method comprising: receiving, by the computing device, network information, least cost route (LCR) forecast information, network administrator inputs, and looping exceptions; receiving, by the computing device, a call, from an originating location, to a terminating location; determining, by the computing device, a LCR for the call based on the network information, the LCR forecast information, the network administrator inputs, and the looping exceptions, determining the LCR including: generating a first set of possible LCRs for the call, determining exclusions from the first set of possible LCRs to create a second set of possible LCRs for the call, determining hubbing and routing for the second set of possible LCRs, and selecting, from the second set of possible LCRs, the LCR based on the determined hubbing and routing; generating, by the computing device, routing instructions for the LCR; and providing, by the computing device, the routing instructions to one or more network elements associated with the LCR.