**3. Overview of the approach**

In this section, we give an overview of the proposed work, called *OptSelectionAHP*. First, we present selection problem we are analyzing. Then, we describe different types of preferences captured by our approach and how they are modeled and ranked. Later, we introduce the optimal selection problem and define some optimization issues.

#### **3.1. Selection‐making criteria and available options**

Real‐life scenarios often impose availability of different options with different characteristics, while our requirements can be dependent on other internal or external factors. Let us consider general case when the set of decisions about *n* demands should be made to achieve an objective, while *i*th (i=1,..,n) decision should be made among *mi* alternative solutions (i.e., options). The reality usually imposes different interconnections and dependencies between our demands [e.g., person A is interested at least at one event (summer/winter holidays or concert), etc.], making decision process more complex and sophisticated. With no losing generality, let us assume that uncertainties, interconnections and dependencies among demands can be formalized with *q* logical statements (in accordance with reference [13]) (see **Figure 1b**).

Stakeholders usually have different selection criteria, e.g., costs of stay, comfort, travel costs, etc., and define own preferences over *k* criteria. Consistent with the contemporary research on decision‐making modeling, we impose that (i) the sets of available options are defined for each decision that should be made and (ii) each available option is annotated in accordance with defined selection criteria (see **Figure 1a**).

Formally, the selection criteria values of available options for demand *d* is denoted with a vector *Qd* =*q*<sup>1</sup> (*d*), *q*<sup>2</sup> (*d*), …, *qk* (*d*), where the function *qi* (*d*) determines the values of the *i*th selection criteria. On the basis of selection criteria values of available options and existing uncertainties, interconnections and dependencies among demands formalized with *q* logical statements, lower and upper values of each selection criteria can be calculated for the whole model by propagating the values of available options (as formalized in [13]). In our illustrative example, range value for price is [70, 5750] (see **Figure 1c**).

In our approach, the ranges of selection criteria for the whole model (*Qagg LB*, *Qagg UB*) =(*Q*<sup>1</sup> *LB*, …, *Qk LB*, *<sup>Q</sup>*<sup>1</sup> *UB*, …, *Qk UB*)∈*R <sup>k</sup> xR <sup>k</sup>* , will be used for defining stakeholders' preferences as described in the following section. Also, by following the same approach (as in [13]) for each combination of options, aggregated values per each selection criteria can be calculated (i.e., by use of elementary functions: min, max, sum, average, etc., depending on the nature of selection criteria [13]). In case of our running example, selection criteria "costs of stay" and "travel costs" should be aggregated by summing values, while aggregation of selection criterion "comfort" will be performed by calculating average value.

#### **3.2. Different kinds of users' preferences**

Even that money is a key limitation factor, person A would like to be satisfied with fulfillment of other personal attitudes and preferences, such as high comfort, low traveling costs, but in

On the other side, person B could spend between 3000 and 4000 for the same demands (summer and winter holidays and rock concerts), and he/she is not highly interested for comfort, and he/she would like to see as many famous destinations as possible. Also, person B is interested to both have at least one holiday and attend the concert. Available options and values of key

In this section, we give an overview of the proposed work, called *OptSelectionAHP*. First, we present selection problem we are analyzing. Then, we describe different types of preferences captured by our approach and how they are modeled and ranked. Later, we introduce the

Real‐life scenarios often impose availability of different options with different characteristics, while our requirements can be dependent on other internal or external factors. Let us consider general case when the set of decisions about *n* demands should be made to achieve an objective,

reality usually imposes different interconnections and dependencies between our demands [e.g., person A is interested at least at one event (summer/winter holidays or concert), etc.], making decision process more complex and sophisticated. With no losing generality, let us assume that uncertainties, interconnections and dependencies among demands can be formalized with *q* logical statements (in accordance with reference [13]) (see **Figure 1b**).

Stakeholders usually have different selection criteria, e.g., costs of stay, comfort, travel costs, etc., and define own preferences over *k* criteria. Consistent with the contemporary research on decision‐making modeling, we impose that (i) the sets of available options are defined for each decision that should be made and (ii) each available option is annotated in accordance with

Formally, the selection criteria values of available options for demand *d* is denoted with a

selection criteria. On the basis of selection criteria values of available options and existing uncertainties, interconnections and dependencies among demands formalized with *q* logical statements, lower and upper values of each selection criteria can be calculated for the whole model by propagating the values of available options (as formalized in [13]). In our illustrative

(*d*), …, *qk* (*d*), where the function *qi*

example, range value for price is [70, 5750] (see **Figure 1c**).

alternative solutions (i.e., options). The

(*d*) determines the values of the *i*th

the case of medium comfort, he/she accepts to spend money on higher travel costs.

196 Applications and Theory of Analytic Hierarchy Process - Decision Making for Strategic Decisions

decision criteria are illustrated in **Figure 1**.

optimal selection problem and define some optimization issues.

**3.1. Selection‐making criteria and available options**

while *i*th (i=1,..,n) decision should be made among *mi*

defined selection criteria (see **Figure 1a**).

(*d*), *q*<sup>2</sup>

vector *Qd* =*q*<sup>1</sup>

**3. Overview of the approach**

Presentation of selection‐making criteria that will be used throughout this chapter is focused on *hierarchical structure of concerns and qualifier tags* [14]. Even the structure is two‐layered with simple practical use, it mostly corresponds to preferences in human thinking, since experi‐ mental results in reference [15] showed that it is possible to infer all ratings from a few rules if a user is given the freedom in defining the structure, thus lessening users' workload.

The set of concerns *C* ={*C*1, …, *Ck* }, adopted from the Preview framework [16], is considered to be any set of selection criteria that is of interest to the user, such as costs of stay, comfort, travel costs. The set of qualifier tags (i.e., set of possible values of the concern) *QTi* ={*qt*<sup>1</sup> *i* , …, *qt*|*QTi* | *<sup>i</sup>* } is considered to be a collection consisting of the values of each of the selection‐making criteria (e.g., the qualifier tags for price could be cheap, expensive and reasonable). Usually, instances are assigned with lexical meanings or marks; for example, the quality criterion may indicate that the high, medium or low level, while the price for traveling costs that instances of "low cost", may indicate the interval [10, 100], represented by local currency, in which the meaning low price applies.

Defined two‐layer structure in addition to presenting the value and/or possible instances of selection‐making criteria allows the definition of preferences and attitudes over possible values of given criteria. In this way, if the available options are annotated in relation to developed structure, those options having more preferable value of selection‐making criteria can be considered as more appropriate to define preferences and requirements. As the set of qualifier tags consisting of disjunctive elements, each option *o* is characterized with the most one qualifier tag of each of the concerns, i.e., each option is characterized with *k*‐tuple (*qt*<sup>1</sup> *i* 1 , …, *qtk i <sup>k</sup>* ), where *i <sup>j</sup>* ∈{1, …, |*QTj* |}. In case that a value of some concern is not known or for some reason cannot be estimated, the options are not characterized by any qualifier tag of the concern and in this case, *qtj i j* = ∅.

Let us consider our illustrative example where the total cost of stay for person A is associated with range of [70, 5750]. Stakeholder A could also define that based on his own financial options, values above 5000 are not acceptable (even the total budget is limited to 7000), thus defining two qualifier tags (as shown in **Figure 2a**). On the other side, person B could define three qualifier tags for the same criterion "cost of stay": low (for values less than 3000), medium (for values between 3000 and 4000) and high (for values above 4000).

**Figure 2.** Illustrative example—Person A's: (a) structure of concerns and qualifier tags over selection criteria and (b) preferences over created structure.

Following the well‐known Analytical Hierarchy Process (AHP) framework for expressing and ranking user preferences [7], stakeholders can use *OptSelectionAHP* to define their preferences in the form of relative importance [typically defined with odd numbers ranging from 1 (equal importance) to 9 (extreme importance)] between concerns and between qualifier tags of each concern. The set of options {*o*1, …, *om*} available to the stakeholders is also associated with qualifier tags, *oj* =*qt <sup>j</sup>* 1 <sup>1</sup>, …, *qt <sup>j</sup> k <sup>k</sup>* , 1≤ *j* ≤*k*. Then, AHP performs a tuned pair‐wise comparison of the options. The outcome of the procedure are ranks {*r*1, …, *rm*}, which provide values from the [0,1] interval over the set of available options by performing two main steps: (i) the set of concerns and their qualifier tags are locally ranked, let annotate with {*rc*<sup>1</sup> , …, *rcm*} obtained ranks of concerns from the set *C* and {*rqt*<sup>1</sup> <sup>1</sup> , …, *rqt*|*QT* <sup>1</sup><sup>|</sup> <sup>1</sup> }, …, {*rqt*<sup>1</sup> *<sup>k</sup>* , …, *rqt*|*QT <sup>k</sup>* <sup>|</sup> *<sup>k</sup>* } obtained ranks of the set of qualifier tags of the *1st,…, kth* concern, respectively; (ii) rank of each available option (combi‐ nation of one tag per concern) is calculated on the basis of the ranks of the qualifier tags that are associated with that option, i.e., *r*(*qt <sup>j</sup>* 1 1 , …, *qt <sup>j</sup> k <sup>k</sup>* ) <sup>=</sup> *<sup>f</sup>* (*rc*<sup>1</sup> *∙rqt <sup>j</sup>* 1 <sup>1</sup> , …, *rck ∙rqt <sup>j</sup> k <sup>k</sup>* ), 1≤ *j* ≤*m*, where *f* is a predefined function (i.e., minimum, maximum, or mean). Furthermore, *OptConfBPMF* uses the extended AHP framework (CS‐AHP) [2], which allows use of conditional preferences and preferences about dominant relative importance. For example, stakeholders are often aware of making compromise regarding their requirement of low price: they are interested to pay a higher price only for higher quality of product/service; otherwise, they will accept only a low price.

Let us assume that person A defined his preferences over the obtained range values as presented in **Figure 2b**. Since he/she is highly interested in higher comfort; i.e., higher values are more important than medium values, medium values are more important than low values, and high values are extremely more important than low values; the CS‐AHP algorithm gives us the following ranks:

$$r\left(\text{Comfort.High}\right) = 0,67; r\left(\text{Comfort.Medium}\right) = 0,2\\$; r\left(\text{Comfort.Low}\right) = 0,10$$

Stakeholder A also defined his conditional preferences over traveling costs, and ranks are calculated accordingly: in case of medium comfort, the ranks are:

$$\Pr\left(\text{TravelCost.Low}\right) = 0, 14; \Pr\left(\text{TravelCost.Medium}\right) = 0, 43; \Pr\left(\text{TravelCost.High}\right) = 0, 43$$

otherwise

**Figure 2.** Illustrative example—Person A's: (a) structure of concerns and qualifier tags over selection criteria and (b)

Following the well‐known Analytical Hierarchy Process (AHP) framework for expressing and ranking user preferences [7], stakeholders can use *OptSelectionAHP* to define their preferences in the form of relative importance [typically defined with odd numbers ranging from 1 (equal importance) to 9 (extreme importance)] between concerns and between qualifier tags of each concern. The set of options {*o*1, …, *om*} available to the stakeholders is also associated with

the options. The outcome of the procedure are ranks {*r*1, …, *rm*}, which provide values from the [0,1] interval over the set of available options by performing two main steps: (i) the set of

<sup>1</sup> }, …, {*rqt*<sup>1</sup>

qualifier tags of the *1st,…, kth* concern, respectively; (ii) rank of each available option (combi‐ nation of one tag per concern) is calculated on the basis of the ranks of the qualifier tags that

a predefined function (i.e., minimum, maximum, or mean). Furthermore, *OptConfBPMF* uses the extended AHP framework (CS‐AHP) [2], which allows use of conditional preferences and preferences about dominant relative importance. For example, stakeholders are often aware of making compromise regarding their requirement of low price: they are interested to pay a

concerns and their qualifier tags are locally ranked, let annotate with {*rc*<sup>1</sup>

198 Applications and Theory of Analytic Hierarchy Process - Decision Making for Strategic Decisions

<sup>1</sup> , …, *rqt*|*QT* <sup>1</sup><sup>|</sup>

1 1 , …, *qt <sup>j</sup> k <sup>k</sup>* ) <sup>=</sup> *<sup>f</sup>* (*rc*<sup>1</sup>

*<sup>k</sup>* , 1≤ *j* ≤*k*. Then, AHP performs a tuned pair‐wise comparison of

*<sup>k</sup>* , …, *rqt*|*QT <sup>k</sup>* <sup>|</sup>

*∙rqt <sup>j</sup>* 1 <sup>1</sup> , …, *rck* , …, *rcm*} obtained ranks

*<sup>k</sup>* ), 1≤ *j* ≤*m*, where *f* is

*<sup>k</sup>* } obtained ranks of the set of

*∙rqt <sup>j</sup> k*

preferences over created structure.

qualifier tags, *oj* =*qt <sup>j</sup>*

1 <sup>1</sup>, …, *qt <sup>j</sup> k*

are associated with that option, i.e., *r*(*qt <sup>j</sup>*

of concerns from the set *C* and {*rqt*<sup>1</sup>

$$r\left(\text{TravelCost.Low}\right) = 0,67; r\left(\text{TravelCost.Medium}\right) = 0,23; r\left(\text{TravelCost.High}\right) = 0,10.1$$

Since person A defined the upper bound for costs of stay as limiting factor (total costs of stay must not increase 5000), we will calculate ranks for two other criteria since person A is highly interested for comfort (compared to travel costs): *r*(*Comfort*) = 0.83, *r*(*TravelCost*) = 0.17. Finally, if we consider two combinations of options: *o*13, *o*22 and *o*12, *o*21, *0*<sup>31</sup> that give the summarized values of (4800, 8.5, 850) and (2900, 6, 300) for costs of stay, comfort and travel costs, respec‐ tively, we can see that both combinations fulfill the limitation in both, total costs (less than 7000) and acceptable costs of stay (less than 5000), and their final ranks in regard with other two criteria are calculated as: (0.83 × 0.67 + 0.17 × 0.10)/2 = 0.29 and (0.83 × 0.23 + 0.17 × 0.14)/2 = 0.11. Thus, combination of services *o13, o22* is more preferable combination of options for stakeholder A, compared to the option *o*12*, o21, o31*.

By considering the calculated ranks, it can also be concluded that high comfort and low travel costs is the most preferable combination of those selection criteria, i.e., any value belonging to intervals [8, 10] *x* (‐, 500) fits best to stakeholders' preferences.

On the other hand, it can be seen that a rank value of 0.43 is assigned to the whole interval of high travel costs (in case of medium comfort) representing the level of satisfaction of the preference defined by stakeholder A. It means that there is no difference between combinations of options with aggregated different values from the whole interval [e.g., travel costs of 500 and 700 (in local currency)], which, obviously, does not correspond to realistic scenarios.

Thus, once the preferences are defined, the results of CS‐AHP algorithm should be used as the main instrument for measuring the level of satisfaction of user preferences with a particular combination of options. The formal foundations of measurements are presented later in Section 4.

Additionally, as usual for the optimal selection tasks, *hard* constraints might be defined for special demands for limiting the corresponding selection‐making criteria. That is, those preferences are not only defined as appropriate relative importance in the selection criteria model. For example, person A defined that total costs of stay should not be over 5000. It means that any combination of options which has the best characteristics with respect to the stake‐ holders' other preferences and which violates this specified value of price should be eliminated and should not be evaluated any further.

Formally, *hard constraints* can be defined as a set of constraints: *cl*<sup>i</sup> ( *o*1, … , *o*n, ≤ *u*<sup>i</sup> , *i* ∈ { 1 , .. ,*l*}, is a constant limitation value. In our illustrative example, both total budget limitations (defined by person A) should be considered as hard constraints.

#### **3.3. Problem of optimal selection**

The *optimal selection problem* can be defined as a problem of unique options derivation, such that stakeholders' preferences are satisfied. In our approach, once the preferences are obtained, genetic algorithm (GA) is used for the selection of the most desirable demands and the relevant options that collectively maximize the stakeholders' satisfaction. Furthermore, constraints defined in GA will guarantee that every combination of options will be valid with respect to the interdependencies and other relations between demands, as proved in reference [17].
