fix precision bug in LinearAssignment