DSMH algorithm