The use of an SQP algorithm in slope stability analysis

Jian Chen, Jianhua Yin, C. F. Lee

Research output: Journal article publicationJournal articleAcademic researchpeer-review

4 Citations (Scopus)

Abstract

In the upper bound approach to limit analysis of slope stability based on the rigid finite element method, the search for the minimum factor of safety can be formulated as a non-linear programming problem with equality constraints only based on a yield criterion, a flow rule, boundary conditions, and an energy-work balance equation. Because of the non-linear property of the resulting optimization problems, a non-linear mathematical programming algorithm has to be employed. In this paper, the relations between the numbers of nodes, elements, interfaces, and subsequent unknowns and constraints in the approach have been derived. It can be shown that in the large-scale problems, the unknowns are subject to a highly sparse set of equality constraints. Because of the existence of non-linear equalities in the approach, this paper applies first time a special sequential quadratic programming (SQP) algorithm, feasible SQP (FSQP), to obtain solutions for such non-linear optimization problems. In FSQP algorithm, the non-linear equality constraints are turned into inequality constraints and the objective function is replaced by an exact penalty function which penalizes non-linear equality constraint violations only. Three numerical examples are presented to illustrate the potentialities and efficiencies of the FSQP algorithm in the slope stability analysis.
Original languageEnglish
Pages (from-to)23-37
Number of pages15
JournalCommunications in Numerical Methods in Engineering
Volume21
Issue number1
DOIs
Publication statusPublished - 1 Jan 2005

Keywords

  • Limit analysis
  • Non-linear programming
  • Rigid finite element method
  • Sequential quadratic programming
  • Slope stability
  • Upper bound

ASJC Scopus subject areas

  • Engineering (miscellaneous)
  • Applied Mathematics
  • Computational Mechanics

Cite this