A Community-Division Based Algorithm for Finding Relations Among Linear Constraints
Linear constraints are widely used in the modeling of many practical problems, and the solving technologies have important applications in satisfiability modulo theories, program analysis and verification. The efficiency of solving procedure could be improved by taking advantages of the relations among constraints. Traditional methods find relations through search, which do not take advantage of the structural characteristics and cost too much time. In this paper, a heuristic based on community division is proposed for finding relations among linear constraints. Firstly it builds a relation graph, which maps each constraint to a node. Then a division tool is employed to divide the nodes into several communities. At last, it tries to find relations among constraints in the same community through search. Experimental results show that the algorithm can effectively process large set of constraints, reduce time cost and find relations with higher quality.
KeywordsLinear constraint Relation finding Community division Constraint programming
This work is supported by National Natural Science Foundation of China (Grant No. 61672505), the National Key Basic Research (973) Program of China (Grant No. 2014CB340701), and Key Research Program of Frontier Sciences, CAS (Grant No. QYZDJ-SSW-JSC036). Feifei Ma is also supported by the Youth Innovation Promotion Association, CAS.
- 3.Dantzig, G.: Linear Programming and Extensions. Princeton University Press, Princeton (2016)Google Scholar
- 4.Estiningsih, Y., Farikhin, Tjahjana, R.: A comparison of heuristic method and Llewellyn’s rules for identification of redundant constraints. J. Phys. Conf. Ser. 983, 012083 (2018). IOP PublishingGoogle Scholar
- 5.Ge, C., Ma, F., Zhang, P., Zhang, J.: Computing and estimating the volume of the solution space of SMT (LA) constraints. Theor. Comput. Sci. (2016, in press)Google Scholar
- 8.Huang, Z., Zhang, H., Zhang, J.: Improving first-order model searching by propositional reasoning and lemma learning. In: SAT 2004 - The Seventh International Conference on Theory and Applications of Satisfiability Testing, 10–13 May 2004, Vancouver, BC, Canada, Online Proceedings (2004)Google Scholar
- 13.Rardin, R.L.: Optimization in Operations Research. Prentice Hall, Upper Saddle River (2016)Google Scholar
- 14.Rossi, F., van Beek, P., Walsh, T. (eds.): Handbook of Constraint Programming, Foundations of Artificial Intelligence, vol. 2. Elsevier, New York City (2006)Google Scholar
- 16.Silva, J.P.M., Sakallah, K.A.: Conflict analysis in search algorithms for satisfiability. In: Eigth International Conference on Tools with Artificial Intelligence, ICTAI 1996, Toulouse, France, 16–19 November 1996, pp. 467–469. IEEE Computer Society (1996)Google Scholar
- 18.Wang, J., Wang, X., Ma, Y., Wang, J.: Hierarchical combination design method of test cases based on conditional constraints. In: 2017 IEEE International Conference on Software Quality, Reliability and Security Companion, QRS-C 2017, Prague, Czech Republic, 25–29 July 2017, pp. 636–637. IEEE (2017)Google Scholar
- 21.Zhang, J.: Specification analysis and test data generation by solving boolean combinations of numeric constraints. In: 1st Asia-Pacific Conference on Quality Software (APAQS 2000), 30–31 October 2000, Hong Kong, China, Proceedings, pp. 267–274. IEEE Computer Society (2000)Google Scholar