• No results found

Conclusion and Future Work

In this chapter, we extend dynamic controllability to CCTPU with making the assign- ment to discrete variables dynamically. Comparing to the previous work of making assignment statically, some test cases in the current CCTPU benchmarks are dynam- ically controllable with dynamic decisions on discrete variables but not dynamically controllable with a fixed assignment.

Assumptions 4.2 and 4.3 are essentially restrictions on the dynamic execution strategies that can be found by the algorithm we have presented in the next section. Removing or relaxing these assumptions is one of the future works. Removing them

§4.7 Conclusion and Future Work 89

0 10% 20% 30% more than 30%

Max Delay Improvement 0 200 400 600 800 1000 #p rob lem s

Figure 4.19: Improvement of Max Delay from Fixed Assignment to Dynamic Assign- ment

from the definition of dynamic controllability is straightforward (making the prehis- tory of a discrete variableS{≺ DT(c)}). Assumption 4.1 is not as easy. A dynamic strategy has to ensure that discrete choices are made so that there is no ambiguity about the activation of a link when the starting time point of the link is scheduled.

In future work, we will try to remove Assumptions 4.2 and 4.3, which limit the dynamic strategies that our algorithm can find. Another extension is to see how much improvement can be made in solving optimisation problems over a CCTPU when considering making choices dynamically.

Chapter5

Optimising CCTPU

Adding controllable discrete variables makes dealing with the CCTPU more repre- sentative but more difficult than the STPU. Many real-world problems that can be represented by CCTPU are not controllable even with dynamic options because the temporal constraints are too tight or the uncertainty is too much. Instead of checking dynamic controllability, the work in this chapter aims to answer how controllable the problem is. On the other hand, solutions found without considering uncertainty may fail when executing in uncertain circumstances. The optimisation model in this section can also answer how robust or flexible these solutions can be when running with uncontrollable factors.

This chapter is an extension and combination of Chapters 3 and 4. The controlla- bility constraint models constructed with variables for bounds of links inherits from Chapter 3. However, that constraint model can only deal with STPU that have no options. We extend the constraint model to the CCTPU to formulate constraints rep- resenting controllable options. The envelope-based dynamic controllability checking algorithm for the CCTPU, which has been discussed in Chapter 4, can only answer, given a CCTPU, whether it is dynamically controllable or not with dynamic options. In this chapter, we formulate a constraint model for the dynamic options, and a constraint model for the strategy with fixed options is provided as a comparison.

The strategy of a CCTPU consists of temporal decisions and variable assignments. In a feasible strategy of a CCTPU, both these arrangements can be made strongly controllable or dynamically controllable. A decision is strongly controllable if it can work without any observations. A decision is dynamically controllable if it varies by different observations of the past. Among the combinations of varying levels of controllability of these decisions, we formulate constraint models in the following settings: (1) the fully strong controllability that makes all decisions strongly con- trollable, (2) the mixed strong and dynamic controllability that makes temporal de- cisions dynamically controllable with fixed options on discrete variables and (3) the fully dynamic controllability that makes temporal decisions dynamically controllable with dynamic choices on discrete variables.

One of the challenges when formulating the optimisation model of dynamic con- trollability is the scalability. In the controllability constraint models of the CCTPU, the scalability problems exist in both formulating the constraints and solving the op-

timisation model. In this chapter, we propose a constraint model but leave how to solve the model efficiently as a future work.

In this chapter, we begin with examples to explain the motivation for the work (Section 5.1). In section 5.2 and 5.3, we introduce the optimisation model for the CCTPU with strong and dynamic controllability constraints and fixed and dynamic options. Section 5.4 presents the experimental results and section 5.5 is the conclusion and future work.

5.1

Problem Statement

In this section, we begin with illustrating the problem with motivating examples, then introduce the general model of the optimisation problem.

The first example is a modified CCTPU from Figure 4.1 that aims to show check- ing dynamic controllability is not enough to solve a CCTPU with preferences. The second example tries to answer how robust a given solution is by applying the ro- bustness metric, introduced in Chapter 3, that measures the maximum deviation of a partial order schedule such that the schedule is still dynamically or strongly controllable.

5.1.1 Relaxing Over-constrained Problems

Checking dynamic controllability of temporal problems with uncertainty and con- trollable options cannot meet the demand for some applications, such as relaxing over-constrained problems. To illustrate this motivation, we modify the example in Figure 4.1 by adding reward values to each option and allowing an overlap of en- velopes for two options (shown in Figure 5.1). If c1 = K, the reward is 50; Ifc1 =S,

the reward is 100; The relaxation cost for each link is 10 per unit of relaxation. Two dynamic strategies with fixed assignment are (1) choosingc1= Kand relaxingUE10X by 5 to resolve the conflict raised by LE1E, the final preference is 50−5·10 = 0; (2)

choosing c1 = S and relaxing LXE3 and LE03E by 10 in total, the final preference is

100−10·10 =0.

A dynamically controllable strategy with dynamic options to the example is that • when the duration of the contingent eventE1→E10 is within[35, 50],c1 can be

assigned withKand

• when it is within[30, 40],c1can be assigned withS.

Thus, there is an overlapping interval [35, 40] that can be dealt with both options. The user’s preference that Mr. P likes the steak more than KFC cannot be considered in the dynamic controllability checking process.

To represent the favourite, we formulate an optimisation model, so that a new dynamic strategy with dynamic options under a specified objective function can be achieved. For example, in the problem of Figure 5.1, optionc1 =Swill be chosen for

§5.1 Problem Statement 93 E1 E10 X E2 E3 E20 E30 E [0, 5] [15, 20] c1= K [5, 15 ] c1 = S [15, 20] c1= K [5, 15] c1= S [30, 50] [20, 30] c1 =K [40, 60] c1 =S [100, 110]

Figure 5.1: A modified example from Figure 4.1.

This example shows that the optimisation model helps to provide a superior solution rather than only a feasible solution.

5.1.2 Maximum Deviation of Partial Order Schedules

Different from the relaxation problems that require optimal strategies as solutions, many applications want to answer how good a solution is, like the robustness metrics we introduced in Chapter 3. The robustness metric Maximum Deviation, which calculates the maximum worst-case deviation that a partial order schedule can absorb yet keep its controllability, may help answer the question how robust the schedule is.

S E2S E1S E1S E1E E2E E3E E [0,10 ] [0, 10] [0, 10 ] [30, 30+d] r1 =2 [30, 30+d] r1 =2 [30, 30+d] r1 =2 [0, 10 ] [0, 10] [0,10 ] [0, 10]c =2 [0, 10 ]c= 3 [0, 10 ]c= 1 [0, 10]c =4 [0, 10 ]c = 5 [0, 10 ]c= 6 [0, 80]

Figure 5.2: Using CCTPU to represent three POS of a problem

A schedule or temporal plan solved by a scheduler or planner can be represented by a consistent STN that does not have uncertainty. In Chapter 3, it is shown that modelling the links depicting the events that may contain disturbances during exe- cution by contingent link enables an estimation of the robustness of a fixed schedule or temporal plan. In addition to that, in Partial Order Schedules, different ways to

add temporal constraints that resolve resource constraints can be switched by con- trollable discrete variables. For example in Figure 5.2, an RCPSP problem with three activities is shown. Each activity takes 2 units of resource I, and the total amount of the resource I is 5, which means the three activities cannot execute at the same time. Thus, 6 precedence links (blue lines) are added as partial order schedules resolving the resource conflicts. Formulating the constraint model of CCTPU under dynamic controllability with dynamic options enables solving the problem of optimising ro- bustness and flexibility.

Therefore, the optimisation model of CCTPU can measure the robustness of par- tial order schedules and even give a more flexible solution than POS for scheduling problem.

5.1.3 General Formulation

The general form of the optimisation problem can be stated as: given a CCTPU, that is, the set of timepointsV = VE∪VU, links E = EC∪EU and discrete variables C, their domain Dand the labels of assignments attached to links, the problem is to set the bounds of the links and the assignments of the variables so as to optimise the objective function value (Equation 5.1).

opt fobj(lij,uij,x|eij ∈ E)

s.t. N(lij,uij,x|eij ∈E)is dynamically controllable or strongly controllable application-specific side constraints.

(5.1) The decision variables are the lower and upper bounds of links and the auxil- iary variables x representing the dynamic or fixed assignment. The solutions are constrained by the controllability constraints so that every solution satisfying the constraints has a feasible strategy. Other application-specific constraints are added depending on the problems.