I’m building a scientific article about route optimization with the openrouteservice API. However, I did not find documentation describing which algorithm the API uses to optimize routes.
Concerning your question about algorithms, ORS implements several ones, including contraction hierarchies, core ALT, ALT, A* and Dijkstra. Which algorithm is used depends on the parameters of the request and on the configuration of the backend software, which may be different for each vehicle profile. The details are subject to frequent change, therefore, there is no definite documentation. As a rule of thumb, ORS uses the quickest algorithm, that is flexible enough to serve the request, as long as it is enabled for the profile.