Details

Type: Story

Status: Done

Resolution: Done

Fix Version/s: None

Component/s: meas_deblender

Labels:None

Story Points:4

Epic Link:

Sprint:DRP S175

Team:Data Release Production
Description
The current deblender uses an alternating least squares algorithm to solve for the SED and Intensity matrices that model each source. The problem with this algorithm is that it fixes the intensity, solves for the SED using SDMM, fixes the SED, solves for intensity using SDMM, etc. until a solution converges (or a maximum number of iterations is reached), meaning that the correlation between the terms is ignored. So while each procedure in isolation is guaranteed to converge, the alternating solution is not, and in some cases does not. The good news is that even a nonconvergent solution usually appears to be a good fit, however it takes longer for the algorithm to run.
Boyd 2011 gives an algorithm to solve the NMF problem using ADMM with no constraints, which is an easier system to solve than the current deblender. However, Peter Melchior and I believe that we can adapt the algorithm to work with our current multiple linear constraint formalism (SDMM) to both guarantee convergence and assure faster convergence.
Because this is a new algorithm, and likely to be the final major algorithmic change, we have decided to implement this procedure before profiling the code and testing the constraints, as optimal values might change slightly with the new algorithm.
The algorithm has been implement, which is the main issue addressed in this ticket. We have no proof that the algorithm converges as of now, but that will be the work of a new ticket:
DM10138. This Jupyter notebook shows the same field run using the ADMM, SDMM, and GLMM algorithms, and shows that the SED matrix converges to nearly the exact same value in both the SDMM and ADMM algorithms.