Distributed solving through model splitting