This repository contains the code used for reproducing the experimental results in our manuscript submitted to IEEE Transactions on Information Theory.
Required libraries: NumPy, Matplotlib
Clone the repository:
git clone https://github.com/dassein/cycloid_em_tit.git
cd cycloid_em_tit/codeDetailed instructions on how to reproduce the experiments from the paper.
To validate the Cycloid trajectories of EM iterations when
python trajectory_dim2.py
python trajectory_dim3.py
python trajectory_dimhigh.pyThe results are shown in the figure below.
To show the super-linear convergence under high SNR regimes, use the following command:
python superlinear.pyThe convergence curves are shown below. The slopes of lines at different SNR values consistently hover around 2 when the sub-optimality angle is large enough.

To demonstrate the linear correlation between the error of mixing weights and the angle, use the following command:
python mixingweight.pyThe experimental results are depicted in the following figure.

To show that the EM update for regression parameters is independent of the true mixing weights, and that the final error in mixing weights depends on the error in regression parameters and true mixing weights, use the following command:
python plot_iters.pyThe experimental results align with our theoretical analysis, see the figure below.



