I am trying to come up with an AI architecture for a puzzle game. The basic idea is that there are teams of NPCs and teams of players. Each team is presented with the same puzzle. The first team to solve the puzzle wins. NPCs/players can move like a puzzle platformer game. So walk, run, slide, jump, interact etc. The puzzles are spatial arrangements where NPCs/players can move, slide, etc. objects to locations. To make things more complicated, team cooperation is required as some actions require multiple NPCs/players with careful positioning and synchronized motions.
Any ideas on how I could approach this ? I am wondering how similar games (are there similar games?) approach AI. I believe that the most common approach would be to use some search algorithm. I was thinking about GOAP. But I don't know how to express the search space. I have multiple agents, continuous motion of multiple types, discrete actions with synchronization constraints. Any suggestions or ideas would be really appreciated.