English

Some notes on applying computational divided differencing in optimization

Optimization and Control 2013-07-17 v1 Numerical Analysis

Abstract

We consider the problem of accurate computation of the finite difference f(\x+\s)f(\x)f(\x+\s)-f(\x) when \s\Vert\s\Vert is very small. Direct evaluation of this difference in floating point arithmetic succumbs to cancellation error and yields 0 when \s\s is sufficiently small. Nonetheless, accurate computation of this finite difference is required by many optimization algorithms for a "sufficient decrease" test. Reps and Rall proposed a programmatic transformation called "computational divided differencing" reminiscent of automatic differentiation to compute these differences with high accuracy. The running time to compute the difference is a small constant multiple of the running time to compute ff. Unlike automatic differentiation, however, the technique is not fully general because of a difficulty with branching code (i.e., `if' statements). We make several remarks about the application of computational divided differencing to optimization. One point is that the technique can be used effectively as a stagnation test.

Keywords

Cite

@article{arxiv.1307.4097,
  title  = {Some notes on applying computational divided differencing in optimization},
  author = {Stephen Vavasis},
  journal= {arXiv preprint arXiv:1307.4097},
  year   = {2013}
}
R2 v1 2026-06-22T00:51:54.399Z