I’ve found the only way to stop them moving is make sure they are snug to the walls. If you have a gap one side then cut a mat to the correct width with a Stanley knife and insert it into the space. I do have a 2 foot gap at the back of my boxes as they are 14ft long and the 2 mats end to end are 12ft and I would rather have the gap at the back with straw banks on top than at the front with exposed concrete.
I was lucky enough to have totally flat concrete floors. I fitted the mats (2nd hand) snugly together, and sealed them with various things - gutter sealant I think may have been one of the best - I tried a few outdoor/waterprofroof/flexible sealants. For the first 3 or 4 years I redid the seals as necessary, but now (about 8 or 9 years later) they seem not to need it. I never lift the mats. I do look at the joins occaisionally - I suppose at some point they will need redoing.
I have mats in the field shelter so I didn't have the funds to mat the whole thing. So I only did the back half. I bought heavy mats but my pony still shifted them about. A kind neighbour drilled into the floor and fixed a wooden batten along most of the front edge of the mats just to hold them in place. That was 25 yrs ago and it's still there. It's worn away a bit but still doing the job