Artificial intelligent assistant

Traveling salesman skipping some cities. **There is 10 cities and traveling salesman has to find shortest route to visit just any 5 of them.** What would be a proper approach to solve 'traveling-salesman-like' problem where there is more cities available than salesman needs to visit?

With OR-Tools (very good idea) :

1. Allow the solver to drop all nodes with the AddDisjunction() method <

2. Add the (custom) constraint $$ \sum_{v \in V} x_v = 5$$ where $x_v$ takes value $1$ iff node $v$ is visited. You need to use the solver().Add() method :<

xcX3v84RxoQ-4GxG32940ukFUIEgYdPy d2795964629f566cc8fe20b7c9e427c6