Message-Passing Algorithms for Synchronization Problems over Compact Groups

Amelia Perry, Alexander S. Wein, Afonso S. Bandeira, Ankur Moitra

Research output: Contribution to journalArticlepeer-review


Various alignment problems arising in cryo-electron microscopy, community detection, time synchronization, computer vision, and other fields fall into a common framework of synchronization problems over compact groups such as ℤ/L, U(1), or SO(3). The goal in such problems is to estimate an unknown vector of group elements given noisy relative observations. We present an efficient iterative algorithm to solve a large class of these problems, allowing for any compact group, with measurements on multiple “frequency channels” (Fourier modes, or more generally, irreducible representations of the group). Our algorithm is a highly efficient iterative method following the blueprint of approximate message passing (AMP), which has recently arisen as a central technique for inference problems such as structured low-rank estimation and compressed sensing. We augment the standard ideas of AMP with ideas from representation theory so that the algorithm can work with distributions over general compact groups. Using standard but nonrigorous methods from statistical physics, we analyze the behavior of our algorithm on a Gaussian noise model, identifying phases where we believe the problem is easy, (computationally) hard, and (statistically) impossible. In particular, such evidence predicts that our algorithm is information-theoretically optimal in many cases, and that the remaining cases exhibit statistical-to-computational gaps.

Original languageEnglish (US)
Pages (from-to)2275-2322
Number of pages48
JournalCommunications on Pure and Applied Mathematics
Issue number11
StatePublished - Nov 2018

ASJC Scopus subject areas

  • General Mathematics
  • Applied Mathematics


Dive into the research topics of 'Message-Passing Algorithms for Synchronization Problems over Compact Groups'. Together they form a unique fingerprint.

Cite this