Salesman problem with additional conditions and features I'd like to specify the kind of a problem I encountered. I need to compose the best route for a car driver who goes to different cities.
His aim to check in the most proper car park in a city taking into account arrival and departure dates and time, distance to a parking lot, traffic, a car type and cars density at a parking lot. The driver can travel through cities in random order.
I know it's an optimization problem and it also resembles the salesman and the transportation problems. But also it looks like a recommendation task. I'm confused about it. I want to use the gradient boosting or NN's to solve it, but I'm stumped by the strict mathematical statement of the problem in the mathematical language. Any clarifications, references to similar works or blogs are desired.
I couldn't tell for sure if it is applicable without seeing the exact program, but you could look into constraint programming for a solution. 

Constraint programming aims to find the best solution to an optimization problem with a series of constraints, which can be hard or soft. Hard constraints rule out a possible solution (for example, no more than 10 hours drive on the same day), while soft constraints would dictate which of the remaining solution is the best, for instance awarding points for staying the night in cities with good acommodation, or having roughly the same amount of miles every day.

Constraint programming is based on backtracking, so it doesn't scale well at all for problems with many possible solutions, so it might not be for you. Worth taking a look at at least. Hope it helps!