Publication: On efficient Hessian computation using the edge pushing algorithm in Julia
Introduction
Applications
Tools
Research Groups
Workshops
Publications
   List Publications
   Advanced Search
   Info
   Add Publications
My Account
About
Impress

On efficient Hessian computation using the edge pushing algorithm in Julia

- Article in a journal -
 

Author(s)
C. G. Petra , F. Qiang , M. Lubin , J. Huchette

Published in
Special issue of Optimization Methods & Software: Advances in Algorithmic Differentiation Optimization Methods & Software

Editor(s)
Bruce Christianson, Shaun A. Forth, Andreas Griewank

Year
2018

Publisher
Taylor & Francis

Abstract
Evaluating the Hessian matrix of second-order derivatives at a sequence of points can be costly when applying second-order methods for nonlinear optimization. In this work, we discuss our experiences implementing the recently proposed Edge Pushing (EP) method in Julia as an experimental replacement for the current colouring-based methods used by JuMP, an open-source algebraic modelling language. We propose an alternative data structure for sparse Hessians to avoid the use of hash tables and analyse the space and time complexity of EP method. In our benchmarks, we find that EP is very competitive in terms of both preprocessing time and Hessian evaluation time. We identify cases where EP closes the performance gap between JuMP's previous implementation and the implementation in AMPL, a commercial software package with similar functionality.

Cross-References
Christianson2018Sio

BibTeX
@ARTICLE{
         Petra2018OeH,
       crossref = "Christianson2018Sio",
       author = "C. G. Petra and F. Qiang and M. Lubin and J. Huchette",
       title = "On efficient {H}essian computation using the edge pushing algorithm in {J}ulia",
       journal = "Optimization Methods \& Software",
       volume = "33",
       number = "4--6",
       pages = "1010--1029",
       year = "2018",
       publisher = "Taylor \& Francis",
       doi = "10.1080/10556788.2018.1480625",
       url = "https://doi.org/10.1080/10556788.2018.1480625",
       eprint = "https://doi.org/10.1080/10556788.2018.1480625",
       abstract = "Evaluating the Hessian matrix of second-order derivatives at a sequence of points
         can be costly when applying second-order methods for nonlinear optimization. In this work, we
         discuss our experiences implementing the recently proposed Edge Pushing (EP) method in Julia as an
         experimental replacement for the current colouring-based methods used by JuMP, an open-source
         algebraic modelling language. We propose an alternative data structure for sparse Hessians to avoid
         the use of hash tables and analyse the space and time complexity of EP method. In our benchmarks, we
         find that EP is very competitive in terms of both preprocessing time and Hessian evaluation time. We
         identify cases where EP closes the performance gap between JuMP's previous implementation and
         the implementation in AMPL, a commercial software package with similar functionality.",
       booktitle = "Special issue of Optimization Methods \& Software: Advances in
         Algorithmic Differentiation",
       editor = "Bruce Christianson and Shaun A. Forth and Andreas Griewank"
}


back
  

Contact:
autodiff.org
Username:
Password:
(lost password)