directly get the whole solution in find_sub_path + some simplification.
make multi ends even if non solution is found.
actually use multiprocess approach, which gives rather mixed results.