How to formulate this alignment task as an optimization problem?

31 Views Asked by At

Please bear me with poor math and explanation.

My task is about how to linearly transform points in set $\mathbb{A}$ such that it could better align with points in a reference set $\mathbb{B}$.

The point distribution is unknown, but if you want, we can asumme

  • points from set $\mathbb{A}$ are randomly drawn from a mixture of $N\geq 1$ of Gaussian distributions
  • points from set $\mathbb{B}$ are randomly drawn from a mixture of $M\geq 1$ of Gaussian distributions
  • both $N$ and $M$ are unknown

My baseline solution is to transform points in set $\mathbb{A}$ to the set $\mathbb{A}'$ using the following formula

$\displaystyle A'(x,y)=\mu_B + (A(x,y)-\mu_A)\frac{\sigma_B}{\sigma_A}$

where $A(x,y)$ is a point in set $\mathbb{A}$, and $\mu_\*$ and $\sigma_\*$ are the mean and standard deviation for a set *.

In my task, however, it is possible to transform points with more transforms. For example, transform a subset of points in a set using $f$, while transforming another subset of points using a transform $g$. In other words, one may partition the set $\mathbb{A}$ into a number of non-overlapping subsets, i.e.,

$\mathbb{A}=\mathbb{A}_1\cup\mathbb{A}_2\cup\cdots\mathbb{A}_i\cdots\cup\mathbb{A}_n$

and find each subset $\mathbb{A}_i$ a transform, i.e.,

$\mathbb{A}'=\mathbb{A}'_1\cup\mathbb{A}'_2\cup\cdots\mathbb{A}'_i\cdots\cup\mathbb{A}'_n$ and

$A_i'(x,y)=\mu_i + (A_i(x,y)-\mu_{A_i})\frac{\sigma_i}{\sigma_{A_i}}$

However, I definitely want to minimize the number of required transforms, but I don't know how to formulate it as an optimization problem and solve it.


Here is something in my mind:

  • when the number of transform is 1, the best solution should be my baseline solution
  • when the number of transform is the number of points in B, the best solution is to map each point in A to some point in B.
  • when the number of transform is in between of the two extremes, the alignment quality is also in between

# transforms vs alignment quality

where $SetDist$ in figure can be any distance metric between two sets, e.g., Hausdorff distance.


Here are my questions:

  1. the alignment quality monotonically increases as the number of transforms increases, what is an appropriate way of introducing my constraint that "I want this number to be as small as possible" or at least "keep this number small, e.g., << #points in B".

  2. for a given number $K$ of transforms, I still don't know how to a) partition the set $\mathbb{A}$ into $K$ subsets b) transform each partitioned subsets such that the resulting alignment quality is maximized.

NOTE:

  1. I am not looking for a perfect solution, but something simple and working in practice.
  2. You may tweak my task if you want, e.g., if you think knowing the number of GMM components of set $\mathbb{B}$ helps, please do so.

Can anyone help me?