Abstract
This chapter presents implementation details of B&BT algorithms. We consider several tools and features: data structures, memory management and, most notably, parallelization. Both shared-memory and distributed-memory environments are considered. Issues of both cases are discussed. Promising future directions are outlined, also.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsReferences
GNU Linear Programming Kit (2014). http://www.gnu.org/software/glpk/
C++ eXtended Scientific Computing library (2015). http://www.xsc.de
Intel Threading Building Blocks (2017). http://www.threadingbuildingblocks.org
Alexandrescu, A.: Modern C++ Design: Generic Programming and Design Patterns Applied. Addison-Wesley (2001)
Baboulin, M., Donfack, S., Dongarra, J., Grigori, L., Rémy, A., Tomov, S.: A class of communication-avoiding algorithms for solving general dense linear systems on CPU/GPU parallel machines. Procedia Comput. Sci. 9, 17–26 (2012)
Beck, P.D., Nehmeier, M.: Parallel interval Newton method on CUDA. In: PARA 2012 Proceedings. Lecture Notes in Computer Science, vol. 7782, pp. 454–464 (2013)
Berner, S.: Parallel methods for verified global optimization practice and theory. J. Glob. Optim. 9(1), 1–22 (1996)
Borkowski, T.: Comparison of existence tests of zeros of equations systems in a given region: tests of Miranda, Borsuk and Newton. Master’s thesis, ICCE WUT (2013). (under supervision of Bartłomiej J. Kubica). (in Polish)
CXSC-MPI: MPI extension for the use of C-XSC in parallel environments (2015). http://www2.math.uni-wuppertal.de/~xsc/xsc/cxsc_software.html#cxsc_mpi
Dąbrowski, R., Kubica, B.J.: Comparison of interval C/C++ libraries in global optimization. Prace Naukowe Politechniki Warszawskiej. Elektronika 169, 51–56 (2009)
Dąbrowski, R., Kubica, B.J.: Cache-oblivious algorithms and matrix formats for computations on interval matrices. Lecture Notes in Computer Science, vol. 7134, pp. 269–279 (2012)
Franek, P., Krčál, M.: Robust satisfiability of systems of equations. In: Proceedings of the Twenty-Fifth Annual ACM-SIAM Symposium on Discrete Algorithms, pp. 193–203. SIAM (2014)
Franek, P., Krčál, M.: Cohomotopy groups capture robust properties of zero sets (2015). arXiv preprint arXiv:1507.04310
Franek, P., Ratschan, S.: Effective topological degree computation based on interval arithmetic. Math. Comput. 84(293), 1265–1290 (2015)
Frommer, A., Hoxha, F., Lang, B.: Proving the existence of zeros using the topological degree and interval arithmetic. J. Comput. Appl. Math. 199(2), 397–402 (2007)
Gau, C.Y., Stadtherr, M.A.: Dynamic load balancing for parallel interval-Newton using message passing. Comput. Chem. Eng. 26(6), 811–825 (2002)
Herlihy, M., Shavit, N.: The Art of Multiprocessor Programming, Revised Reprint. Elsevier (2012)
Hoffler, T.: Advanced MPI: new features of MPI-3 (2016). http://htor.inf.ethz.ch/teaching/mpi_tutorials/speedup15/hoefler-advanced-mpi-speedup15.pdf
Jaulin, L., Kieffer, M., Didrit, O., Walter, É.: Applied Interval Analysis. Springer, London (2001)
Kearfott, R.B.: Rigorous Global Search: Continuous Problems. Kluwer, Dordrecht (1996)
Kolev, L.V.: Some ideas towards global optimization of improved efficiency. In: GICOLAG Workshop, Wien, Austria, pp. 4–8 (2006)
Kozikowski, G.: Implementation of an OpenCL library for automatic differentiation. Bachelor’s thesis, ICCE WUT (2011). (under supervision of Bartłomiej J. Kubica). (in Polish)
Kozikowski, G., Papamanousakis, G., Yang, J.: Potential future exposure, modelling and accelerating on GPU and FPGA. In: Proceedings of the 8th Workshop on High Performance Computational Finance, WHPCF 2015, pp. 4:1–4:8. ACM, New York, NY, USA (2015). https://doi.org/10.1145/2830556.2830560
Kreinovich, V., Bernat, A.: Parallel algorithms for interval computations: an introduction. Interval Comput. 3, 6–62 (1994)
Kubica, B.J.: Intel TBB as a tool for parallelization of an interval solver of nonlinear equations systems. Technical Report 09-02, ICCE WUT (2009)
Kubica, B.J.: Shared-memory parallelization of an interval equations systems solver—comparison of toos. Prace Naukowe Politechniki Warszawskiej. Elektronika 169, 121–128 (2009). KAEiOG 2009 (Konferencja Algorytmy Ewolucyjne i Optymalizacja Globalna) Proceedings
Kubica, B.J.: A class of problems that can be solved using interval algorithms. Computing 94, 271–280 (2012). SCAN 2010 (14th GAMM-IMACS International Symposium on Scientific Computing, Computer Arithmetic and Validated Numerics) Proceedings
Kubica, B.J.: Tuning the multithreaded interval method for solving underdetermined systems of nonlinear equations. In: PPAM 2011 (9th International Conference on Parallel Processing and Applied Mathematics) Proceedings. Lecture Notes in Computer Science, vol. 7204, pp. 467–476 (2012)
Kubica, B.J.: Presentation of a highly tuned multithreaded interval solver for underdetermined and well-determined nonlinear systems. Numer. Algorithms 70(4), 929–963 (2015). https://doi.org/10.1007/s11075-015-9980-y
Kubica, B.J.: Preliminary experiments with an interval Model-Predictive-Control solver. In: PPAM 2015 Proceedings. Lecture Notes in Computer Science, vol. 9574, pp. 464–473 (2016)
Kubica, B.J.: Parallelization of a bound-consistency enforcing procedure and its application in solving nonlinear systems. J. Parallel Distrib. Comput. 107, 57–66 (2017). https://doi.org/10.1016/j.jpdc.2017.03.009
Kubica, B.J.: Advanced interval tools for computing solutions of continuous games. Vychislennyie Tiehnologii (Computational Technologies) 23(1), 3–18 (2018)
Kubica, B.J., Woźniak, A.: An interval method for seeking the Nash equilibria of non-cooperative games. In: PPAM 2009 Proceedings. Lecture Notes in Computer Science, vol. 6068, pp. 446–455 (2010)
Kubica, B.J., Woźniak, A.: A multi-threaded interval algorithm for the Pareto-front computation in a multi-core environment. In: PARA 2008 Proceedings. Lecture Notes in Computer Science, vol. 6126/6127. Accepted for Publication (2010)
Kubica, B.J., Woźniak, A.: Optimization of the multi-threaded interval algorithm for the Pareto-set computation. J. Telecommun. Inf. Technol. 1, 70–75 (2010)
Kubica, B.J., Woźniak, A.: Interval methods for computing strong Nash equilibria of continuous games. Decis. Mak. Manuf. Serv. 9(1), 63–78 (2015). SING10 Proceedings
Loki: Loki C++ template library (2015). http://loki-lib.sourceforge.net
Lyudvin, D.Y., Shary, S.P.: Testing implementations of pps-methods for interval linear systems. Reliab. Comput. 19(2), 176–196 (2013). SCAN 2012 Proceedings
Matocha, J., Camp, T.: A taxonomy of distributed termination detection algorithms. J. Syst. Softw. 43(3), 207–221 (1998)
Moore, R.E., Kearfott, R.B., Cloud, M.J.: Introduction to Interval Analysis. SIAM, Philadelphia (2009)
MPI: Message Passing Interface (2017). http://www.mpi-forum.org
Nguyen, H.D.: Efficient implementation of interval matrix multiplication. Lecture Notes in Computer Science, vol. 7134, pp. 179–188 (2012)
Owczarek, B.: Parallel algorithms for computing eigenvalues of interval matrices. Master’s thesis, ICCE WUT (2015). (under supervision of Bartłomiej J. Kubica). (in Polish)
Skalna, I., Duda, J.: A study on vectorisation and paralellisation of the monotonicity approach. Lecture Notes in Computer Science (2016). Submitted
Szustak, Ł., Halbiniak, K., Kuczyński, Ł., Wróbel, J., Kulawik, A.: Porting and optimization of solidification application for CPU-MIC hybrid platforms. Int. J. High Perform. Comput. Appl. (2016). https://doi.org/10.1177/1094342016677740
Szustak, Ł., Rojek, K., Olas, T., Kuczynski, Ł., Halbiniak, K., Gepner, P.: Adaptation of MPDATA heterogeneous stencil computation to Intel Xeon Phi coprocessor. Sci. Program. 2015 (2015). https://doi.org/10.1155/2015/642705
Szustak, Ł., Rojek, K., Wyrzykowski, R., Gepner, P.: Toward efficient distribution of MPDATA stencil computation on Intel MIC architecture. In: Proceedings of the 1st International Workshop on High-Performance Stencil Computations, pp. 51–56 (2014)
Ueberholz, P., Willems, P., Bull, M., Lang, B.: Non-blocking load balancing for branch-and-bound-type algorithms. In: PARA 2008 Proceedings. Lecture Notes in Computer Science. Accepted for Publication (2013)
Vyukov, D.: Non-intrusive MPSC node-based queue. http://www.1024cores.net/home/lock-free-algorithms/queues/non-intrusive-mpsc-node-based-queue. (web page; Accessed 2017)
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
Copyright information
© 2019 Springer Nature Switzerland AG
About this chapter
Cite this chapter
Kubica, B.J. (2019). Parallelization of B&BT Algorithms. In: Interval Methods for Solving Nonlinear Constraint Satisfaction, Optimization and Similar Problems. Studies in Computational Intelligence, vol 805. Springer, Cham. https://doi.org/10.1007/978-3-030-13795-3_7
Download citation
DOI: https://doi.org/10.1007/978-3-030-13795-3_7
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-13794-6
Online ISBN: 978-3-030-13795-3
eBook Packages: Intelligent Technologies and RoboticsIntelligent Technologies and Robotics (R0)