blockPerformanceIndicator

Indicator function using fuzzy membership functions

Extends from Interfaces.PartialConverters.SISO_Conversion (Partial SISO converter class with input and output conversions for lookup functions).

Information

This information is part of the Business Simulation Library (BSL). Please support this work and ► donate.

The output y is the dimensionless degree of membership to the set of "good performances" or "good outcomes" according to a chosen type of membership function. Using the PerformanceIndicator allows to quickly grasp how a system is currently performing with regard to some criteria: a value of 1 indicates best possible performance, while a value of 0 indicates unsustainable performance.

The following grid displays all available membership function types without inversion (invertResults = false):

Membership Functions
Grid.svg

Parameters
Membership Function Type a b c d
ramp foot shoulder    
triangular left foot center right foot  
trapezoidal left foot left shoulder right shoulder right foot
sshaped foot shoulder    
sigmoidal steepness of transition area   center of transition area  
pishaped left foot left shoulder right shoulder right foot
psigmoidal steepness of left transition center of left transition area steepness of right transition center of right transition area
gaussian half width at half maximum   center of curve (maximum)  
bell width of core steepness center of core  

When inversion is turned on (invertResult = true) the result obtained from the membership function as specified will be subtracted from 1. Thus the ramp shown above can be made to ramp down from left to right with a being the shoulder and b the foot by inverting the results.

See also

rampmf, trapmf, trimf, smf, sigmf, pimf, psigmf, gaussmf, gbellmf

Parameters

TypeNameDefaultDescription
InputTypeaParameter to control shape of membership function
InputTypebParameter to control shape of membership function
InputTypecParameter to control shape of membership function
InputTypedParameter to control shape of membership function
Time Conversion
BooleanconvertInput (from SISO_Conversion)false= true, if the input value is a rate or time variable that needs to be converted
BooleaninputIsRate (from SISO_Conversion)false= true, if the input is given in units of time, otherwise it is assumed to be a rate
BooleanconvertOutput (from SISO_Conversion)false= true, if the output value is a rate or time variable that needs to be converted
BooleanoutputIsRate (from SISO_Conversion)false= true, if the output is given in units of time, otherwise it is assumed to be a rate
TimeBasestimeBaseInput (from SISO_Conversion)TimeBases.secondsTimeBase to convert from (default = seconds)
TimeBasestimeBaseTableIn (from SISO_Conversion)modelSettings.modelDisplayTimeBaseTimeBase used for the lookup function input (default = modelDisplayTimeBase)
TimeBasestimeBaseTableOut (from SISO_Conversion)modelSettings.modelDisplayTimeBaseTimeBase assumed for the lookup function output (default = modelSettings.modelDisplayTimeBase)
TimeBasestimeBaseOutput (from SISO_Conversion)TimeBases.secondsTimeBase used for the output (default = seconds)
Structural Parameters
MembershipFunctionTypesmftMembershipFunctionTypes.rampMembership function type to use
BooleaninvertResultfalse= true, if the degree of membership is to be inverted (i.e., y = 1 - mf(u))

Connectors

TypeNameDefaultDescription
Connectors.RealInputu (from SISO)Input

Components

TypeNameDefaultDescription
RealOutputy (from SO)
ModelSettingsmodelSettings (from SISO_Conversion)

Revisions

  • Modified in v2.0.0.

  • Changed type for parameters a,b,c,d to InputType in v2.2.