decision algorithms