Function Editor

Function Editor is a window in which you can create and edit one utility function. Its workspace consists of a table, two toolbars, pop-up menu, and status bar.

Function Editor

Table

The central part displays a table of decision rules. Table rows contain all the possible combinations of values of function’s arguments (lower-level attributes in the tree). The rightmost column (such as PRICE above) represents the output function value. This is the only editable column in the table. It contains cells into each of which you can assign:

  • a single value taken from the corresponding scale (for example: ‘high’), or

  • an unknown value, denoted ‘*’ (this is the initial value set to all rows of a newly created table).

The values entered by you appear in bold. Other values are called non-entered and are shown in normal typeface. By default, non-entered values are handled by DEXi and recalculated each time the table has changed. In general, non-entered values are intervals.

Remark: Values that are inconsistent between each other are displayed as underlined. For further explanation, see the ‘Use scale orders’ strategy.

You can enter a cell value in one of the following ways:

  • selecting an item from the Rule values field, which appears above the table;

  • right-clicking and selecting an item from the pop-up menu; or

  • pressing one of the keys 1, 2, …, on the keyboard, which represent consecutive scale values, or the key *, which represents an unknown value.

To delete the currently selected cell value, press the Delete key or the Delete value button. Deleting changes cell status to non-entered.

Double clicking on the table’s leftmost heading adjusts the width of all columns. Double clicking on any other heading adjusts the width of the corresponding column.

Right-clicking on a table heading shows the description and scale values of the corresponding attribute:

Attribute data display

Toolbars

The horizontal toolbar, which is shown above the table, consists of:

Rule values field: used to select a value and assign it to the current cell.

Delete value Delete value: Deletes the contents of the currently selected cell.

Report Complex rules: Makes and previews complex rules of the current function.

3D Chart 3D Chart: Open Function Chart and display the current function using a three-dimensional graphic

% Weights: Open Weight Editor to define attribute weights.

Use scale orders and Use weights are two check boxes that define how to handle non-entered values.

The horizontal toolbar below the table contains:

Undo Undo: Undo the last function-editing operation.

Redo Redo: Redo the last undone function-editing operation.

Copy Copy: Copies the current utility function into the clipboard for further use. The copied data format is the same as used in a function file.

Paste Paste: Imports previously Copied function into the current functions. After the operation, it reports the number of imported rules (rules whose values matched between the clipboard and the current functions) and the number of rules whose values actually changed.

The buttons Undo Undo and Redo Redo appear only if activated in Settings.

It is strongly recommended not to change Import-Export Settings between copying and pasting a function.

Pop-up Menu

This menu appears after right-clicking your mouse. It has two parts: the first one lists values that can be assigned to the current cell, and the second part contains two items:

Automatic value setup: Controls table recalculation after each change. When checked, DEXi recalculates all non-entered function values. Otherwise, there is no recalculation and the two toolbar checkboxes are disabled.

Mark inconsistent: When checked, DEXi underlines all function values that are inconsistent with at least one other function value. This indicates the function itself is non-monotone or inconsistent. This option is available for all functions, but is by default activated only for functions that allow handling of non-entered function values.

Rule consistency: Checks the consistency of the current cell value and, if inconsistent, displays the numbers of rules with which the cell value disagrees. This is suitable for finding out why some cell value is underlined.

Enter values: Changes the status of table cells from non-entered to entered. Entered cells are never recalculated by DEXi and can be only changed by you. After issuing this command, you can specify whether to change the status of all non-entered cells, or only those having a single (non-interval) value.

Status bar

Status bar displays the status of the edited function.

See also

Some recommendations on function editing.