Alignment between maps can be obtained by minimizing the Wasserstein dis-
tance
To evaluate our method, we first tested AlignOT on aligning two point clouds that differ by a rotation only.
To do so, we used an experimental map of a ribosome from EMDB 1717, shown in Figure 1a (ribosome
structures are broadly studied in cryo-EM [2,17]). First, we sampled two clouds of 500 points, and applied
a rotation defined in its axis-angle representation by an arbitrary axis, and an angle θ= 20◦. Figure 2a
illustrates how the moving point cloud gets closer to the targeted one over the iterations of the algorithm,
until the convergence criterion is reached. To confirm this visual impression, we repeated the procedure with
different initial angles θ∈ {10◦,30◦,50◦,70◦}. The corresponding Wasserstein distance obtained across the
iterations is shown in Figure 2b, with all the four trajectories converging to the same value and resulting in a
successful alignment. However, we also observed that as θincreases, it takes more iterations for the algorithm
to converge, with longer periods of slow variations at the beginning of the procedure, suggesting that this
alignment can only be achieved within a certain range of θ. Aside from the initial angle, we also studied in
Figure 2c how the size of the point cloud can affect the convergence plot. For θ= 50◦, decreasing the point
cloud size from 500 to 250 leads to a potential loss of precision (with the Wasserstein distance between two
aligned point clouds increasing from ∼115 to 130), but with faster convergence from the algorithm (from ∼
200 to 50 iterations to converge), indicating some trade-off between accuracy and speed.
To interpret these results, we further plotted in Figure 2d how the Wasserstein distance varies on average
(after sampling different point clouds of same size 250 and 500), as a function of θ(and same rotation axis).
In addition to the global minimum achieved for θ= 0, another local minimum was detected at θ= 180◦,
separated by a peak around 90◦. While the sharp decrease observed towards the global minimum suggests
that the optimization procedure can converge well for θ≤60◦, it is also possible that the algorithm does not
converge to the global minimum above this range. Besides, the higher variability obtained from sampling
point clouds of size 250, compared with 500, suggests that the final alignment may be less accurate in this
case. While the same fixed rotation axis was considered in the previous experiments (with different values
of θ), we finally evaluated the probability to successfully align the maps for initial rotations of fixed angle θ
(45, 60, 75 and 90◦), and across different axes covering half of the sphere S2. Upon mapping the axes on the
planar disk in Figure 2e, we found local regions of poorer alignment that match with local minima of the
Wasserstein distance. These results also confirm the existence of a limiting range within which the method
can align two maps. While a successful alignment is overall obtained for θ= 45◦, the maps get partially
aligned in different regions of the disks for 60◦(see Figure 2e), with the performance worsening as θincreases
(see Figure 3).
Benchmarking performance and accuracy of AlignOT with a pair of identical
maps
We next focused on point cloud size and the range of convergence, and quantified their impact on the
accuracy and computational cost of AlignOT. We first considered the same map and alignment task with
θ= 20◦as previously, with different point cloud sizes n(from 50 to 1000). The results obtained with a
standard workstation are shown in Table 2, and confirm the existence of a trade-off between accuracy and
speed, with the alignment improving as nincreases, but with a larger runtime that goes from a few seconds
for n= 50,100,200 to approximately a minute for n= 1000. While the accuracy of the alignment remains
poor for n= 50 and 100 (with an average error of 12.6◦and 7.72◦respectively), it significantly improves for
n= 500 with 2.35±1.23◦error observed, with a runtime suggesting that AlignOT can be used in practice on
standard density maps. We also noted that AlignOT runs slower in comparison with Chimera and Chimera
X’s alignment function fitmap, which performs a steepest ascent optimization to align maps according to
their overlapping score [5,16] (0.3 s on average). On the other hand, we show in our next experiments that
AlignOT outperforms fitmap in accuracy as θincreases.
More precisely, we determined the range of θwithin which the method converges, and compared our
method with fitmap. As shown in Figure 2c, we found that AlignOT can cover a wider range that extends
to 75◦, while fitmap starts failing at approximately 45◦(see also Figure 6for a visualization of some
representative alignments obtained). Beyond this value, AlignOT leads to some variable results up until
100◦, due to the stochasticity of the algorithm. It then converges towards the other local minimum found
5