updates to assignment algorithms