skip to main content
research-article

Algorithm 897: VTDIRECT95: Serial and parallel codes for the global optimization algorithm direct

Published: 23 July 2009 Publication History

Abstract

VTDIRECT95 is a Fortran 95 implementation of D. R. Jones' deterministic global optimization algorithm called DIRECT, which is widely used in multidisciplinary engineering design, biological science, and physical science applications. The package includes both a serial code and a data-distributed massively parallel code for different problem scales and optimization (exploration vs. exploitation) goals. Dynamic data structures are used to organize local data, handle unpredictable memory requirements, reduce the memory usage, and share the data across multiple processors. The parallel code employs a multilevel functional and data parallelism to boost concurrency and mitigate the data dependency, thus improving the load balancing and scalability. In addition, checkpointing features are integrated into both versions to provide fault tolerance and hot restarts. Important algorithm modifications and design considerations are discussed regarding data structures, parallel schemes, error handling, and portability. Using several benchmark functions and real-world applications, the software is evaluated on different systems in terms of optimization effectiveness, data structure efficiency, parallel performance, and checkpointing overhead. The package organization and usage are also described in detail.

Supplementary Material

Zip (897.zip)
Software for VTDIRECT95: Serial and parallel codes for the global optimization algorithm direct

References

[1]
Baker, C. A., Watson, L. T., Grossman, B., Haftka, R. T., and Mason, W. H. 2000. Parallel global aircraft configuration design space exploration. In Proceedings of the High Performance Computing Symposium, A. Tentner, Ed. Society for Computer Simulation International, San Diego, 101--106.
[2]
Bartholomew-Biggs, M. C., Parkhurst, S. C., and Wilson, S. P. 2003. Global optimization approaches to an aircraft routing problem. European J. Operat. Res. 146, 2, 417--431.
[3]
Batchu, R., Dandass, Y. S., Skjellum, A., and Beddhu, M. 2004. MPI/FT: A model-based approach to low-overhead fault tolerant message-passing middleware. Clust. Comput. 7, 4, 303--315.
[4]
Bouteiller, A., Herault, T., Krawezik, G., Lemarinier, P., and Cappello, F. 2006. MPICH-V project: A multiprotocol automatic fault-tolerant MPI. Int. J. High-Perform. Comput. Appl. 20, 3, 319--333.
[5]
Carter, R. G., Gablonsky, J. M., Patrick, A., Kelly, C. T., and Eslinger, O. J. 2001. Algorithms for noisy problems in gas transmission pipeline optimization. Optimiz. Eng. 2, 2, 139--157.
[6]
Fagg, G. E., Bukovsky, A., and Dongarra, J. J. 2001. HARNESS and fault tolerant MPI. Parall. Comput. 27, 11, 1479--1495.
[7]
Finkel, D. E. and Kelly, C. T. 2004. An adaptive restart implementation of DIRECT. Tech. Rep. CRCS-TR04-30. Center for Research in Scientific Computation, North Carolina State University, Raleigh.
[8]
Gablonsky, J. M. 2001. Modifications of the DIRECT algorithm. Ph.D. dissertation, Department of Mathematics, North Carolina State University, Raleigh.
[9]
Gropp, W. and Lusk, E. 2004. Fault tolerance in message passing interface programs. Int. J. High-Perform. Comput. Appl. 18, 3, 363--272.
[10]
He, J., Verstak, A., Sosonkina, M., and Watson, L. T. 2007a. Performance modeling and analysis of a massively parallel DIRECT: Part 2. Tech. rep. TR-07-02. Department of Computer Science, Virginia Polytechnic Institute&State University, Blacksburg.
[11]
He, J., Verstak, A., Watson, L. T., and Sosonkina, M. 2007b. Performance modeling and analysis of a massively parallel DIRECT: Part 1. Tech. rep. TR-07-01. Department of Computer Science, Virginia Polytechnic Institute&State University, Blacksburg.
[12]
He, J., Verstak, A., Watson, L. T., and Sosonkina, M. 2008. Design and implementation of a massively parallel version of DIRECT. Comput. Optimiz. Appl. 40, 2, 217--245.
[13]
He, J., Verstak, A., Watson, L. T., Stinson, C. A., Ramakrishnan, N., Shaffer, C. A., Rappaport, T. S., Anderson, C. R., Bae, K., Jiang, J., and Tranter, W. H. 2004. Globally optimal transmitter placement for indoor wireless communication systems. IEEE Trans. Wireless Commun. 3, 6, 1906--1911.
[14]
He, J., Watson, L. T., Ramakrishnan, N., Shaffer, C. A., Verstak, A., Jiang, J., Bae, K., and Tranter, W. H. 2002. Dynamic data structures for a direct search algorithm. Comput. Optimiz. Appl. 23, 1, 5--25.
[15]
Horst, R., Pardalos, P. M., and Thoai, N. V. 2000. Introduction to Global Optimization. Kluwer Academic Publishers, Boston.
[16]
Horst, R. and Tuy, H. 1996. Global Optimization: Deterministic Approaches. Springer Verlag, Berlin, Germany.
[17]
Jones, D. R., Pertunen, C. D., and Stuckman, B. E. 1993. Lipschitzian optimization without the Lipschitz constant. J. Optimiz. Theor. Appl. 79, 1, 157--181.
[18]
Ljungberg, K., Holmgren, S., and Carlborg, Ö. 2004. Simultaneous search for multiple QTL using the global optimization algorithm DIRECT. Bioinformatics 20, 12, 1887--1895.
[19]
Louca, S., Neophytou, N., Lachanas, A., and Evripidou, P. 2000. MPI-FT: Portable fault tolerance scheme for MPI. Parall. Proc. Lett. 10, 4, 371--382.
[20]
Meza, J. C., Judson, R. S., Faulkner, T. R., and Treasurywala, A. M. 1996. A comparison of a direct search method and a genetic algorithm for conformational searching. J. Comput. Chem. 17, 9, 1142--1151.
[21]
Panning, T. D., Watson, L. T., Allen, N. A., Chen, K. C., Shaffer, C. A., and Tyson, J. J. 2008. Deterministic parallel global parameter estimation for a model of the budding yeast cell cycle. J. Global Optimiz. 40, 4, 719--738.
[22]
Pinter, J. D. 1996. Global Optimization In Action. Kluwer Academic Publishers, Boston.
[23]
Plank, J. S. 1997. An overview of checkpointing in uniprocessor and distributed systems, focusing on implementation and performance. Tech. rep. UT-CS-97-372. Department of Computer Science, University of Knoxville.
[24]
Quinn, M. J. 2003. Parallel Programming in C with MPI and OpenMP. McGraw-Hill Education (ISE Editions), New York.
[25]
Watson, L. T. and Baker, C. A. 2001. A fully-distributed parallel global search algorithm. Eng. Comput. 18, 1/2, 155--169.
[26]
Watson, L. T., Sosonkina, M., Melville, R. C., Morgan, A. P., and Walker, H. F. 1997. Algorithm 777: HOMPACK90: A suite of FORTRAN 90 codes for globally convergent homotopy algorithms. ACM Trans. Math. Softw. 23, 4, 514--549.
[27]
Zhu, H. and Bogy, D. B. 2002. DIRECT algorithm and its application to slider air-bearing surface optimization. IEEE Trans. Magnet. 38, 5, 2168--2170.
[28]
Zwolak, J. W., Tyson, J. J., and Watson, L. T. 2005. Globally optimised parameters for a model of mitotic control in frog egg extracts. IEE Syst. Biol. 152, 2, 81--92.

Cited By

View all
  • (2024)Review and Computational Study on Practicality of Derivative-Free DIRECT-Type MethodsInformatica10.15388/24-INFOR548(1-34)Online publication date: 26-Mar-2024
  • (2024)An empirical study of various candidate selection and partitioning techniques in the DIRECT frameworkJournal of Global Optimization10.1007/s10898-022-01185-588:3(723-753)Online publication date: 1-Mar-2024
  • (2023)Applications and SoftwareDerivative-free DIRECT-type Global Optimization10.1007/978-3-031-46537-6_3(69-122)Online publication date: 21-Sep-2023
  • Show More Cited By

Recommendations

Reviews

Charles Raymond Crawford

With faster processors and more software packages to implement parallel algorithms, researchers are solving larger optimization problems, involving many parameters and very complex merit functions. Moreover, software packages such as the one presented here can usually find globally optimal solutions for unconstrained problems. This package is an implementation with modifications of the DIRECT algorithm devised by D.R. Jones. The DIRECT algorithm begins at the center of the search domain that must be the product of intervals. Then, the merit function is sampled along part of the coordinate axis, and the domain is subdivided based on these samples. While other Fortran implementations of DIRECT have been published, this one uses features of Fortran 95, such as abstract data types and dynamic storage allocation. Both a serial and a parallel implementation are included in the package. The latter one uses calls to a standard message passing interface (MPI) library. One challenge in implementing an algorithm such as DIRECT is designing the data structure to store the samples and subdomains, and the procedures to maintain the data. The structures and procedures must also be robust in the face of a complex merit function, a large number of parameters, and memory limitations. He, Watson, and Sosonkina discuss the design of their data structures and report the results of tests of the efficiency of those structures. This discussion, as well as the actual Fortran 95 code, should be of interest to anyone who develops Fortran code for optimization. Online Computing Reviews Service

Access critical reviews of Computing literature here

Become a reviewer for Computing Reviews.

Comments

Information & Contributors

Information

Published In

cover image ACM Transactions on Mathematical Software
ACM Transactions on Mathematical Software  Volume 36, Issue 3
July 2009
122 pages
ISSN:0098-3500
EISSN:1557-7295
DOI:10.1145/1527286
Issue’s Table of Contents
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 23 July 2009
Accepted: 01 October 2008
Revised: 01 June 2008
Received: 01 October 2007
Published in TOMS Volume 36, Issue 3

Permissions

Request permissions for this article.

Check for updates

Badges

Author Tags

  1. DIRECT
  2. checkpointing
  3. data structures
  4. global optimization
  5. parallel schemes

Qualifiers

  • Research-article
  • Research
  • Refereed

Funding Sources

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)8
  • Downloads (Last 6 weeks)3
Reflects downloads up to 06 Jan 2025

Other Metrics

Citations

Cited By

View all
  • (2024)Review and Computational Study on Practicality of Derivative-Free DIRECT-Type MethodsInformatica10.15388/24-INFOR548(1-34)Online publication date: 26-Mar-2024
  • (2024)An empirical study of various candidate selection and partitioning techniques in the DIRECT frameworkJournal of Global Optimization10.1007/s10898-022-01185-588:3(723-753)Online publication date: 1-Mar-2024
  • (2023)Applications and SoftwareDerivative-free DIRECT-type Global Optimization10.1007/978-3-031-46537-6_3(69-122)Online publication date: 21-Sep-2023
  • (2022)Modeling the temporal dynamics of master regulators and CtrA proteolysis in Caulobacter crescentus cell cyclePLOS Computational Biology10.1371/journal.pcbi.100984718:1(e1009847)Online publication date: 28-Jan-2022
  • (2022)DIRECTGO: A New DIRECT-Type MATLAB Toolbox for Derivative-Free Global OptimizationACM Transactions on Mathematical Software10.1145/355975548:4(1-46)Online publication date: 19-Dec-2022
  • (2022)Algorithm 1028: VTMOP: Solver for Blackbox Multiobjective Optimization ProblemsACM Transactions on Mathematical Software10.1145/352925848:3(1-34)Online publication date: 10-Sep-2022
  • (2021)Prediction of high-performance computing input/output variability and its application to optimization for system configurationsQuality Engineering10.1080/08982112.2020.1866203(1-17)Online publication date: 18-Feb-2021
  • (2021)Escaping local minima with local derivative-free methods: a numerical investigationOptimization10.1080/02331934.2021.188301571:8(2343-2373)Online publication date: 19-Feb-2021
  • (2020)Multiobjective optimization of the variability of the high-performance linpack solverProceedings of the Winter Simulation Conference10.5555/3466184.3466538(3081-3092)Online publication date: 14-Dec-2020
  • (2020)Robustness of multidimensional optimization outcomesProceedings of the 2020 Spring Simulation Conference10.5555/3408207.3408248(1-12)Online publication date: 19-May-2020
  • Show More Cited By

View Options

Login options

Full Access

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media