Presentation is loading. Please wait.

Presentation is loading. Please wait.

Memory approaches to improve multi-start constructive heuristics Celso C. Ribeiro Universidade Federal Fluminense, Brazil Santorini, May 2005 Joint work.

Similar presentations


Presentation on theme: "Memory approaches to improve multi-start constructive heuristics Celso C. Ribeiro Universidade Federal Fluminense, Brazil Santorini, May 2005 Joint work."— Presentation transcript:

1 Memory approaches to improve multi-start constructive heuristics Celso C. Ribeiro Universidade Federal Fluminense, Brazil Santorini, May 2005 Joint work with Eraldo Fernandes (M.Sc., PUC-Rio, Brazil) WEA2005 – IV Workshop on Experimental and Efficient Algorithms

2 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 2/72 Summary Application: DNA sequencing Motivation: sequencing by hybridization Multi-start randomized constructive heuristic Adaptive memory strategy Vocabulary building Complete heuristic: MS+MEM+VB Computational experiments Numerical results and comparisons Concluding remarks

3 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 3/72 DNA sequencing DNA molecule: sequence formed by a combination of four different nucleotide bases - A, C, G, and T Each DNA molecule may be represented as a word over the alphabet {A,C,G,T} of nucleotide bases Example: ATAGGCAGGA Sequencing: identification of the contents of a DNA molecule Gel electrophoresis Chemical method

4 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 4/72 Sequencing by hybridization SBH: alternative approach to DNA sequencing Two phases: Biochemical: hybridization experiment involving a DNA array and the target molecule to be sequenced Computational: reconstruction problem using the results of the hybridization experiment

5 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 5/72 Sequencing by hybridization DNA array: Bidimensional grid Each cell contains a probe: small sequence of q nucleotides Library C(q): set of all 4 q probes of size q in the array Hybridization experiment: Array is introduced into a solution containing many copies of the target sequence A copy of the target sequence reacts with a probe if the latter is a subsequence (of the complement) of the former Spectrum: set of all probes of size q that reacted with the target sequence, i.e., subsequences of size q that appear in the target

6 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 6/72 Sequencing by hybridization AAAAAAATAAACAAAGAATAAATTAATCAATGAACAAACTAACCAACGAAGAAAGTAAGCAAGG ATAAATATATACATAGATTAATTTATTCATTGATCAATCTATCCATCGATGAATGTATGCATGG ACAAACATACACACAGACTAACTTACTCACTGACCAACCTACCCACCGACGAACGTACGCACGG AGAAAGATAGACAGAGAGTAAGTTAGTCAGTGAGCAAGCTAGCCAGCGAGGAAGGTAGGCAGGG TAAATAATTAACTAAGTATATATTTATCTATGTACATACTTACCTACGTAGATAGTTAGCTAGG TTAATTATTTACTTAGTTTATTTTTTTCTTTGTTCATTCTTTCCTTCGTTGATTGTTTGCTTGG TCAATCATTCACTCAGTCTATCTTTCTCTCTGTCCATCCTTCCCTCCGTCGATCGTTCGCTCGG TGAATGATTGACTGAGTGTATGTTTGTCTGTGTGCATGCTTGCCTGCGTGGATGGTTGGCTGGG CAAACAATCAACCAAGCATACATTCATCCATGCACACACTCACCCACGCAGACAGTCAGCCAGG CTAACTATCTACCTAGCTTACTTTCTTCCTTGCTCACTCTCTCCCTCGCTGACTGTCTGCCTGG CCAACCATCCACCCAGCCTACCTTCCTCCCTGCCCACCCTCCCCCCCGCCGACCGTCCGCCCGG CGAACGATCGACCGAGCGTACGTTCGTCCGTGCGCACGCTCGCCCGCGCGGACGGTCGGCCGGG GAAAGAATGAACGAAGGATAGATTGATCGATGGACAGACTGACCGACGGAGAGAGTGAGCGAGG GTAAGTATGTACGTAGGTTAGTTTGTTCGTTGGTCAGTCTGTCCGTCGGTGAGTGTGTGCGTGG GCAAGCATGCACGCAGGCTAGCTTGCTCGCTGGCCAGCCTGCCCGCCGGCGAGCGTGCGCGCGG GGAAGGATGGACGGAGGGTAGGTTGGTCGGTGGGCAGGCTGGCCGGCGGGGAGGGTGGGCGGGG Library C(4): Target sequence: ATAGGCAGGA

7 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 7/72 Sequencing by hybridization AAAAAAATAAACAAAGAATAAATTAATCAATGAACAAACTAACCAACGAAGAAAGTAAGCAAGG ATAAATATATACATAGATTAATTTATTCATTGATCAATCTATCCATCGATGAATGTATGCATGG ACAAACATACACACAGACTAACTTACTCACTGACCAACCTACCCACCGACGAACGTACGCACGG AGAAAGATAGACAGAGAGTAAGTTAGTCAGTGAGCAAGCTAGCCAGCGAGGAAGGTAGGCAGGG TAAATAATTAACTAAGTATATATTTATCTATGTACATACTTACCTACGTAGATAGTTAGCTAGG TTAATTATTTACTTAGTTTATTTTTTTCTTTGTTCATTCTTTCCTTCGTTGATTGTTTGCTTGG TCAATCATTCACTCAGTCTATCTTTCTCTCTGTCCATCCTTCCCTCCGTCGATCGTTCGCTCGG TGAATGATTGACTGAGTGTATGTTTGTCTGTGTGCATGCTTGCCTGCGTGGATGGTTGGCTGGG CAAACAATCAACCAAGCATACATTCATCCATGCACACACTCACCCACGCAGACAGTCAGCCAGG CTAACTATCTACCTAGCTTACTTTCTTCCTTGCTCACTCTCTCCCTCGCTGACTGTCTGCCTGG CCAACCATCCACCCAGCCTACCTTCCTCCCTGCCCACCCTCCCCCCCGCCGACCGTCCGCCCGG CGAACGATCGACCGAGCGTACGTTCGTCCGTGCGCACGCTCGCCCGCGCGGACGGTCGGCCGGG GAAAGAATGAACGAAGGATAGATTGATCGATGGACAGACTGACCGACGGAGAGAGTGAGCGAGG GTAAGTATGTACGTAGGTTAGTTTGTTCGTTGGTCAGTCTGTCCGTCGGTGAGTGTGTGCGTGG GCAAGCATGCACGCAGGCTAGCTTGCTCGCTGGCCAGCCTGCCCGCCGGCGAGCGTGCGCGCGG GGAAGGATGGACGGAGGGTAGGTTGGTCGGTGGGCAGGCTGGCCGGCGGGGAGGGTGGGCGGGG Library C(4): Target sequence: ATAGGCAGGA Spectrum: {ATAG, TAGG, AGGC, GGCA, GCAG, CAGG, AGGA}

8 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 8/72 Sequencing by hybridization Reconstruction problem: Second phase: reconstruction of the target sequence from the spectrum Find a sequence of the probes in the spectrum such that consecutive probes have q-1 bases of superposition Hamiltonian path problem on the spectrum: One vertex for each probe u in the spectrum Arc (u,v) from probe u to v if the last q-1 bases of u coincide with the first q-1 bases of v ATAG TAGG AGGC GGCA GCAG CAGG AGGA ATAG TAGG AGGC GGCA GCAG CAGG AGGA ATAGGCAGGA

9 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 9/72 Sequencing by hybridization Spectrum: {ATAG, TAGG, AGGC, GGCA, GCAG, CAGG, AGGA} AGGA CAGG AGGC GCAG ATAG GGCA TAGG

10 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 10/72 Sequencing by hybridization Spectrum: {ATAG, TAGG, AGGC, GGCA, GCAG, CAGG, AGGA} AGGA CAGG AGGC GCAG ATAG GGCA TAGG

11 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 11/72 Sequencing by hybridization Spectrum: {ATAG, TAGG, AGGC, GGCA, GCAG, CAGG, AGGA} AGGA CAGG AGGC GCAG ATAG GGCA TAGG ATAG TAGG AGGC GGCA GCAG CAGG AGGA ATAGGCAGGA

12 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 12/72 Sequencing by hybridization Hybridization errors: Hybridization experiment is not perfect False positives: probes that appear in the spectrum but not in the target sequence False negatives: probes that occur in the target sequence but not in the spectrum ATAG TAGG AGGC ---- GCAG CAGG AGGA ATAGGCAGGA

13 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 13/72 Sequencing by hybridization Problem of sequencing by hybridization (PSBH): given the spectrum S = {s 1, s 2,..., s m }, the size q of the probes, the length n, and the first probe s 0 of the target sequence, find a sequence with size smaller than or equal to n with a maximum number of probes. PSBH is NP-hard (Blazewicz et al., 1999)

14 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 14/72 Sequencing by hybridization Directed graph G = (V,E) V = S (probes in the spectrum) E = {(u,v): u S and v S} Superposition o(u,v) between two probes u,v S: size of the largest sequence that is both a suffix of u and a prefix of v Weight w(u,v) of the arc (u,v):

15 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 15/72 Sequencing by hybridization Spectrum: {ATAG, TAGG, AGGC, GCAG, CAGG, AGGA, GGCG} (q = 4) AGGA CAGG AGGC GCAG ATAG GGCG TAGG Target sequence: ATAGGCAGGA (n = 10) GGCG: false positive GGCA: false negative

16 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 16/72 Sequencing by hybridization Spectrum: {ATAG, TAGG, AGGC, GCAG, CAGG, AGGA, GGCG} (q = 4) AGGA CAGG AGGC GCAG ATAG GGCG TAGG 1 1 1 3 11 1 3 1 2 Target sequence: ATAGGCAGGA (n = 10) GGCG: false positive GGCA: false negative

17 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 17/72 Sequencing by hybridization Feasible solutions: acyclic paths in G emanating from vertex s 0 with weight less than or equal to n-q A path in G is a sequence a = (a 1, a 2,..., a k ) of probes a i S, i {1, 2,..., k} An optimal solution visits a maximum number of vertices and respects the above constraints Heuristics: ant colony, tabu search, genetic algorithm This work: multi-start constructive heuristic with a memory-based strategy

18 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 18/72 Sequencing by hybridization Spectrum: {ATAG, TAGG, AGGC, GCAG, CAGG, AGGA, GGCG} (q = 4) AGGA CAGG AGGC GCAG ATAG GGCG TAGG 1 1 1 3 11 1 3 1 2 Target sequence: ATAGGCAGGA (n = 10) GGCG: false positive GGCA: false negative

19 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 19/72 Sequencing by hybridization Spectrum: {ATAG, TAGG, AGGC, GCAG, CAGG, AGGA, GGCG} (q = 4) AGGA CAGG AGGC GCAG ATAG GGCG TAGG 1 1 1 3 11 1 3 1 2 Target sequence: ATAGGCAGGA (n = 10) GGCG: false positive GGCA: false negative

20 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 20/72 Sequencing by hybridization Spectrum: {ATAG, TAGG, AGGC, GCAG, CAGG, AGGA, GGCG} (q = 4) AGGA CAGG AGGC GCAG ATAG GGCG TAGG 1 1 1 3 11 1 3 1 2 Target sequence: ATAGGCAGGA (n = 10) GGCG: false positive GGCA: false negative ATAG TAGG AGGC ---- GCAG CAGG AGGA ATAGGCAGGA

21 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 21/72 Multi-start randomized constructive heuristic Iteratively builds multiple solutions using a randomized constructive algorithm Randomized constructive algorithm builds a different solution at each run Returns the best solution found Initial solution formed by a unique probe: a = (s 0 ) Current partial solution (path) is extended at each iteration by the insertion of a new probe at the end

22 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 22/72 Multi-start randomized constructive heuristic Current partial solution (path) is extended at each iteration by the insertion of a new probe at the end Probe to be inserted is probabilistically selected from a restricted candidate list (RCL) S(a): probes in the current partial solution a u: last probe in the current path RCL = {v S\S(a): o(u,v) (1- ).max t S\S(a) o(u,t) and w(a) + w(u,v) n-q} Randomly select a probe v from RCL with probability p(u,v) = (1/w(u,v))/Σ t S\S(a) (1/w(u,t)) greediness

23 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 23/72 Adaptive memory strategy Application to QAP: Fleurent and Glover, 1999 Pool Q of elite solutions (best solutions found): diversity Intensification strategy for the constructive algorithm Makes use of two kinds of information in the construction: superposition between the probes and frequency of the arcs in the elite solutions Parameter used to balance the weights of the two terms: greediness (superposition) and frequency (memory)

24 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 24/72 Adaptive memory strategy higher when the superposition between probes u and v is larger higher for arcs (u,v) appearing more often in the solutions of the elite set Probability p(u,v) of selecting a probe v from the RCL to extend the current partial solution whose last probe is u: greediness frequency

25 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 25/72 Adaptive memory strategy Pool update: Pool size: at most q solutions Solution a is a candidate to be inserted into the pool Q if it is better than the worst solution currently in the pool, i.e., |a| > min a Q |a| Candidate solution a replaces the worst solution in the pool if it is better than the best solution in the pool (|a| > max a Q |a|) or if it is sufficiently different from every other solution in the pool (min a Q dist(a,a) d min )

26 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 26/72 Vocabulary building Good solutions are very often formed by the same building blocks (paths) Optimal solutions formed by components appearing in suboptimal solutions Identify short paths with optimal superposition and combine them to build optimal solutions Vocabulary building: Glover and Laguna, 1997 Find common paths appearing in good solutions (words) Combine them into new good solutions (phrases)

27 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 27/72 Solutions encoded as adjacency vectors Solution a = (a 1,a 2,...,a k ) represented as a vector x = x 1,x 2,...,x |S| If x u = s, then probe s follows immediately after probe u, i.e., the arc (u,s) is used in the path Vocabulary building 1 2 3 45 6 a = (1,4,2,3,5)

28 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 28/72 Solutions encoded as adjacency vectors Solution a = (a 1,a 2,...,a k ) represented as a vector x = x 1,x 2,...,x |S| If x u = s, then probe s follows immediately after probe u, i.e., the arc (u,s) is used in the path Vocabulary building 1 2 3 45 6 a = (1,4,2,3,5)

29 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 29/72 Solutions encoded as adjacency vectors Solution a = (a 1,a 2,...,a k ) represented as a vector x = x 1,x 2,...,x |S| If x u = s, then probe s follows immediately after probe u, i.e., the arc (u,s) is used in the path Vocabulary building 1 2 3 45 6 u123456 xuxu 4352-- a = (1,4,2,3,5)

30 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 30/72 Vocabulary building Some notation: Set X of adjacency vectors Size(x): number of arcs in the adjacency vector x Inter(X): subset of arcs that appear in all vectors in X Enclosure(y,X): set formed by all vectors in X that contain the arcs in the adjacency vector y

31 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 31/72 1 2 34 5 6 78 u12345678 xuxu 2367-48- 1 2 34 5 6 78 u12345678 xuxu 2367458- Inter(x 1,x 2 ):

32 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 32/72 1 2 34 5 6 78 u12345678 xuxu 2367-48- 1 2 34 5 6 78 u12345678 xuxu 2367458- Inter(x 1,x 2 ):

33 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 33/72 1 2 34 5 6 78 u12345678 xuxu 2367--8- 1 2 34 5 6 78 u12345678 xuxu 2367-48- 1 2 34 5 6 78 u12345678 xuxu 2367458- Inter(x 1,x 2 ):

34 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 34/72 Vocabulary building Some notation: Set X of adjacency vectors Size(x): number of arcs in the adjacency vector x Inter(X): subset of arcs that appear in all vectors in X Enclosure(y,X): set formed by all vectors in X that contain the arcs in the adjacency vector y Find words: given an elite set X, find vectors y with |Enclosure(y,X)| as large as possible and Size(y) s min (non-elementary small words), where s min is a parameter

35 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 35/72 Vocabulary building Algorithm FindWords(X,s min ): Y, X X while X do x rand(X), Z {x}, X X - {x} while X do x rand(X) if Size(Inter(Z {x})) s min then Z Z {x} X X - {x}; end-while if |Z| > 1 then y Inter(Z); Y Y {y} X X – Z end-while return Y Martins and Plastino, 2005: more effective algorithm based on data mining strategies

36 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 36/72 Vocabulary building Additional notation: x and y: adjacency vectors ExtInter(x,y): undefined variables in one of the vectors are filled with the corresponding defined variables in the other

37 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 37/72 1 2 34 5 6 78 u12345678 xuxu 23----8- 1 2 34 5 6 78 u12345678 xuxu -3456--- ExtInter(x 1,x 2 ):

38 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 38/72 1 2 34 5 6 78 u12345678 xuxu 23----8- 1 2 34 5 6 78 u12345678 xuxu -3456--- 1 2 34 5 6 78 u12345678 xuxu 23456-8- ExtInter(x 1,x 2 ):

39 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 39/72 Vocabulary building Additional notation: x and y: adjacency vectors ExtInter(x,y): undefined variables in one of the vectors are filled with the corresponding defined variables in the other Combine words: given a set of words Y, combine them into phrases Very similar to the algorithm that finds words, replacing the original operator Inter by the new operator ExtInter

40 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 40/72 Vocabulary building Algorithm CombineWords(Y): Z, Y Y while Y do y rand(Y), W {y}, Y Y - {y} while Y do y rand(Y) if MaxInDegree(ExtInter(W,y)) = 1 then W W {y} Y Y - {y}; end-while if |W| > 1 then z ExtInter(W); Z Z {z} Y Y – W end-while return Z

41 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 41/72 Vocabulary building Combine words: given a set of words Y, combine them into phrases Very similar to the algorithm that finds words, replacing the original operator Inter by the new operator ExtInter Phrases may be incomplete or unfeasible Make feasible the unfeasible phrases (solutions) Insert probe s 0 in the best place in case it does not appear in the phrase Complete the solution joining subpaths of the phrase

42 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 42/72 Vocabulary building Algorithm VocabularyBuilding(X,s min ): Y FindWords(X,s min ) Z CombineWords(Y) A for each z Z do a MakeFeasible(z) A A {a} end-for return A

43 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 43/72 Complete heuristic: MS+MEM+VB Algorithm MS+MEM+VB: Q, X ; a* null for i = 1,..., MAXITER a GreedyRandomizedMemory(Q, ) if |a| > |a*| then a* a update weight and use a to update pools Q and X if i mod(n VB ) = 0 then A VocabularyBuilding(X,s min ) for every a A do use a to update pools Q and X and if |a| > |a*| then a* a end-for return a* Q: pool of elite solutions for adaptive memory X: pool of elite solutions for vocabulary building |X|>>|Q|

44 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 44/72 Computational experiments Conditions: Pentium 2.4 GHz with 512 M of RAM memory Linux 10.0 with kernel 2.6.3 Codes in ANSI C++ compiled with GNU compiler version 3.3.2 Instances: set A: instances generated from real human DNA sequences obtained from GenBank set R: instances randomly generated

45 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 45/72 Computational experiments Instances A: Origin: 40 GenBank sequences Five smaller sequences are generated from each original sequence, corresponding to their prefixes of size n = 109, 209, 309, 409, 509 For each of them, we consider its ideal spectrum, with size resp. equal to 100, 200, 300, 400, 500, using an array with probes of size q = 10 Total: 200 instances 20% of false negatives and 20% of false positives generated for each instance (probe s 0 appears in all of them, no repetitions)

46 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 46/72 Computational experiments Instances R: Origin: 100 random sequences Ten smaller sequences are generated from each original sequence, corresponding to their prefixes of size n = 100, 200,..., 1000 For each of them, we consider its ideal spectrum, with size resp. equal to 92, 192,..., 992, using an array with probes of size q = 7 Total: 1000 instances 20% of false negatives and 20% of false positives generated for each instance (probe s 0 appears in all of them, no repetitions)

47 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 47/72 Computational experiments Solution quality evaluation: Number of probes in the solution: |a| Similarity with the target sequence: Perform the alignment between the solution and the target sequence (matches: +1, missmatches: -1) to compute the value align( (a), *) by dynamic programming Compute similarity(a) = 100.(align( (a), *)+nmax)/(2.nmax), with nmax = max{| (a)|,| *|} Fraction: fraction(a) = 100.|a|/|a*|

48 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 48/72 Computational experiments Random instances in set R used for parameter seting and tuning Weight decreases with the iteration counter Small values of are used in the beginning, so as that purely greedy solutions are generated when no frequency information is available Initial value of decreases with the problem size MAXITER = 10.n (iterations) Parameters and are updated after blocks of n/2 iterations

49 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 49/72 Numerical results Average similarity with the target sequence over all R instances with the same size MS MS+MEM+VB Each additional component (memory, VB) improves the multi-start heuristic

50 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 50/72 Numerical results Average computation time over all R instances with the same size

51 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 51/72 Numerical results Average similarity with the target sequence observed with algorithm MS+Mem+VB over all R instances with the same size for different rates of errors

52 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 52/72 Numerical results Average similarity with the target sequence observed with algorithm MS+Mem+VB over all R instances with the same size for different probe sizes

53 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 53/72 Numerical results Best known solution for an instance in set R (n=1000) vs. iteration counter

54 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 54/72 Numerical results Best known solution for an instance in set R (n=1000) vs. processing time (10.4 seconds)

55 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 55/72 Numerical results Best known solution for an instance in set R (n=1000) vs. processing time (10.4 seconds)

56 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 56/72 Numerical results Best known solution for another instance in set R (n=1000) vs. iteration counter

57 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 57/72 Numerical results Best known solution for another instance in set R (n=1000) vs. processing time (9.0 seconds)

58 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 58/72 Numerical results Best known solution for another instance in set R (n=1000) vs. processing time (9.0 seconds) Additional memory computations speedup the multi-start heuristic (better solutions in the same computation time), in spite of the increase in the time per iteration Memory helps!

59 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 59/72 Numerical results increases and the greedy solutions deteriorate decreases and the memory acts to improve the solutions

60 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 60/72 Numerical results Instance in set R with n = 500 Empirical distributions of the time to target solution value Set a target value (in this case, the optimal value) Run each algorithm 100 times and record the running time when a solution at least as good as the target value is found Plot the empirical distributions

61 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 61/72 Numerical results Instance in set R with n = 500

62 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 62/72 Numerical results Instance in set R with n = 500 Algorithms with memory find target values more quickly (algorithms to the left are preferable) Algorithms with memory are more robust (time to target values are more stable)

63 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 63/72 Comparisons Best algorithms in the literature: Tabu search: Blazewicz et al., 2000 Overlapping windows heuristic: Blazewicz et al., 2002 SOPAS – Genetic algorithm: Endo, 2004

64 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 64/72 Comparisons Sequence length (n) Algorithm109209309409509 TS98.694.189.688.580.7 OW99.495.295.792.190.1 GA98.397.999.198.193.5 MS+Mem+V B 100.0 99.299.499.5 Average similarity with the target sequence observed with the four algorithms over all A instances with the same size

65 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 65/72 Comparisons Average similarity with the target sequence observed with the four algorithms over all A instances with the same size (alternatively)

66 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 66/72 Comparisons Number of target sequences found by each of the four algorithms over all A instances with the same size Sequence length (n) Algorithm109209309409509 TS28231710 OW2820211314 GA3730373028 MS+Mem+VB40 39

67 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 67/72 Comparisons Average computation times in seconds observed for each of the four algorithms over all A instances with the same size Sequence length (n) Algorithm109209309409509 TS<1.05.014.028.051.0 OW<1.0 GA0.10.30.91.52.1 MS+Mem+V B 0.10.40.93.16.2 Cray T3E-900

68 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 68/72 Comparisons Average computation times in seconds observed for each of the four algorithms over all A instances with the same size Cray T3E-900 (alternatively)

69 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 69/72 Comparisons Number of target sequences found by MS+Mem+VB and the GA over all R instances with the same size Sequence length (n) Algorithm 10 0 20 0 30 0 40 0 50 0 60 0 70 0 80 0 90 0 100 0 GA7061553723119312 MS+Mem+ VB 7974837361523410132

70 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 70/72 Comparisons Average similarity with the target sequence over all R instances with the same size

71 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 71/72 Comparisons Average computation times in seconds observed for each algorithm over all R instances with the same size

72 May 2005Memory approaches to improve multi-start constructive heuristicsWEA2005 72/72 Concluding remarks New multi-start heuristic to PSBH performs very well Memory approaches (adaptive memory and vocabulary building) are able to improve multistart solutions Parameter tuning may be further improved Approach can be applied to other optimization problems (e.g. car sequencing problem)


Download ppt "Memory approaches to improve multi-start constructive heuristics Celso C. Ribeiro Universidade Federal Fluminense, Brazil Santorini, May 2005 Joint work."

Similar presentations


Ads by Google