Inappropriate use of L-BFGS, Illustrated on frame field design

08/12/2015 ∙ by Nicolas Ray, et al. ∙ 0

L-BFGS is a hill climbing method that is guarantied to converge only for convex problems. In computer graphics, it is often used as a black box solver for a more general class of non linear problems, including problems having many local minima. Some works obtain very nice results by solving such difficult problems with L-BFGS. Surprisingly, the method is able to escape local minima: our interpretation is that the approximation of the Hessian is smoother than the real Hessian, making it possible to evade the local minima. We analyse the behavior of L-BFGS on the design of 2D frame fields. It involves an energy function that is infinitly continuous, strongly non linear and having many local minima. Moreover, the local minima have a clear visual interpretation: they corresponds to differents frame field topologies. We observe that the performances of LBFGS are almost unpredictables: they are very competitive when the field is sampled on the primal graph, but really poor when they are sampled on the dual graph.



There are no comments yet.


page 5

This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.


Producing low curvature frame fields with a simple topology is interesting for computer graphics applications like global parameterization, quad remeshing, surface segmentation etc. The problem is formulated as a minimization problem with an estimation of a smoothed curvature to ease the optimization process.

The resulting non linear optimization problem is usually solved by a dedicated algorithm inspired by the geometric interpretation of a dual problem (producing a smooth unit vector field)

[RLL06, RVAL09, PZ07, KLF12]. However, it is also possible [HZ00] to directly use an existing non linear solver like L-BFGS. This approach is also used in [HTWB11, LLX12] to extend the frame fields to volumes.

This work aims to illustrate the ability of each approach to find a good quality local minimum of the objective function. As each minimum corresponds to a frame field topology, we observe minima via their induced frame field topology.

1 Problem settings

The optimization problem is completely formalized in [RS15, §2], but can be summarized by the following elements:

  • Domain representation: The domain is a triangle mesh. The method optimizes the frame field defined on a graph extracted from the mesh. It can be either the primal graph (vertices / edges) or the dual graph (triangles / dual edges).

  • Field representation: A frame is defined on each node of the graph. A frame is represented by an angle , the set of unit vectors is generated as with .

  • Energy to minimize: The energy to minimize is the sum of squared distances between adjacent samples. The distance between two samples is defined as . Initially this formulation comes from the representation vector [RLL06], it smoothes the true field curvature.

  • Boundary condition: For each node located on the boundary of the mesh, we estimate the normal of the boundary and force one member vector of the frame to match the normal: .

To summarize, we need to find that minimizes 2 under the constraint for boundary samples.

2 Solvers

The problem is a highly non linear, but the energy is smooth () everywhere. We can use existing solvers as a black box (L-BFGS), or define a dedicated solver inspired from the specific geometry of the problem.

2.1 L-Bfgs

Using L-BFGS requires to find an initial value for , and to be able to evaluate the energy and its derivatives. The initial value is directly given by the constraints on the boundary. For other nodes, we compare a random initialization (in the range ) and values propagated from the constraints. The derivative of the energy with respect to are easy to evaluate: for inner vertices and for boundary vertices.

2.2 Dedicated solver

The problem have an alternative geometric interpretation: it is equivalent to find the smoothest unit vector field defined by , subject to the same boundary constraints.

Indeed, the squared distance between adjacent vectors is exactly our energy:


We replace the variables by the unit vectors . The optimization problem becomes to minimize under the boundary constraints, plus the new unit norm constraint that is required to invert the change of variable.

All methods using this formulation find an initial solution by relaxing the unit norm constraint and solving the resulting linear problem. Some further optimize the energy, but we only consider the initialization step in this work.

3 Comparison

Our objective is to compare the quality of the local minima that are found by the different algorithms. A fair geometric interpretation of these local minima is given by the singularities of the frame field. Therefore, we do not consider speed or convergence, but focus only on the observation of the field topology (Fig. 1, 2, and 3).

We compare L-BFGS with random initialization, L-BFGS with field initialized by front propagation from boundary, and the dedicated solver. We also test on the primal graph (vertex/edge) and the dual graph (triangle/dual edge).

We observed that :

  • L-BFGS with a good initialization always give results that are similar to the dedicated algorithm. It is not surprising because the initialization have a nice topology.

  • L-BFGS with a field sampled on vertices is able to find an acceptable topology, even when randomly initialized.

  • L-BFGS with a field sampled on triangle is not able to evade the initial local minima. Leading to a complex frame field topology. This difficulty seems directly related to the distance (in number of edges) between singularities that could be simplified, as we can observe on higher resolution mesh Fig 2.

  • L-BFGS is never able to change the topology that is not due to singularities: as illustrated on Fig 3, the rotation of the field around the hole (that is part of the topology [RVLL08]) is too global to be changed by L-BFGS.

Our intuitive explanation for these different behaviors with respect to the sampling of the field (graph versus dual graph) comes from the number of edges of loops in the graph. In vertex / edge graph, singularities are defined by the sum of curvature along edges around triangles. Therefore, around a singularity, there is only edges to share the amount of curvature of the singularity (), so it is quite easy for them to increase/decrease by to move the singularity across the edge. In the triangle / dual-edge graph, there is an average of dual edges sharing the curvature of the singularity, making it more difficult for one of them to change its value.

If such explanations are possible to construct a posteriori, it would be very difficult to predict the behavior of the solver before testing.

Figure 1: We compare different settings on two models. For each model, the frame fields of the first row are sampled on the (vertex / edge) graph and on the (triangle / dual edge) graph for the second row. The first column is the dedicated algorithm, the second column is L-BFGS with random initialization and the last column is L-BFGS initialized by an advancing front method started from the boundary.

Figure 2: We compare different settings on higher resolution mesh. Images are organized as in Fig 1

Figure 3: The frame fields of the first row are sampled on the (vertex / edge) graph and on the (triangle / dual edge) graph for the second row. The first column is the dedicated algorithm, the second column is L-BFGS with initialization to and the last column is L-BFGS initialized by an advancing front method started from the boundary.

4 Conclusion

Given the highly non linear and non convex problem of frame field smoothing, L-BFGS works surprisingly well in some cases (when sampled on vertices). However, it fails to find an acceptable minima when sampled on triangles. We discovered that L-BFGS is like magic when used for non convex problems: it makes incredible things, but we can hardly predict how it will behave on a (apparently) similar scenario.


  • [HTWB11] Jin Huang, Yiying Tong, Hongyu Wei, and Hujun Bao. Boundary aligned smooth 3d cross-frame field. ACM Trans. Graph., 30(6):143:1–143:8, December 2011.
  • [HZ00] Aaron Hertzmann and Denis Zorin. Illustrating smooth surfaces. In PROCEEDINGS OF SIGGRAPH 2000, pages 517–526, 2000.
  • [KLF12] Nicolas Kowalski, Franck Ledoux, and Pascal Frey. A PDE based approach to multi-domain partitioning and quadrilateral meshing. 2012.
  • [LLX12] Yufei Li, Yang Liu, Weiwei Xu, Wenping Wang, and Baining Guo. All-hex meshing using singularity-restricted field. ACM Trans. Graph., 31(6):177:1–177:11, November 2012.
  • [PZ07] Jonathan Palacios and Eugene Zhang. Rotational symmetry field design on surfaces. ACM Trans. Graph., 26(3), July 2007.
  • [RLL06] Nicolas Ray, Wan Chiu Li, Bruno Lévy, Alla Sheffer, and Pierre Alliez. Periodic global parameterization. ACM Trans. Graph., 25(4):1460–1485, October 2006.
  • [RS15] Nicolas Ray and Dmitry Sokolov. On smooth 3d frame field design. CoRR,, 2015.
  • [RVAL09] Nicolas Ray, Bruno Vallet, Laurent Alonso, and Bruno Levy. Geometry-aware direction field processing. ACM Trans. Graph., 29(1):1:1–1:11, December 2009.
  • [RVLL08] Nicolas Ray, Bruno Vallet, Wan Chiu Li, and Bruno Lévy. N-symmetry direction field design. ACM Trans. Graph., 27(2):10:1–10:13, May 2008.