Design space exploration (DSE) aims at searching through various models representing different design candidates to support activities like configuration design of critical systems or automated maintenance of IT systems. In model-driven engineering, DSE is applied to find instance models that are (i) reachable from an initial model with a sequence of transformation rules and (ii) satisfy a set of structural and numerical constraints. Since exhaustive exploration of the design space is infeasible for large models, the traversal is often guided by hints, derived by system analysis, to prioritize the next states to traverse (selection criteria) and to avoid searching unpromising states (cut-off criteria). In this paper, we define an exploration approach where selection and cut-off criteria are defined using dependency analysis and algebraic abstraction of transformation rules. Additionally, we apply different state encoding techniques to identify recurring states and reduce the number of visited states. Finally, we illustrate our approach on a cloud infrastructure configuration problem and provide detailed evaluation on both synthetic and real applications. This evaluation includes (i) the comparison of several exploration techniques, (ii) performance measurements on multiple state encoding techniques and (iii) comparing two implementation architectures of our design space exploration framework.