ICTS-M is a generalization of Increasing Cost Tree Search, an algorithm for multi-agent pathfinding (MAPF), that optimally solves the Multi-Agent Path Finding with Matching problem (MAPFM), which in turn is a generalization of MAPF. The ICTS code from here was taken as a starting point and was first extended with both simple + enhanced pruning and Independence Detection. Next, modifications were made to support matching.
This code was developed in the context of the CSE3000 Research Project course at TU Delft and accompanies a paper of which the source can be found under docs.