3. Model Description
The model presented in this work is an extended version of the model developed by Tirado et al. [
19]. In the basic model, such extensions were added as the ability to carry out multi-commodity delivery, the ability to determine the priority for all desired demand nodes, and two criteria for road reliability. The first criterion was maximizing reliability based on the worst arc used in the distribution route, while the second criterion aimed at maximizing reliability based on all arcs used in the operation. The ability to calculate travel time as a maximum between the speed limit of the road used and the speed characteristics of the vehicle traveling along it was also added. The presented model includes the possibility to adjust the length of the time period depending on the preferences of the decision maker. This option is convenient when planning long operations. Since the indicator for effective performance of the model is the execution time of the program, a large number of time periods will lead to a significant increase in the number of alternative solutions, making the response time of the model larger. Hence, the length of one time period should be chosen in a way that the response time of the model is reasonable and the quality of the provided distribution plan and schedule is adequate.
Vitoriano et al. [
22] applied the priority condition on the model for humanitarian operations. The distinction exists in the fact that the authors implement the criterion of a priority node, while in the model presented in this work, priority can be given to several nodes at once in the same or different degree, depending on the choice of the decision maker. Such a formulation not only allows for assigning priority to several nodes at the same time but also allows the priority criterion not to conflict with the equity criterion for optimizing them simultaneously. Ortuño et al. [
20] also considered a reliability criterion in their paper. However, this criterion is different from the one proposed in the current paper. The model, proposed by the Ortuño et al. [
20], assumes the use of a security criterion based on the probability of robbery along the route, and the authors conclude that the ransack probability can be reduced and the relevance of the safety attribute improved by traveling in a convoy. In connection with this feature of the model, the reliability criterion is also calculated for a convoy traveling through an arc. However, in the presented case study, related to the humanitarian operation in Japan, there is no sense in applying a safety criterion based on the probability of being ransacked and overloading the model. The fact that a vehicle can move independently and not be guided by a convoy allows it to be more maneuverable and mobile. This leads to the fact that the vehicle can overcome its route faster, which is an undeniable advantage for humanitarian operations. When traveling in a convoy, the speed of all vehicles must be taken into account. If a situation where the speed characteristics of the vehicles are different occurs, then the entire convoy is obliged to move at a speed not exceeding the maximum speed of the slowest vehicle. This can significantly degrade the performance of the time criterion for long operations.
Goal programming turned out to be the most convenient method for obtaining the desired result, and therefore it was used as the main optimization method for our model. However, the model is formulated in such a way that adding more criteria to the objective function makes the boundaries of the importance of the criteria less evident.
The notation for the model is presented in
Table 1,
Table 2,
Table 3 and
Table 4, while the mathematical formulation is presented after the notations:
The model has to satisfy the following hard constraints:
Constraints related to load:
Constraints (1) are the dynamic load flow conditions ensuring that the load of each product at each node and time period is in balance. Constraints (2) make sure that distributed and stored load at the end of the operation is equal to the available amount of aid, while constraints (3) indicate that load variables should be non-negative, and, in our case, they should be integer.
Constraints related to travel time:
Constraints (4) compute travel time as the maximum number of time periods required to cross the arc, considering the speed limit of the arc and the speed characteristics for the vehicle type, selecting the lowest value to be used. The time measure parameter is introduced as a tool to manipulate the length of one time period. In this particular model, which means that one period of time is equal to 5 min.
Constraints related to vehicles:
Constraints (5) create the balanced flow of vehicles, taking into account the chronological sequence of time periods, the number of products to be delivered to the node, the type of vehicle, and the number of available vehicles in each node at a particular period of time. At the same time, constraints (6) ensure that only accessible vehicles are used for transportation. The inequalities (7) indicate that vehicle variables should be integer and non-negative.
Constraints related to vehicle-load:
Conditions (8) limit the sum of the carried products, ensuring that the vehicle capacity is not exceeded.
Equation (9) defines how the cost is calculated. The model assumes that the vehicles return empty to their original point, in other words, they drive twice through the same route. The fixed cost includes all expenses that do not change throughout the operation, such as renting a vehicle, salaries of drivers, and coordinators of the operation. These components are directly dependent on the type of vehicle. The variable cost includes loading/unloading charge for each type of product and fuel consumption. Total costs depend on the total travel distance, the selected routes, the number and type of used vehicles, and the amount and product ratio of distributed aid. Condition (10) bounds the total costs for the operation by the budget limit. This should not be exceeded, although a desired target could be defined by the decision maker.
Constraints (11) ensure that the maximum amount available of each product planned for the operation is not exceeded. Parameter represents the target of the global amount of aid to be distributed.
Equity conditions:
In the previously presented models, the authors did not consider such criteria as the equity of multicommodity delivery. Therefore, the proposed approach to calculate the fairness of the distribution of goods between nodes was different. After conducting a series of experiments, we can conclude that the Min-Max goal programming approach provides the most even distribution plan for multi-product cases.
Thus, constraints (12) show the maximum inequity among the nodes and thereby measures how equitable the distribution plan is in relation to food. Constraints (13) compute the maximum inequity among the nodes in relation to medicine and thereby measures how equitable the medicine aid is distributed. Using these constraints, the model computes the largest proportion of unsatisfied demand by product among the nodes. The criteria take values of real numbers between 0 and 1, so the variables are equal to 0 if demand of all nodes for the specified product is completely fulfilled and positive otherwise. According to the goal programming methodology applied in this model, any target cannot take a zero value . Therefore, the target of the equity criteria will be a very small value close to zero.
Time conditions:
In order to deal with the operation time, two measures are introduced. Conditions (14) represent the number of time periods required to complete the operation. As mentioned earlier, in this case, a single period of time is equal to 5 min. The target value for the time criterion will be the number of periods during with which it is desirable to complete the operation.
Equation (15) adds a high penalty to long operations. The target value for the time penalty variable can be set based on how important it is to reduce the time of the operation, compared with other criteria in the model. If it is necessary to prioritize the criterion, then the target value for the variable can be extremely small and close to zero . If the time criterion does not take priority in the planned mission, then the goal for the may be equal to the target of the criterion (). Both variables turn into 0 if their corresponding goals are achieved and they get positive values otherwise.
Auxiliary constraints in relation to time-vehicle:
Binary variables takes value 1 if load has been delivered in period , and 0 otherwise. Hence, they show how many periods were used for the operation. Constraints (17)–(20) ensure that the binary time variable is defined correctly. Equation (16) computes the total number of available vehicles of each type in the network and works as a bound for constraints (18)–(20).
Priority appears as a demand satisfaction criterion at specific nodes. Equation (21) weights the sum of the corresponding unmet demand overall demand nodes by their priority level. Such a criterion in a model designed to optimize the distribution plan for post-disaster operations can play a crucial role when the primary goal is to evenly deliver the aid between the nodes. However, the decision maker would know whether there are difficult accessible regions in unreliable areas of the network. In such cases, the model may discard solutions with a lower cost or a shorter operation time, in favor of a solution where the cost and time attributes deteriorate slightly but allow for more delivery to the indigent settlements. The target of the priority criterion can be a very small value close to zero, or any other value that the decision maker considers appropriate for a particular mission. The priority criterion takes the value of 0 only if the demand of all prioritized nodes is completely fulfilled, and it is positive otherwise.
Minimum reliability measure:
Natural disasters severely affect the viability of many aspects of the life of the affected people. The obvious fact is that disasters have a significant destructive impact on the transport infrastructure; hence, one of the most important criteria in the design of a humanitarian logistics model is reliability. It is necessary to take into account the fact that the degree of destruction of road infrastructure is uncertain after the disaster. One way to simulate this type of uncertainty is to conduct a reliability analysis. In this model, the reliability measure is defined through the probability of traversing a route successfully. More precisely, the reliability parameter
is the probability indicating the safety of the arc. The probabilities are determined separately for each link of the transport network.
Criterion (22) states that the least probable arc in the distribution plan is the maximum reliability measure. In other words, it shows the probability of the most unreliable arc used to perform the operation.
Global route reliability measure:
Condition (23) reflects the global route reliability measure, which is computed as the product of all the probabilities among the set of arcs used in the operation. Such an equation assumes that all arcs are independent and have a specific reliability value. In order to linearize this expression, the logarithm is applied. Hence, criterion (24) significantly helps to increase the reliability of the full route, taking not only the lowest value in any link into account but also the remaining links throughout the route. The target value of the criterion should be determined based on knowledge that the value is represented by the logarithm. Accordingly, the target might be equal to . However, applying the realism of the constructed model, we assumed that all the links used are reliable and have a probability of 0.95. Additionally, considering the number of arcs in the presented case and assuming that at least half of the arcs in the existing transport network will be used to build the optimal solution, the following conclusion was made. Under ideal conditions, the product of all the probabilities for a realistic solution, that is, the global reliability along the entire route, will be less than or equal to 0.30. Thus, as a target value, there is no need to set a value other than and ask the model to achieve unattainable goals. At the same time, it is worth noting that the goal programming objective function is formulated in such a way that targets cannot be negative values. Consequently, the goal condition for the criterion (39) is set to avoid negativity while maximizing the desired criterion. As the result, the target of the criterion should be set equal to 1.2. Despite this reasoning, in any other operation, decision makers can be guided by their own considerations and determine other target values for the criterion.
Auxiliary constraints in relation to arc-vehicle:
The constraints (25) – (28) are introduced to guarantee that the binary variables are defined correctly. Condition (29) states that these variables are binary only taking values 0 or 1.
The goal constraints are defined as follows:
First level: primary goal:
Equation (30) is the load condition for the first level of the model. Parameter qp represents the total amount of aid desired to be distributed. The equation assures that at the end of the operation the sum of delivered goods in all the nodes that have a demand for a particular product should be equal to the quantity of products planned to the distribution, summarized over all products. If the condition is not fulfilled, then a positive value, equal to the amount of aid that could not be delivered, will be assigned to the deviation variable . If the condition is satisfied, the variable will be equal to zero.
Second level: load goal constraint:
This constraint is applied to designate the load condition at the second level of the model. After the value of the load deviation is determined, the variable is no longer involved in the calculations. It is replaced by the parameter , which fixes the value of the load deviation for the load condition of the second level. Thus, it can be noted that constraint (31) differs from constraint (30) only by parameter , which is determined by solving the primary goal. Otherwise, the constraint performs a similar function in the model.
The presented Equation (32) is used to limit the total cost to a desired target. By default, we already have a boundary for costs in terms of budget. However, from the real-life point of view, the goal is not only to keep costs within the available budget but also to find the cheapest possible solution fulfilling the given criteria. Hence, the target value for the cost condition can be set to any reasonable amount, e.g., 50% of the budget or similar, according to the decision maker.
The conditions (33) and (34) serve to indicate the goal for equity in the distribution of each type of product in the humanitarian operation. Specifically, they indicate that the maximum deviations between delivered load and demand should be minimized.
The goal constraints (35) and (36) are formulated such that the time of the operation is minimized as much as possible.
Priority goal constraint:
Since the priority criterion reflects the unsatisfaction of demand for the prioritized nodes, the priority goal constraint (37) aims at minimizing this value.
Reliability goal constraints:
Equations (38) and (39) are the goal constraints for the reliability criteria. The constraints state that the reliability values should be maximized. The corresponding deviation variables will serve to compare obtained reliability values with the target values.
Equation (40) indicate that attribute variables should take non-negative values. An exception is the global route reliability criterion, , since it takes a logarithmic value, and the natural logarithm of contains non-positive values.
The final model is based on a two-phase solving method, known as lexicographical goal programming. The mathematical formulation of the objective function is written in Equation (41).
There are different opinions about the strengths and weaknesses of this method. However, relying on the studied literature it can be concluded that it is one of the most common methods for solving this kind of problem, alongside scalarization, Pareto optimization, and compromise programming. At the same time, studies have shown that compromise programming and goal programming provide the most relevant methods for multi-criteria optimization. A survey conducted by Jones and Tamiz [
23] shows that in the case of using goal programming to solve real problems, most of them were solved using the lexicographic approach. Additionally, a while ago Romero [
24] performed a research in which he proved that most of the flaws of the lexicographical goal programming methodology arise due to an incorrect application. In fact, some properties of the method, interpreted as disadvantages, can turn into advantages for problems in real life.
The first level model:
The lexicographic goal programming model considers two priority levels. For humanitarian distribution operations, the primary goal is delivery of the planned amount of aid to the affected population. However, conditions such as a budget, the number of vehicles available, or a short time horizon may lead to the objective being impossible to achieve. Therefore, as suggested by Tirado et al. (2014) [
19], the first level of the model aims to determine the maximum total quantity of goods to be distributed under the existing restrictions. For this purpose, the desired quantity of products to be delivered is set as the target (30), and the model calculates whether it is possible to distribute the entire desired amount of aid or eventually finds the minimum possible deviation from the target. At the first level of the lexicographical model, the remaining goals defined for the mission are not considered, although their constraints are included in the model. Hence, the objective function of the first level is to minimize the deviation of the load criterion
. In an ideal case, this should be equal to zero.
Equation (42) shows the model formulation for the first level solution, the objective function, and constraints to be included. Once the first level of the model is solved, it is determined how much of the global load can be distributed with the available set of resources, and we know the load deviation value that must be fixed in order to proceed to the second level of solution.
To continue the solving process, the objective function of the model is replaced by the one shown in expression (43) Constraint (30) is replaced by constraint (31), and further, the remaining goal constraints from (32) to (40) are added to the resulting model, as shown in expression (43).
In our case, the goals are not represented in the same units of measurement, so the normalization method should be implemented in the objective function by dividing each deviation variable by the corresponding goal to obtain normalized units for each criterion. Such a manipulation allows one to work with a percentage expression of satisfaction for each goal. In addition, the criteria can be assigned their own weight, showing the importance of one criterion compared to others for the decision maker. Weights can be set subjectively or by experimental selection after several runs of the model and evaluation of the results. Ultimately, the model calculates and minimizes a weighted sum of all goal deviations for each criterion except the load. One limitation of this model is that the time schedule might not be realistic. Using vehicle speed and road limits is not always sufficient to simulate the actual time in a real-life scenario, in particular when the time periods are as small as five minutes. The times for loading and unloading of vehicles are not included in this case study, even if the model can be extended to include such aspects. Real-life problems are always more complex and uncertain than theoretical case studies, but this model should be a step towards a realistic model to be used when sudden disasters appear.