Abstract
In this paper, we first present a serial Bernstein algorithm for polynomial global optimization based on the Implicit Bernstein Form (IBF) (Smith in J Glob Optim 43:445–458, 2009). The serial Bernstein algorithm based on IBF needs less computations and memory than the conventional Bernstein algorithm and its variants. To accelerate further the Bernstein algorithm based on the IBF, we next propose a parallel version for GPU computing using Compute Unified Device Architecture. With the parallel version, the exponential time-complexity of the serial algorithm reduces to linear time-complexity. We compare the performance of both the versions on a set of 12 test problems, and find that the parallel version is up to 26 times faster and takes 96% less time than the serial one. Based on these findings, we suggest the use of the parallel version of the Bernstein algorithm based on IBF in polynomial global optimization.
Similar content being viewed by others
References
Cesar Munoz AN (2013) Formalization of a representation of Bernstein polynomials and applications to global optimization. Autom Reason 51(2):151–196
Dhabe PS (2014) Parallelization of Bernstein algorithms. Ph. D. annual progress report, systems and control engineering, Indian Institute of Technology, Bombay, India
Farber R (2011) CUDA application design and development. Morgan Kaufmann, Boston
Garloff J (1993) The Bernstein algorithm. Interval Comput 2:164–168
Garloff J (2003) The Bernstein expansion and its applications. J Am Rom Acad 25:27
Harris M. Optimizing parallel reduction in CUDA. http://developer.download.nvidia.com/assets/cuda/files/reduction.pdf
Himmelblau DM, Yetes RV (eds) (1972) Applied nonlinear programming. McGraw-Hill, NewYork
Kirk DB, Mei Hwu W (2010) Programming massively parallel processors: a hands on approach. Morgan Kaufmann, Boston
Lorentz GG (1988) Bernstein polynomials, 2nd edn. Chelsea publishing Company, New York
Nataraj PSV, Arounassalame M (2007) A new subdivision algorithm for the Bernstein polynomial approach to global optimization. Int J Autom Comput 4(4):342–352
Nataraj PSV, Arounassalame M (2009) An algorithm for constrained global optimization of multivariate polynomials using the Bernstein form and John optimality conditions. Opsearch 46(2):133–152
Nataraj PSV, Arounassalame M (2011) Constrained global optimization of multivariate polynomials using Bernstein branch and prune algorithm. J Glob Optim 49(2):185–212
Nataraj PSV, Kotecha K (2002) An algorithm for global optimization using the Taylor–Bernstein form as an inclusion function. J Glob Optim 24(1):417–436
Nataraj PSV, Kotecha K (2004) Global optimization with higher order inclusion function forms Part 1: a combined Taylor–Bernstein form. J Reliab Comput 10(1):27–44
Nickolls J, Dally WJ (2010) The GPU computing era. IEEE Micro 30(2):56–69
Nickolls J, Buck I, Garland M, Skadron K (2008) Scalable programming with CUDA. ACM Queue 6(2):836–838
NVIDIA Corpn (2014) Nvidia’s Next Generation CUDA Compute Architecture: Kepler GK110/210. http://international.download.nvidia.com/pdf/kepler/NVIDIA-Kepler-GK110-GK210-Architecture-Whitepaper.pdf
NVIDIA Corpn (2017a) CUDA C Best programming guide http://docs.nvidia.com/cuda/pdf/CUDACBestPracticesGuide.pdf
NVIDIA Corpn (2017b) CUDA C programming guide. https://docs.nvidia.com/cuda/cuda-c-programming-guide/
Owens JD, Luebke D, Govindaraju N, Harris M, Krger J, Lefohn AE, Purcell TJ (2005) A survey of general-purpose computation on graphics hardware. Eurographics 2005, state of the art report, pp 21–51
Owens JD, Houston M, Luebke D, Green S, Stone JE, Phillip JC (2008) GPU computing. Proc IEEE 96(5):879–899
Patil BV, Nataraj PSV, Bhartiya S (2011) Global optimization of mixed-integer nonlinear (polynomial) programming problems: the Bernstein polynomial approach. J Comput 94:1–19
Ray S (2007) A new approach to range computation of polynomials using the Bernstein form Ph.D. thesis, systems and control engineering, Indian Institute of Technology, Bombay, India (2007)
Ray S, Nataraj PSV (2010) A new strategy for selection of subdivision point in the Bernstein approach to polynomial optimization. Reliab Comput 14(4):117–137
Salhi S, Queen NM (2004) A hybrid algorithm for detecting global and local minima when optimizing functions with many minima. Eur J Oper Res 155:51–67
Smith AP (2009) Fast construction of constant bound functions for sparse polynomials. J Glob Optim 43:445–458
Verschelde J (2001) The PHC pack, the database of polynomial systems. Tech. rep., University of Illinois, Mathematics Department, Chicago, USA
Vrahatis MN, Sotiropoulos DG, Triantafyllou EC (1997) Global optimization for imprecise problems. In: Boomze IM, Csendes T, Horst R, Pardalos PM (eds) Developments in global optimization. Kluwer, Dordrecht, pp 37–54
Zettler M, Garloff J (1998) Robustness analysis of polynomials with polynomial parameter dependency using Bernstein expansion. IEEE Trans Autom Control 43(3):425–431
Author information
Authors and Affiliations
Corresponding author
Appendix A
Appendix A
In the following, we list the polynomials p and the initial domains x, the abbreviated and full names, and the dimensionality of the problems.
-
1.
Reim5: The 5-dimensional system of Reimer, l = 5 (Verschelde 2001)
$$\begin{aligned} & p(x) = - 1 + 2x_{1}^{6} - 2x_{2}^{6} + 2x_{3}^{6} - 2x_{4}^{6} + 2x_{5}^{6} \\ & {\mathbf{x}}_{1} = {\mathbf{x}}_{2} = {\mathbf{x}}_{3} = {\mathbf{x}}_{4} = {\mathbf{x}}_{5} = \left[ { - 1, \, 1} \right] \\ \end{aligned}$$ -
2.
Zakharov 5: The 5-dimensional Zakharov function, l = 5 (Salhi and Queen 2004)
$$\begin{aligned} & p(x) = \left( {\sum\limits_{i = 1}^{l} {x_{i}^{2} } } \right) + \left( {\sum\limits_{i = 1}^{l} {0.5*i*x_{i} } } \right)^{2} + \left( {\sum\limits_{i = 1}^{l} {0.5*i*x_{i} } } \right)^{4} \\ & {\mathbf{x}}_{1} = {\mathbf{x}}_{2} = \cdots = {\mathbf{x}}_{5} = [ - 5, \, 10] \\ \end{aligned}$$ -
3.
Reim 6: The 6-dimensioanl system of Reimer, l = 6 (Verschelde 2001)
$$\begin{aligned} p(x) = - 1 + 2x_{1}^{7} - 2x_{2}^{7} + 2x_{3}^{7} - 2x_{4}^{7} + 2x_{5}^{7} - 2x_{6}^{7} \\ & {\mathbf{x}}_{1} = {\mathbf{x}}_{2} = \cdots = {\mathbf{x}}_{6} = [ - 5, \, 5] \\ \end{aligned}$$ -
4.
Kear 6: The 6-dimensional extended Kearfott function l = 6 (Vrahatis et al. 1997)
$$\begin{aligned} & p(x) = \left[ {\sum\limits_{i = 1}^{(l - 1)} {} (x_{i}^{2} - x_{i + 1} )^{2} } \right] + (x_{l}^{2} - x_{1} )^{2} \\ & {\mathbf{x}}_{1} = {\mathbf{x}}_{2} = \cdots = {\mathbf{x}}_{6} = [ - 2, \, 2] \\ \end{aligned}$$ -
5.
PowerSum 6: A power sum function l = 6 (Salhi and Queen 2004)
$$\begin{aligned} & p(x) = \sum\limits_{i = 1}^{L} {x_{i}^{g} } ,\quad {\text{where}},\;g = 8 \\ & {\mathbf{x}}_{1} = {\mathbf{x}}_{2} = \cdots = {\mathbf{x}}_{6} = [ - 5, \, 5] \\ \end{aligned}$$ -
6.
Mag 7: A problem of magnetism in physics, l = 7 (Verschelde 2001)
$$\begin{aligned} & p(x) = x_{1}^{2} + 2x_{2}^{2} + 2x_{2}^{3} + 2x_{4}^{2} + 2x_{5}^{2} + 2x_{6}^{2} + 2x_{7}^{2} - x_{1} \\ & {\mathbf{x}}_{1} = {\mathbf{x}}_{2} = \cdots = {\mathbf{x}}_{7} = [ - 5, \, 5] \\ \end{aligned}$$ -
7.
Heart 8: Heart-dipole problem, l = 8 (Verschelde 2001)
$$\begin{aligned} & p(x) = - x_{1} x_{6}^{3} + 3x_{1} x_{6} x_{7}^{2} - x_{3} x_{7}^{2} + 3x_{3} x_{7} x_{6}^{2} - x_{2} x_{5}^{3} + 3x_{2} x_{5} x_{8}^{2} - x_{4} x_{8}^{3} + 3x_{4} x_{8} x_{5}^{2} - 0.9563453 \\ & {\mathbf{x}}_{1} = \, \left[ { - 0.1, \, 0.4} \right],\,{\mathbf{x}}_{2} = \left[ {0.4, \, 1} \right],\,{\mathbf{x}}_{3} = \left[ { - 0.7, \, 0.4} \right],\,{\mathbf{x}}_{4} = \left[ { - 0.7, \, 0.4} \right],\,{\mathbf{x}}_{5} = \left[ {0.1, \, 0.2} \right],\,{\mathbf{x}}_{6} = \left[ {0.1, \, 0.2} \right], \\ & {\mathbf{x}}_{7} = \, \left[ { - 0.3, \, 1.1} \right],{\mathbf{x}}_{8} = \left[ { - 1.1, \, - 0.3} \right] \\ \end{aligned}$$ -
8.
Holzmann 8: The 8-dimensional Holzmann function, l = 8 (Himmelblau and Yetes 1972)
$$p(x) = \sum\limits_{i = 1}^{l} {i*x_{i}^{4} } ,\;{\mathbf{x}}_{1} = {\mathbf{x}}_{2} = \cdots = {\mathbf{x}}_{8} = [ - 10,\,10]$$ -
9.
Quad 10: A 10 dimensional quadratic function, l = 10 (Vrahatis et al. 1997)
$$\begin{aligned} & p(x) = x_{1}^{2} + x_{2}^{2} + \cdots + x_{10}^{2} - r,\;{\text{for}}\;r = - 2 \\ & {\mathbf{x}}_{1} = {\mathbf{x}}_{2} = \cdots = {\mathbf{x}}_{10} = [ - 1,\,1] \\ \end{aligned}$$ -
10.
Rosen-6: The 6-dimensional generalized Rosenbrock’s function, l = 6 (Salhi and Queen 2004)
$$\begin{aligned} & p(x) = \sum\limits_{i = 1}^{(l - 1)} {} \left( {100(x_{i}^{2} - x_{i + 1} )^{2} + (1 - x_{i} )^{2} } \right) \\ & {\mathbf{x}}_{1} = {\mathbf{x}}_{2} = \cdots {\mathbf{x}}_{6} = [ - 2,\;2] \\ \end{aligned}$$ -
11.
Kear 10: The 10-dimensional extended Kearfott function l = 10 (Vrahatis et al. 1997)
Same as problem 4, but with l = 10
-
12.
Quad 13: A 13 dimensional quadratic function, l = 13 (Vrahatis et al. 1997)
Same as problem 9, but with l = 13.
Rights and permissions
About this article
Cite this article
Dhabe, P.S., Nataraj, P.S.V. A parallel Bernstein algorithm for global optimization based on the implicit Bernstein form. Int J Syst Assur Eng Manag 8 (Suppl 2), 1654–1671 (2017). https://doi.org/10.1007/s13198-017-0639-z
Received:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s13198-017-0639-z