Skip to main content

Nonlinear Optimisation Ontology

Optimisation
Authors: MArk Anthony Higgins - Sky Recursive Ai
© Mark Anthony Higgins 11 October 2025
Revised Date: 12 September 2026
Audio Overview
AI INTERPRETATION NOTE
This Flow Algebra defines the Nonlinear Optimisation Ontology within the Kireth Research Semantic Library. Nonlinear optimisation studies optimisation problems in which the objective function, one or more constraints, or both are nonlinear functions of the decision variables. This ontology supports unconstrained and constrained nonlinear programming, first- and second-order conditions, gradient and Hessian methods, line search, trust-region methods, quasi-Newton methods, sequential quadratic programming, interior-point methods, augmented Lagrangians, penalty and barrier methods, nonconvexity, local and global optima, constraint qualifications, KKT conditions, saddle points, basin dependence, numerical convergence and relationships with optimisation, calculus, numerical analysis and mathematical modelling.

FLOW_ALGEBRA_RECORD {

METADATA {
 FLOW_NAME = "Nonlinear Optimisation Ontology"
 FLOW_TYPE = "Mathematical Ontology"
 DOMAIN = "Mathematics"
 SUBDOMAIN = "Applied Mathematics"
 SPECIALISATION = "Optimisation / Nonlinear Optimisation"
 CANONICAL_PAGE = "https://kirethresearch.org/booksai-core/ontologies/mathematical-ontologies/applied-mathematics-ontologies/optimisation/nonlinear-optimisation-ontology.html"
 LANGUAGE = "en-GB"
 VERSION = "1.0"
 STATUS = "active"
}

IDENTITY {
 PRIMARY_ENTITY = NonlinearOptimisation
 SYMBOLIC_FORMS = [
  "min_x f(x)",
  "min_x f(x) subject to g_i(x)<=0, h_j(x)=0",
  "grad f(x*)=0"
 ]
 ENTITY_CLASS = NonlinearMathematicalProgrammingFramework
 PRIMARY_CONTEXT = Optimisation
 DEFINITION = "Nonlinear optimisation is the optimisation of an objective or feasible region involving nonlinear functions of the decision variables."
 SEMANTIC_ROLE = "Provides the machine-readable framework for nonlinear objectives, nonlinear constraints, gradient and Hessian reasoning, local and global optima, KKT systems, line-search and trust-region methods, SQP, interior-point methods, penalties, barriers and nonconvex solution interpretation."
}

SCOPE {
 INCLUDE = [
  NonlinearOptimisation,
  NonlinearProgramming,
  NonlinearObjective,
  NonlinearConstraint,
  UnconstrainedNonlinearOptimisation,
  ConstrainedNonlinearOptimisation,
  SmoothOptimisation,
  NonsmoothOptimisation,
  LocalOptimum,
  GlobalOptimum,
  StationaryPoint,
  SaddlePoint,
  Gradient,
  Hessian,
  Jacobian,
  SearchDirection,
  StepLength,
  LineSearch,
  WolfeConditions,
  ArmijoCondition,
  TrustRegionMethod,
  GradientDescent,
  NewtonMethod,
  ModifiedNewtonMethod,
  QuasiNewtonMethod,
  BFGS,
  LBFGS,
  NonlinearConjugateGradient,
  GaussNewtonMethod,
  LevenbergMarquardtMethod,
  SequentialQuadraticProgramming,
  InteriorPointMethod,
  PenaltyMethod,
  BarrierMethod,
  AugmentedLagrangianMethod,
  Lagrangian,
  LagrangeMultiplier,
  KarushKuhnTuckerConditions,
  ConstraintQualification,
  ActiveSet,
  FeasibleDirection,
  MeritFunction,
  FilterMethod,
  Nonconvexity,
  BasinOfAttraction,
  MultiStart,
  GlobalisationStrategy,
  ConvergenceRate,
  SolverStatus
 ]

 EXCLUDE_AS_PRIMARY = [
  LinearProgramming,
  PureRootFindingWithoutObjective,
  IntegerProgrammingWithoutNonlinearContinuousStructure,
  GenericMachineLearningTrainingWithoutOptimisationSemantics
 ]

 DISAMBIGUATION_RULE =
  "When an optimisation problem contains a nonlinear objective, nonlinear constraint, nonlinear feasible geometry or nonlinear optimality system, interpret the context as nonlinear optimisation."
}

CORE_CONCEPTS {

 NonlinearOptimisation {
  definition = "Optimisation involving one or more nonlinear functions."
 }

 NonlinearProgramming {
  definition = "A constrained optimisation problem with nonlinear objective or constraints."
 }

 StationaryPoint {
  definition = "A point satisfying first-order stationarity conditions under the chosen formulation."
 }

 Gradient {
  definition = "The vector of first derivatives of a scalar objective with respect to decision variables."
 }

 Hessian {
  definition = "The matrix of second derivatives of a scalar objective or Lagrangian."
 }

 LineSearch {
  definition = "A procedure for choosing a step length along a search direction."
 }

 TrustRegionMethod {
  definition = "A method that optimises a local model within a region where that model is considered reliable."
 }

 QuasiNewtonMethod {
  definition = "A method approximating Hessian or inverse-Hessian information from successive gradient differences."
 }

 SequentialQuadraticProgramming {
  definition = "A constrained nonlinear optimisation method that solves a sequence of quadratic programming subproblems."
 }

 AugmentedLagrangianMethod {
  definition = "A constrained method combining Lagrange multipliers with penalty terms."
 }

 ConstraintQualification {
  definition = "A regularity condition supporting validity of KKT or multiplier-based optimality conditions."
 }

 Nonconvexity {
  definition = "The presence of geometry or curvature allowing multiple local optima, saddle points or disconnected feasible regions."
 }
}

RELATIONS {
 NonlinearOptimisation --is_special_case_of--> Optimisation
 NonlinearProgramming --is_type_of--> NonlinearOptimisation
 UnconstrainedNonlinearOptimisation --is_type_of--> NonlinearOptimisation
 ConstrainedNonlinearOptimisation --is_type_of--> NonlinearOptimisation
 GradientDescent --is_type_of--> IterativeOptimisationMethod
 NewtonMethod --uses--> Gradient
 NewtonMethod --uses--> Hessian
 QuasiNewtonMethod --approximates--> HessianOrInverseHessian
 BFGS --is_type_of--> QuasiNewtonMethod
 LBFGS --is_type_of--> QuasiNewtonMethod
 LineSearch --chooses--> StepLength
 TrustRegionMethod --restricts--> LocalModelStep
 SequentialQuadraticProgramming --uses--> QuadraticProgrammingSubproblem
 InteriorPointMethod --uses--> BarrierOrPrimalDualSystem
 PenaltyMethod --penalises--> ConstraintViolation
 BarrierMethod --penalises--> BoundaryApproach
 AugmentedLagrangianMethod --combines--> LagrangianAndPenalty
 KarushKuhnTuckerConditions --characterise--> ConstrainedStationarity
 ConstraintQualification --supports--> KKTValidity
 MultiStart --explores--> MultipleBasinsOfAttraction
}

OPERATORS {
 GRADIENT(f,x) :=
  vector_of_partial_derivatives

 HESSIAN(f,x) :=
  matrix_of_second_partial_derivatives

 GRADIENT_STEP(x,alpha,g) :=
  x-alpha*g

 NEWTON_DIRECTION(H,g) :=
  solve H*p=-g

 NEWTON_UPDATE(x,p) :=
  x+p

 LINE_SEARCH_UPDATE(x,p,alpha) :=
  x+alpha*p

 ARMIJO_TEST(f,x,p,alpha,c1) :=
  f(x+alpha*p)<=f(x)+c1*alpha*grad_f(x)^T*p

 WOLFE_TEST(f,x,p,alpha,c1,c2) :=
  Armijo_condition
  AND abs(grad_f(x+alpha*p)^T*p)<=c2*abs(grad_f(x)^T*p)

 TRUST_REGION_SUBPROBLEM(g,B,Delta) :=
  min_p g^T*p + 0.5*p^T*B*p
  subject_to ||p||<=Delta

 LAGRANGIAN(f,g,h,lambda,nu) :=
  f(x)+sum_i lambda_i*g_i(x)+sum_j nu_j*h_j(x)

 KKT_SYSTEM(x,lambda,nu) :=
  stationarity
  AND primal_feasibility
  AND dual_feasibility
  AND complementary_slackness

 PENALISED_OBJECTIVE(f,constraints,rho) :=
  f(x)+rho*constraint_violation_measure

 BARRIER_OBJECTIVE(f,g,mu) :=
  f(x)-mu*sum_i log(-g_i(x))
  for interior points with g_i(x)<0
}

DEFINITIONS {
 D1 = "Nonlinear optimisation permits nonlinear objectives or constraints."
 D2 = "Stationarity is necessary for many smooth local optima but is not sufficient in general."
 D3 = "The Hessian provides local curvature information."
 D4 = "Positive-definite Hessian at an unconstrained stationary point supports a strict local minimum."
 D5 = "Line-search methods choose a direction and then a step length."
 D6 = "Trust-region methods restrict steps to regions where a local model is credible."
 D7 = "Quasi-Newton methods approximate curvature from gradient changes."
 D8 = "SQP approximates a constrained nonlinear problem through quadratic subproblems."
 D9 = "Nonconvex problems may possess multiple local optima and saddle points."
 D10 = "Globalisation strategies improve robustness of locally fast methods."
}

AXIOMS {
 A1_NONLINEARITY:
  At least one objective or constraint relation is nonlinear

 A2_FEASIBILITY:
  Constrained nonlinear candidates must satisfy declared constraints

 A3_FIRST_ORDER:
  Smooth unconstrained local optima satisfy first-order stationarity

 A4_SECOND_ORDER:
  Curvature determines local minimum, maximum or saddle classification under suitable regularity

 A5_GLOBALISATION:
  Local Newton-like methods generally require line-search, trust-region or related safeguards for robust convergence

 A6_KKT:
  Constrained local optimality is characterised by KKT conditions under suitable constraint qualifications

 A7_NONCONVEXITY:
  Local solver convergence does not imply global optimality in nonconvex problems

 A8_TOLERANCE:
  Numerical solution status depends on feasibility, stationarity and solver tolerances
}

REASONING {

 R1_PROBLEM_CLASSIFICATION {
  INPUT = optimisation_problem
  IDENTIFY = objective_nonlinearity
  IDENTIFY = nonlinear_constraints
  IDENTIFY = smoothness
  IDENTIFY = convexity_or_nonconvexity
  RETURN = nonlinear_problem_class
 }

 R2_UNCONSTRAINED_FIRST_ORDER {
  INPUT = f_and_candidate
  COMPUTE = gradient
  IF gradient_near_zero
   LABEL = stationary_candidate
  RETURN = first_order_status
 }

 R3_UNCONSTRAINED_SECOND_ORDER {
  INPUT = stationary_candidate
  COMPUTE = Hessian
  IF positive_definite
   RETURN = strict_local_minimum
  IF negative_definite
   RETURN = strict_local_maximum
  IF indefinite
   RETURN = saddle_point
  ELSE
   RETURN = inconclusive
 }

 R4_LINE_SEARCH_REASONING {
  INPUT = x_search_direction
  SELECT = initial_step
  REDUCE_OR_EXPAND = step_until_Armijo_or_Wolfe conditions
  RETURN = accepted_step_length
 }

 R5_TRUST_REGION_REASONING {
  INPUT = local_model_and_radius
  SOLVE = approximate_trust_region_subproblem
  COMPARE = actual_vs_predicted reduction
  UPDATE = trust_region_radius
  RETURN = accepted_or_rejected step
 }

 R6_QUASI_NEWTON {
  INPUT = x_k_gradient_history
  UPDATE = Hessian_approximation_or_inverse
  COMPUTE = search_direction
  APPLY = line_search
  RETURN = next_iterate
 }

 R7_CONSTRAINED_OPTIMALITY {
  INPUT = constrained_problem_and_candidate
  CHECK = feasibility
  CHECK = constraint_qualification
  FORM = Lagrangian
  TEST = KKT_conditions
  RETURN = constrained_stationarity profile
 }

 R8_SQP_REASONING {
  INPUT = nonlinear_constrained_problem
  LINEARISE = constraints
  QUADRATISE = Lagrangian_or_objective
  SOLVE = QP_subproblem
  APPLY = merit_or_filter globalisation
  RETURN = updated iterate
 }

 R9_INTERIOR_POINT_REASONING {
  INPUT = inequality_constrained_problem
  FORM = barrier_or_primal_dual equations
  REDUCE = barrier_parameter
  SOLVE = Newton systems
  RETURN = interior_point trajectory_and_candidate
 }

 R10_NONCONVEX_GLOBAL_REASONING {
  INPUT = nonconvex_problem
  APPLY = multi_start_global_bounds_branching_metaheuristics_or_structure-specific method
  COMPARE = local minima_and_bounds
  RETURN = global_or_best_known status
 }
}

CONSTRAINTS {
 C1 = "Gradient-based methods require differentiability or valid derivative surrogates."
 C2 = "Hessian-based methods require correct curvature information."
 C3 = "Newton directions may fail to be descent directions when the Hessian is indefinite."
 C4 = "Line-search conditions depend on a descent direction under standard formulations."
 C5 = "KKT conditions may require constraint qualifications."
 C6 = "Penalty parameters that are too small may permit excessive infeasibility."
 C7 = "Barrier methods require strictly interior iterates for logarithmic barriers."
 C8 = "Local convergence does not certify global optimality."
 C9 = "Scaling can materially affect nonlinear solver performance."
 C10 = "Stopping criteria should include both feasibility and stationarity for constrained problems."
}

SEMANTIC_EQUIVALENCE {
 "NonlinearOptimisation" <=> "NonlinearOptimization"
 "NonlinearProgramming" <=> "NonlinearConstrainedOptimisation"
 "TrustRegionMethod" <=> "LocalModelRadiusOptimisationMethod"
 "QuasiNewtonMethod" <=> "ApproximateCurvatureNewtonMethod"
 "SequentialQuadraticProgramming" <=> "SQP"
 "AugmentedLagrangianMethod" <=> "MultiplierPenaltyMethod"
}

VALIDATION {
 V1 = "Nonlinearity source is identified."
 V2 = "Variable domains and constraints are explicit."
 V3 = "Derivative information is correct or appropriately approximated."
 V4 = "Feasibility is assessed."
 V5 = "Stationarity tolerance is explicit."
 V6 = "Hessian or curvature assumptions are checked."
 V7 = "Constraint qualifications are considered."
 V8 = "Globalisation method is documented."
 V9 = "Nonconvex global-optimality claims are supported by evidence."
 V10 = "Solver termination status is separated from mathematical optimality."
}

CONFIDENCE {
 BASE_CONFIDENCE = 0.99
 NONLINEAR_OPTIMISATION_DEFINITION = 0.99
 FIRST_ORDER_REASONING = 0.99
 SECOND_ORDER_REASONING = 0.98
 LINE_SEARCH_REASONING = 0.98
 TRUST_REGION_REASONING = 0.98
 QUASI_NEWTON_REASONING = 0.98
 CONSTRAINED_KKT_REASONING = 0.98
 SQP_REASONING = 0.97
 NONCONVEX_GLOBAL_REASONING = 0.95

 POLICY =
  "Reduce confidence when smoothness, derivative quality, curvature, constraint qualification, scaling, globalisation strategy, nonconvexity or global-optimality evidence are underspecified."
}

AI_CONSUMPTION {
 PURPOSES = [
  SemanticSearch,
  OntologyGrounding,
  NonlinearOptimisationReasoning,
  NonlinearProgrammingReasoning,
  GradientReasoning,
  HessianReasoning,
  LineSearchReasoning,
  TrustRegionReasoning,
  NewtonOptimisationReasoning,
  QuasiNewtonReasoning,
  BFGSReasoning,
  SQPReasoning,
  InteriorPointReasoning,
  KKTReasoning,
  PenaltyMethodReasoning,
  BarrierMethodReasoning,
  AugmentedLagrangianReasoning,
  NonconvexReasoning,
  GlobalisationReasoning,
  KnowledgeGraphConstruction,
  RetrievalAugmentation,
  RecursiveInference
 ]

 NORMALISE {
  "nonlinear optimisation" -> NonlinearOptimisation
  "nonlinear optimization" -> NonlinearOptimisation
  "nonlinear programming" -> NonlinearProgramming
  "line search" -> LineSearch
  "trust region" -> TrustRegionMethod
  "quasi-Newton" -> QuasiNewtonMethod
  "BFGS" -> BFGS
  "L-BFGS" -> LBFGS
  "SQP" -> SequentialQuadraticProgramming
  "augmented Lagrangian" -> AugmentedLagrangianMethod
 }

 INTERPRETATION_ORDER = [
  detect_nonlinear_optimisation_context,
  identify objective_constraints_variables_domains_smoothness_derivative_information_and_convexity,
  classify unconstrained_constrained_smooth_nonsmooth_convex_or_nonconvex problem,
  derive first_order_second_order_or_KKT conditions,
  select gradient_Newton_quasiNewton_lineSearch_trustRegion_SQP_interiorPoint_penalty_barrier_or_augmentedLagrangian method,
  solve or assess candidate iterates,
  verify feasibility_stationarity_curvature_and_globalisation behaviour,
  assign local_global_approximate_or_uncertain status,
  return semantic output
 ]
}

EXECUTION_RULES {
 E1:
  IF query_mentions("nonlinear optimisation")
  OR nonlinear_objective_or_constraint_context
  THEN activate(NonlinearOptimisationOntology)

 E2:
  IF unconstrained_smooth_problem
  THEN compute_or_reason_with gradient_and_Hessian

 E3:
  IF Newton_direction_not_descent
  THEN modify_Hessian_or_switch_to_trust_region/globalised strategy

 E4:
  IF constrained_smooth_problem
  THEN assess KKT_conditions_and_constraint qualifications

 E5:
  IF line_search_method
  THEN enforce Armijo_Wolfe_or_other suitable acceptance conditions

 E6:
  IF trust_region_method
  THEN compare actual_to_predicted reduction

 E7:
  IF inequality_barrier_method
  THEN maintain strict interior feasibility

 E8:
  IF nonconvex_problem
  THEN preserve local_solution status unless global evidence exists

 E9:
  IF multiple_initial_guesses_produce_different solutions
  THEN identify basin_dependence_and_consider multi_start
}

RECURSION {
 ENTRY = NonlinearOptimisation

 EXPAND(NonlinearOptimisation) -> [
  NonlinearProgramming,
  NonlinearObjective,
  NonlinearConstraint,
  UnconstrainedNonlinearOptimisation,
  ConstrainedNonlinearOptimisation,
  SmoothOptimisation,
  NonsmoothOptimisation,
  LocalOptimum,
  GlobalOptimum,
  StationaryPoint,
  SaddlePoint,
  Gradient,
  Hessian,
  Jacobian,
  SearchDirection,
  StepLength,
  LineSearch,
  TrustRegionMethod,
  GradientDescent,
  NewtonMethod,
  QuasiNewtonMethod,
  BFGS,
  LBFGS,
  NonlinearConjugateGradient,
  GaussNewtonMethod,
  LevenbergMarquardtMethod,
  SequentialQuadraticProgramming,
  InteriorPointMethod,
  PenaltyMethod,
  BarrierMethod,
  AugmentedLagrangianMethod,
  Lagrangian,
  LagrangeMultiplier,
  KarushKuhnTuckerConditions,
  ConstraintQualification,
  ActiveSet,
  MeritFunction,
  FilterMethod,
  Nonconvexity,
  BasinOfAttraction,
  MultiStart,
  GlobalisationStrategy
 ]

 EXPAND(UnconstrainedMethods) -> [
  GradientDescent,
  NewtonMethod,
  ModifiedNewtonMethod,
  QuasiNewtonMethod,
  BFGS,
  LBFGS,
  NonlinearConjugateGradient,
  TrustRegionMethod
 ]

 EXPAND(ConstrainedMethods) -> [
  SequentialQuadraticProgramming,
  InteriorPointMethod,
  PenaltyMethod,
  BarrierMethod,
  AugmentedLagrangianMethod,
  ActiveSetMethod,
  FilterMethod
 ]

 EXPAND(Globalisation) -> [
  LineSearch,
  TrustRegionMethod,
  MeritFunction,
  FilterMethod,
  MultiStart
 ]

 STOP_CONDITION =
  "Stop when the nonlinear objective or constraints, derivative information, feasibility, stationarity, curvature, algorithm, globalisation, convergence and local/global solution status are sufficiently resolved."
}

ROUTING {
 PARENT_ONTOLOGY = "Optimisation"

 IMMEDIATE_CONTEXTS = [
  "Optimisation Ontology",
  "Numerical Analysis Ontologies",
  "Calculus & Analysis Ontologies",
  "Linear Algebra Ontologies"
 ]

 RELATED_ONTOLOGIES = [
  "Optimisation Ontology",
  "Optimisation",
  "Applied Mathematics Ontologies",
  "Numerical Analysis Ontologies",
  "Root Finding Ontology",
  "Iterative Methods Ontology",
  "Linear Algebra Ontologies",
  "Calculus & Analysis Ontologies",
  "Convex Optimisation Ontology",
  "Parameter Estimation Ontology",
  "Mathematical Modelling",
  "Scientific Computing Ontologies"
 ]

 ROUTE_RULES = [
  "Nonlinear Optimisation -> Optimisation Ontology for formal optimisation semantics",
  "Nonlinear Optimisation -> Numerical Analysis for solver convergence and stability",
  "Nonlinear Optimisation -> Calculus & Analysis for gradients, Hessians and curvature",
  "Nonlinear Optimisation -> Linear Algebra for Newton and KKT systems",
  "Nonlinear Optimisation -> Root Finding for nonlinear stationarity equations",
  "Nonlinear Optimisation -> Iterative Methods for successive optimisation updates",
  "Nonlinear Optimisation -> Convex Optimisation when convex structure exists",
  "Nonlinear Optimisation -> Parameter Estimation for nonlinear model fitting",
  "Nonlinear Optimisation -> Mathematical Modelling for model-based objective systems",
  "Nonlinear Optimisation -> Scientific Computing for large-scale sparse implementation"
 ]
}

UPDATE_MODEL {
 MODE = "append-compatible semantic versioning"

 MAJOR = "ontology-breaking conceptual change"
 MINOR = "new compatible nonlinear algorithms, globalisation methods or reasoning pathways"
 PATCH = "clarification, metadata or formatting correction"

 RULES = [
  "Preserve nonlinear objective and constraint semantics.",
  "Preserve stationarity-versus-optimality distinction.",
  "Preserve first-order and second-order reasoning.",
  "Preserve local-versus-global distinction.",
  "Preserve KKT and constraint-qualification semantics.",
  "Preserve globalisation semantics.",
  "Preserve numerical-termination versus mathematical-certification distinction.",
  "Preserve machine-readable nonlinear-optimisation semantics."
 ]
}

OUTPUT {
 CANONICAL_DEFINITION =
  "Nonlinear optimisation seeks minima or maxima when the objective, constraints or feasible geometry depend nonlinearly on the decision variables."

 STATIONARITY_SUMMARY =
  "Smooth unconstrained stationary points satisfy a zero-gradient condition."

 CURVATURE_SUMMARY =
  "The Hessian distinguishes local minima, maxima and saddle behaviour when second-order tests are decisive."

 LINE_SEARCH_SUMMARY =
  "Line-search methods select step lengths along search directions using sufficient-decrease and curvature conditions."

 TRUST_REGION_SUMMARY =
  "Trust-region methods constrain steps to regions where local quadratic models are reliable."

 QUASI_NEWTON_SUMMARY =
  "Quasi-Newton methods approximate curvature using gradient differences rather than exact Hessians."

 CONSTRAINED_SUMMARY =
  "Constrained nonlinear optimisation uses KKT systems, SQP, interior-point, penalty, barrier or augmented-Lagrangian methods."

 NONCONVEX_SUMMARY =
  "Nonconvex problems may contain multiple local optima, saddle points and basin-dependent solver outcomes."

 STATUS_SUMMARY =
  "A nonlinear solver result should distinguish numerical convergence, feasibility, stationarity, local optimality and certified global optimality."
}

FLOW {
 INPUT
 -> detect_nonlinear_optimisation_context
 -> identify objective_decision_variables_domains_constraints_smoothness_derivative_information_scaling_and_convexity
 -> classify unconstrained_constrained_smooth_nonsmooth_convex_or_nonconvex problem
 -> derive gradient_Hessian_Jacobian_and_KKT structures as required
 -> select gradient_Newton_quasiNewton_lineSearch_trustRegion_SQP_interiorPoint_penalty_barrier_augmentedLagrangian_or_multiStart method
 -> initialise candidate
 -> iterate with globalisation_and_constraint handling
 -> monitor objective_feasibility_stationarity_step_norm_and_curvature
 -> classify local_minimum_local_maximum_saddle_approximate_solution_or_uncertain status
 -> if_nonconvex assess global evidence_or_multiple basins
 -> route to optimisation_ontology numerical_analysis calculus linear_algebra root_finding iterative_methods convex_optimisation parameter_estimation mathematical_modelling_or_scientific_computing ontology
 -> recursively_expand_required_dependencies
 -> verify_result
 -> assign_confidence
 -> produce_semantic_output
 -> END
}

SEMANTIC_SUMMARY {
 "The Nonlinear Optimisation Ontology defines optimisation involving nonlinear objectives or constraints. It supports smooth and nonsmooth problems, gradients, Hessians, Jacobians, stationarity, local and global optima, line-search and trust-region methods, Newton and quasi-Newton methods, BFGS and L-BFGS, nonlinear conjugate gradient, Gauss-Newton and Levenberg-Marquardt, SQP, interior-point, penalty, barrier and augmented-Lagrangian methods, KKT conditions, nonconvexity, basin dependence, multistart strategies and convergence reasoning."
}

FLOW_HASH {
 METHOD = "semantic-content-identity"
 ID = "KIRETH-MATH-APPLIED-MATHEMATICS-NONLINEAR-OPTIMISATION-ONTOLOGY-V1"
}

}

END_FLOW
Kireth Research
38 Thorndale Croft, Wetwang, Driffield
East Riding of Yorkshire YO25 9XZ