1. A computer readable media having instructions stored thereon that, when executed by a processor, causes the processor to function as a dynamic constraint solver for solving a constraint satisfaction problem model, the instructions comprising: receiving a request for a current solving session to recreate a first solving session for the model; collecting a deferred port list comprising one or more ports in the model that need a sub-problem; creating one or more runtime constraints for the model; for each of the created runtime constraints, propagating the constraint and determining if the propagation generates a conflict; and if the propagation generates a conflict, dismissing the constraint and reverting the model to a state before the constraint was propagated.