• No se han encontrado resultados

6. BIOQUIMICA DE COLORANTES EN TEJIDO OSEO Y CARTILAGO A

6.3 Embriologia del tejido oseo

6.3.6 Osificación intracartilaginosa o endocondral

This section describes the stochastic local search approach of the team HySST (Hyper- heuristic Search Strategies and Timetabling) to high school timetabling which competed in the three rounds of the Third International Timetabling Competition.

We develop and exploit a generalised selective hyper-heuristic. We build on a previous study [8] that demonstrated the effectiveness of a generalised version of the iterated local search approach. Specifically, our hyper-heuristic uses a structured and staged application of multiple perturbative and hill climbing operators as opposed to simple selection from a single pool of all operators.

In [43], a notable difference from standard methods (such as in memetic algorithms) is that the performance is better if the hill climbing is not applied if the mutational operators managed to improve the best solution. We suspected that excessive use of the hill climbing somehow gives over-optimised local solutions that afterwards lead to restricted movement within the search space. If the hyper-heuristics that control the mutational and hill climbing heuristics can be distinguished and implemented separately for this problem domain, an additional improvement could be obtained.

4.5.1 Methodology

Figure 4.3 illustrates how a high level generic single-stage selection hyper-heuristic and HySST multi-stage hyper-heuristic operate. A selection hyper-heuristic in Figure 4.3(a) manages a set of perturbative or constructive low level heuristics (move operators) [4] and often improves an initially generated solution (si) under an iterative process until the

termination criterion is satisfied. A generic selection hyper-heuristic does not differenti- ate between the types of low level heuristics. The multi-stage approach shown in Figure 4.3(b), separates mutational and hill climbing heuristics. Mutational heuristics are em- ployed until some criteria are satisfied, which decide that it is time for intensification, and then a new stage starts employing only hill climbing low level heuristics. The multi- stage level allows switching back and forth between diversification and intensification stages.

The search algorithm is implemented as a time contract algorithm which terminates after a given time, toverall for each instance. The approach consists of an initial solution

construction phase followed by an extensive improvement phase using a multi-stage hyper-heuristic. The pseudocode of the algorithm is provided in Algorithm 15. The improvement phase uses the remaining time left (tremaining) after the construction of

the initial solution which takes tinit time.

The multi-stage level divides the search into two main stages: diversification and intensi- fication. Until the given time limit is reached, the proposed approach switches between a diversification stage (stage A) which employs a selection hyper-heuristic combining sim- ple random heuristic selection with an adaptive move acceptance and an intensification stage (stage B) which employs a strict hill climbing process based on local search heuris- tics. Each stage takes a prefixed amount of time (tM U stage and tHCstage). Moreover,

stage A controls a small (tunable) threshold value ϵ to relax the degree of consecutive worsening moves during the search process. The threshold acceptance can accept with

Choose a low level heuristic

Accept/Reject

LLH1

LLHn

Apply selected heuristic LLHi

LLHi Create an initial solution, si terminate? sn← LLHi(sc) sc← sn/sc sc si sc

Maintain the best-solution sbest if ( sn isBetterThan sbest )

return( sbest )

Hyper-heuristic Problem Domain

Domain Barrier yes no (a) Accept/Reject MHi sc si sc return( sbest )

Hyper-heuristic Problem Domain

Domain Barrier Choose and apply a

mutational operator MHi

Choose and apply a hill climbing operator HCk stayInStage? yes no Create an initial solution, si no yes HC1 HCm MH1 MHn HCk Accept/Reject stayInStage? no yes terminate? (b)

Figure 4.3: Illustration of a (a) generic and (b) HySST multi-stage selection hyper-

heuristic

factor (1 + ϵ) worse. If no improvement is achieved during a stage, a hill climbing phase is applied using the hill climbing heuristics. A hill climbing step is always non-worsening and so can be repeatedly applied in standard fashion until a local minimum is reached. The diversification stage makes use of all mutational low level heuristics allowing wors- ening moves to be accepted via a threshold move acceptance method. The usefulness of restart in randomised search algorithms has already been known and different ap- proaches have been proposed [179, 180]. In this study, we use an adaptive threshold move acceptance method to enable acceptance of worsening moves and partial restarts. The threshold move acceptance method accepts all improved solutions or a worsening solution with a quality better than (1 + ϵ) of the quality of the best solution obtained during the search process at a stage. The acceptance of a worsening solution in this manner could be considered as a partial restart on a given solution. The degree of a partial restart is indicated by level controlling the threshold value of ϵ. The larger the threshold is, the lower the quality of solutions that get accepted. The diversification stage is repeated within the time limits as long as the best solution obtained at the end

Algorithm 15: Pseudocode of the HySST multi-stage hyper-heuristic

1 S ← CreateInitialSolution(); // takes tinit time

2 tremaining ← toverall− tinit; 3 Sbest← S; 4 thresholdList[] ← {ϵ1, ϵ2, ..., ϵmaxLevel}; 5 level ← 1; 6 repeat 7 Sbeststage ← S; 8 Sstartstage ← S; 9 ϵ ← thresholdList[level];

10 while notExceeded(tM U stage&&tremaining) do // stage A entry using ϵ

11 LLH ← SelectRandomlyFrom(M utationalHeuristics);

12 S′ ← ApplyHeuristic(LLH, S);

13 if S′ isBetterT han Sbest then

14 Sbest ← S′;

15 end

16 if S′ isBetterT han Sbeststage then

17 Sbeststage ← S′;

18 end

19 S ← MoveAcceptance(S, S′, Sbeststage, ϵ); // threshold acceptance

20 end

21 if Sbeststage isN otBetterT han Sstartstage then

22 while notExceeded(tHCstage&&tremaining) do // stage B entry

23 LLH ← SelectRandomlyFrom(HillClimbers);

24 S′′ ← ApplyHeuristic(LLH, S);

25 if S′′ isBetterT han Sbest then

26 Sbest← S′′;

27 end

28 if S′′ isBetterT han Sbeststage then

29 Sbeststage← S′′;

30 end

31 S ← S′′; // accept all moves

32 end

33 end

34 if Sbeststage isN otBetterT han Sstartstage then

35 if level == maxLevel then

36 S ← Sstartstage; 37 level ← 1; 38 end 39 else 40 level + +; 41 end 42 end

43 until Exceeded(tremaining); 44 return Sbest;

of a stage (Sbeststage) is of better quality than the best solution in hand at the start of

a stage (Sstartstage). In a way, the diversification stage is parametrised depending on

ϵ. Each diversification stage using a different ϵ is considered as a different stage. If a diversification stage produces a worsening resultant solution, then the intensification stage which makes use of hill climbing heuristics kicks in. If a solution cannot be im- proved even after an intensification stage, the ϵ value is increased to allow even larger changes in the solution causing larger worsening in its quality in the stage. We have used a discrete choice for the ϵ values and grabbed the next (previous) item from an ordered fixed-size threshold list in order to increase (decrease) its value. The minimum and maximum threshold values are limited with the first and last items in the list.

4.6

Dominance-based Roulette Wheel Hyper-heuristic with

Documento similar