Abstract
We take inspiration from a problem from the healthcare domain, where patients with several chronic conditions follow different guidelines designed for the individual conditions, and where the aim is to find the best treatment plan for a patient that avoids adverse drug reactions, respects patient’s preferences and prioritises drug efficacy. Each chronic condition guideline can be abstractly described by a directed graph, where each node indicates a treatment step (e.g., a choice in medications or resources) and has a certain duration. The search for the best treatment path is seen as a combinatorial optimisation problem and we show how to select a path across the graphs constrained by a notion of resource compatibility. This notion takes into account interactions between any finite number of resources, and makes it possible to express non-monotonic interactions. Our formalisation also introduces a discrete temporal metric, so as to consider only simultaneous nodes in the optimisation process. We express the formal problem as an SMT problem and provide a correctness proof of the SMT code by exploiting the interplay between SMT solvers and the proof assistant Isabelle/HOL. The problem we consider combines aspects of optimal graph execution and resource allocation, showing how an SMT solver can be an alternative to other approaches which are well-researched in the corresponding domains.
This research is supported by MRC grant MR/S003819/1 and Health Data Research UK, an initiative funded by UK Research and Innovation, Department of Health and Social Care (England) and the devolved administrations, and leading medical research charities.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
Avriel, M., Diewert, W.E., Schaible, S., Zang, I.: Generalized Concavity, vol. 63. SIAM, Philadelphia (2010)
Bang-Jensen, J., Gutin, G.Z.: Digraphs: Theory, Algorithms and Applications. Springer, Berlin (2007)
Barrett, C., Stump, A., Tinelli, C.: The SMT-LIB standard: version 2.0. In: Gupta, A., Kroening, D. (eds.) Proceedings of the 8th International Workshop on Satisfiability Modulo Theories, Edinburgh, UK, vol. 13, p. 14 (2010)
Bjørner, N., Phan, A.-D., Fleckenstein, L.: vz - an optimizing SMT solver. In: Baier, C., Tinelli, C. (eds.) TACAS 2015. LNCS, vol. 9035, pp. 194–199. Springer, Heidelberg (2015). https://doi.org/10.1007/978-3-662-46681-0_14
Bowles, J., Caminati, M.B.: Correct composition of dephased behavioural models. In: Proença, J., Lumpe, M. (eds.) FACS 2017. LNCS, vol. 10487, pp. 233–250. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-68034-7_14
Bowles, J.K.F., Caminati, M.B.: A flexible approach for finding optimal paths with minimal conflicts. In: Duan, Z., Ong, L. (eds.) ICFEM 2017. LNCS, vol. 10610, pp. 209–225. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-68690-5_13
Bowles, J.K.F., Caminati, M.B.: Balancing prescriptions with constraint solvers. In: Liò, P., Zuliani, P. (eds.) Automated Reasoning for Systems Biology and Medicine. CB, vol. 30, pp. 243–267. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-17297-8_9
Burer, S., Letchford, A.N.: Non-convex mixed-integer nonlinear programming: a survey. Surv. Oper. Res. Manag. Sci. 17(2), 97–106 (2012)
Chartrand, G., Lesniak, L., Zhang, P.: Graphs & Digraphs. Chapman and Hall/CRC, Boca Raton (2010)
Dershowitz, N., Nadel, A.: Is bit-vector reasoning as hard as nexptime in practice. In: 13th International Workshop on Satisfiability Modulo Theories. Citeseer (2015)
Erez, A., Nadel, A.: Finding bounded path in graph using SMT for automatic clock routing. In: Kroening, D., Păsăreanu, C.S. (eds.) CAV 2015. LNCS, vol. 9207, pp. 20–36. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-21668-3_2
Falke, S., Merz, F., Sinz, C.: LMBC: improved bounded model checking of C programs using. In: Piterman, N., Smolka, S.A. (eds.) TACAS 2013. LNCS, vol. 7795, pp. 623–626. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-36742-7_48
Franzén, A., Cimatti, A., Nadel, A., Sebastiani, R., Shalev, J.: Applying SMT in symbolic execution of microcode. In: Proceedings of the 2010 Conference on Formal Methods in Computer-Aided Design, pp. 121–128. FMCAD Inc. (2010)
Gabow, H.N., Maheshwari, S.N., Osterweil, L.J.: On two problems in the generation of program test paths. IEEE Trans. Softw. Eng. 3, 227–231 (1976)
Government, S.: Polypharmacy Guidance (2nd edn.). Scottish Government Model of Care Polypharmacy Working Group, March 2015
Hemmecke, R., Köppe, M., Lee, J., Weismantel, R.: Nonlinear integer programming. In: Jünger, M., et al. (eds.) 50 Years of Integer Programming 1958–2008, pp. 561–618. Springer, Berlin (2010). https://doi.org/10.1007/978-3-540-68279-0_15
Hughes, L., McMurdo, M.E.T., Guthrie, B.: Guidelines for people not for diseases: the challenges of applying UK clinical guidelines to people with multimorbidity. Age Ageing 42, 62–69 (2013)
Kovásznai, G., Fröhlich, A., Biere, A.: On the complexity of fixed-size bit-vector logics with binary encoded bit-width. In: SMT@ IJCAR, pp. 44–56 (2012)
Lombardi, M., Milano, M., Benini, L.: Robust scheduling of task graphs under execution time uncertainty. IEEE Trans. Comput. 62(1), 98–111 (2013)
de Moura, L., Bjørner, N.: Z3: an efficient SMT solver. In: Ramakrishnan, C.R., Rehof, J. (eds.) TACAS 2008. LNCS, vol. 4963, pp. 337–340. Springer, Heidelberg (2008). https://doi.org/10.1007/978-3-540-78800-3_24
Nipkow, T., Paulson, L.C., Wenzel, M.: Isabelle/HOL: A Proof Assistant for Higher-order Logic. Springer, London (2002)
Rossi, F., Van Beek, P., Walsh, T.: Handbook of Constraint Programming. Elsevier, Amsterdam (2006)
Wille, R., Große, D., Haedicke, F., Drechsler, R.: SMT-based stimuli generation in the SystemC verification library. In: 2009 Forum on Specification & Design Languages FDL 2009, pp. 1–6. IEEE (2009)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2019 Springer Nature Switzerland AG
About this paper
Cite this paper
Bowles, J., Caminati, M.B. (2019). An Integrated Approach to a Combinatorial Optimisation Problem. In: Ahrendt, W., Tapia Tarifa, S. (eds) Integrated Formal Methods. IFM 2019. Lecture Notes in Computer Science(), vol 11918. Springer, Cham. https://doi.org/10.1007/978-3-030-34968-4_16
Download citation
DOI: https://doi.org/10.1007/978-3-030-34968-4_16
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-34967-7
Online ISBN: 978-3-030-34968-4
eBook Packages: Computer ScienceComputer Science (R0)