Objective Function Overview

The objective function depends on the results of the finite element analysis, such as compliance, displacements, stresses, reaction forces, internal forces, eigenfrequencies, or properties of the finite element model such as material volume or nodal positions.

This page discusses:

See Also
Overview of Optimization Terms
Objective Function for Controller-Based Shape Optimization
In Other Guides
OBJ_FUNC

These results are combined to scalar values using the so-called 'design responses.' Initially, one or several responses for the objective function must be defined using the command DRESP. These responses are then added to the objective, as seen in the following figure:



Weight and reference values can be applied in the combination using the command OBJ_FUNC.


OBJ_FUNC
 ID_NAME = ...
 DRESP   = id_name_1, WEIGHT, REFERENCE
 DRESP   = id_name_2, WEIGHT, REFERENCE
 DRESP   = id_name_3, WEIGHT, REFERENCE
 DRESP   = id_name_4, WEIGHT, REFERENCE
 ...
 TARGET  = MIN | MAX | MINMAX | MAXMIN
END_

  • The ID_NAME of the OBJ_FUNC must be referenced in the OPTIMIZE command to activate the objective function.
  • The WEIGHT and REFERENCE values are optional.
  • The default weighting factor is wi=1 and the default reference value is φiref=0.
    Important:
    • For controller-based shape optimization the reference value ( φiref ) has a special meaning. The reference value is the value around which Tosca Structure homogenizes the stress. Thus, a value φiref=0 usually does not make sense and Tosca Structure calculates a default reference value if REFERENCE ( φiref ) is unset. The reference calculated can be seen in TOSCA.OUT:

    • For controller-based shape optimization the user must either set all REFERENCE-values or none at all (automatic reference value calculation).
  • The user does not need to define WEIGHT and REFERENCE for the most common optimization formulations. The default values of WEIGHT=1.0 and REFERENCE=0.0 are good settings for most common cases.
  • The command TARGET can be set to MIN, MAX, MINMAX, or MAXMIN, indicating if the objective function is minimized or maximized or if a min-max or a max-min formulation is used.
    Important:
    1. The reference value for the MINMAX function differs from the above definition by eigenfrequency optimization for the sensitivity-based algorithm.
    2. MAXMIN is not allowed for eigenfrequency optimization.
    3. The reference value for von Mises stresses in topology optimization differs from the above definition.
  • The design responses listed in OPTIMZE will be summed up taking into account the individual weighting and reference values if TARGET is set to MIN or MAX.
  • A min-max / max-min formulation is applied if TARGET is set to MINMAX / MAXMIN. Then the design responses are dealt with individually in a multidisciplinary optimization taking into account the individual weighting and reference values.

In the log file TOSCA.OUT the object function value can be monitored:



In the above example, the total objective function is Φ=68.9636, the DRESPs have values φ1=DRESP_MAX_MISES1=161.820 and φ2=DRESP_MAX_MISES2=80.9101.

Also the above example shows the weight and reference value of each term. These values can also be found in two extra log-files, optimization_report.csv and optimization_status_all.csv. The first file only lists DRESPs that are included in the optimization task as objective function or constraint. The latter lists all DRESPs defined in the parameter file.

Example

The following figure shows the optimization_report.csv imported into a spread sheet:



  • In the above example, first the total objective function Φ is listed for each iteration as MINIMIZE_MAX_MISES. The objective function is always the first column.
  • Then each DRESP in the φ1=DRESP_MAX_MISES1 and φ2=DRESP_MAX_MISES2 are listed as OBJ_FUNC_DRESP:DRESP_MAX_MISES1 and OBJ_FUNC_DRESP: DRESP_MAX_MISES2.
  • After each DRESP the terms are listed: OBJ_FUNC_TERM:DRESP_MAX_MISES1 and OBJ_FUNC_TERM: DRESP_MAX_MISES2.

The terms include weight and reference value and are given as:

ti=wi(φiφiref)

If constraints are defined in the optimization task, these are also included in optimization_report.csv and optimization_status_all.csv.

Remarks

  • For controller-based shape optimization, the "reference value" has a special meaning and is very important. See "Reference Stress" in the shape optimization section "Objective Function for Controller-Based Shape Optimization."
  • For all other optimization approaches, the reference value and weight is only of limited importance. A case for using weights in sensitivity-based optimization is when you use two different types of DRESPs in the objective function and they might have very different value intervals. This is not recommended and in most cases you will have a better optimization setup by using one type of DRESP in OBJ_FUNC and the others as constraints.