16
IJMRR/ March 2013/ Volume 3/Issue 3/Article No-2/2497-2512 ISSN: 2249-7196 *Corresponding Author www.ijmrr.com 2497 INTERNATIONAL JOURNAL OF MANAGEMENT RESEARCH AND REVIEW A GENETIC ALGORITHM SPREADSHEET MODEL FOR OPTIMIZING A COMBINATORIAL PROBLEM Daniel D.Friesen 1 , Mike C. Patterson* 2 , Bob Harmel 2 1 Urban and Professional Studies, University of North Texas at Dallas, 7400 University Hills Blvd. Dallas, TX 75241. 2 DillardCollege of Business, MidwesternStateUniversity, 3410 Taft Wichita Falls, TX 76308. ABSTRACT This paper demonstrates the solution of a combinatorial optimization problem. The general problem faced is that of determining an acceptable sequence in which to provide a service to specific entities. In this specific case, the service is painting houses (the entities) and the sequence is constrained by the need to avoid painting contiguous houses within a minimum time period. Neither specialized optimization software nor a general programming language is used to perform the optimization. Instead, the authors formulated an Excel spreadsheet solution utilizing Excel add-in tools (Premium Solver Platform, Evolver, and GeneHunter). Genetic algorithms, a more efficient technique than those frequently found in Excel optimization software, were used to reduce solution time. Model development time was minimal and execution time was not a significant constraint. It is likely that genetic algorithm tools will continue to be used in more and more applications. INTRODUCTION Optimization problems have the goal of obtaining an optimal solution while meeting desired objectives. Combinatorial optimization problems are an important subset. In combinatorial optimization problems, some or all of the variable values must be integers. These problems are often referred to as integer programming problems. In an all-integer problem, the solution space is restricted to a finite, although not necessarily small, number of possible solutions. Indeed, Meredith, Shafer, and Turban (2002) describe the solution space size as “sometimes astronomical.” The literature shows that such problems occur frequently; for instance, Hoffman and Padberg (n.d.) note their pervasiveness throughout most management fields. Further, combinatorial optimization problems are often of financial significance (Sensen, 2006). Postrel (2004) writes, “tweaking such mundane but strategically critical decisions as where to site plants, when to restock, andso on, can provide enormous productivity boosts.” In this paper, we demonstrate the solution of a combinatorial problem: determining an acceptable sequence in which to provide a service to specific entities. In this case, the service is painting houses(the entities) and the sequence is constrained by the need to avoid painting contiguous houses within a minimum time period. Rather than using specialized optimization software or a general programming language to perform the optimization, we

INTERNATIONAL JOURNAL OF MANAGEMENT RESEARCH AND …ijmrr.com/admin/upload_data/journal_Mike 2mar13mrr.pdf · 2014-01-23 · INTERNATIONAL JOURNAL OF MANAGEMENT RESEARCH AND REVIEW

  • Upload
    others

  • View
    6

  • Download
    0

Embed Size (px)

Citation preview

Page 1: INTERNATIONAL JOURNAL OF MANAGEMENT RESEARCH AND …ijmrr.com/admin/upload_data/journal_Mike 2mar13mrr.pdf · 2014-01-23 · INTERNATIONAL JOURNAL OF MANAGEMENT RESEARCH AND REVIEW

IJMRR/ March 2013/ Volume 3/Issue 3/Article No-2/2497-2512 ISSN: 2249-7196

*Corresponding Author www.ijmrr.com 2497

INTERNATIONAL JOURNAL OF MANAGEMENT RESEARCH

AND REVIEW

A GENETIC ALGORITHM SPREADSHEET MODEL FOR OPTIMIZING A

COMBINATORIAL PROBLEM

Daniel D.Friesen1, Mike C. Patterson*2, Bob Harmel2 1Urban and Professional Studies, University of North Texas at Dallas, 7400 University Hills

Blvd. Dallas, TX 75241. 2DillardCollege of Business, MidwesternStateUniversity, 3410 Taft Wichita Falls, TX 76308.

ABSTRACT

This paper demonstrates the solution of a combinatorial optimization problem. The general problem faced is that of determining an acceptable sequence in which to provide a service to specific entities. In this specific case, the service is painting houses (the entities) and the sequence is constrained by the need to avoid painting contiguous houses within a minimum time period. Neither specialized optimization software nor a general programming language is used to perform the optimization. Instead, the authors formulated an Excel spreadsheet solution utilizing Excel add-in tools (Premium Solver Platform, Evolver, and GeneHunter). Genetic algorithms, a more efficient technique than those frequently found in Excel optimization software, were used to reduce solution time. Model development time was minimal and execution time was not a significant constraint. It is likely that genetic algorithm tools will continue to be used in more and more applications.

INTRODUCTION

Optimization problems have the goal of obtaining an optimal solution while meeting desired objectives. Combinatorial optimization problems are an important subset. In combinatorial optimization problems, some or all of the variable values must be integers. These problems are often referred to as integer programming problems. In an all-integer problem, the solution space is restricted to a finite, although not necessarily small, number of possible solutions. Indeed, Meredith, Shafer, and Turban (2002) describe the solution space size as “sometimes astronomical.” The literature shows that such problems occur frequently; for instance, Hoffman and Padberg (n.d.) note their pervasiveness throughout most management fields. Further, combinatorial optimization problems are often of financial significance (Sensen, 2006). Postrel (2004) writes, “tweaking such mundane but strategically critical decisions as where to site plants, when to restock, andso on, can provide enormous productivity boosts.”

In this paper, we demonstrate the solution of a combinatorial problem: determining an acceptable sequence in which to provide a service to specific entities. In this case, the service is painting houses(the entities) and the sequence is constrained by the need to avoid painting contiguous houses within a minimum time period. Rather than using specialized optimization software or a general programming language to perform the optimization, we

Page 2: INTERNATIONAL JOURNAL OF MANAGEMENT RESEARCH AND …ijmrr.com/admin/upload_data/journal_Mike 2mar13mrr.pdf · 2014-01-23 · INTERNATIONAL JOURNAL OF MANAGEMENT RESEARCH AND REVIEW

IJMRR/ March 2013/ Volume 3/Issue 3/Article No-2/2497-2512 ISSN: 2249-7196

Copyright © 2012 Published by IJMRR. All rights reserved 2498

formulate an Excel spreadsheet solution that utilizes Excel add-in tools.The need for a reasonable solution time necessitated the use of techniques—i.e. genetic algorithms—beyond those found in the most often encountered Excel optimization software.

The solution method summarized above reflects the newer approaches encountered in teaching the fields of operations research and management science. According to Meredith, Shafer, and Turban (2002), optimization is one of the most widely taught topics in the management science discipline. However, the subject of optimization has fundamentally shifted emphases over time. Simchi-Levi (2004) describes the traditional emphasis as “focusing on algorithms and the theory behind different logistics problems.” Harnett and Horrell (1998) favor reduced emphasis on “formulas and mechanics of various techniques.” Interpreting and understanding the results have become the predominant foci while performing “tedious” calculations and mastering seemingly arcane programming software are no longer emphasized or expected (Meredith, Safer, and Turban, 2002).One reason for changing from the traditional emphasis is the new availability of large amounts of data. This tends to deemphasize theoretical or mathematics-proof-based approaches (Postrel, 2004). The shifting emphases have made spreadsheet software, especially Microsoft Excel, an important optimization tool (Meredith, Shafer, and Turban, 2002).

Solver, developed by Frontline Systems and included as an add-in tool with Microsoft Excel, possesses computing capability for small to moderately sized models.Unfortunately, Solver proved incapable of solving the problem proposed in this paper.Evolver, developed by Palisade Corporation and incorporated as an add-in tool with Microsoft Excel, possesses computing capability for large size models. Also utilized in this paper is Premium Solver Platform, developed by Frontline Systems. Both Evolver and Premium Solver Platform have options that incorporate genetic algorithms. Finally, Genehunter, developed by Ward Systems and also incorporated as an add-in tool with Microsoft Excel, was used in order to evaluate a purely genetic approach. The Literature Review discusses solution methods for combinatorial optimization problems and successful genetic algorithm applications.

LITERATURE REVIEW

Hoffman and Padberg (n.d.) discuss several well-known combinatorial optimization models: knapsack problems (including the capital budgeting problem), network and graph problems (including the assignment, traveling salesman, and Chinese postman problems), approximating nonlinear functions by piecewise linear functions (including the facility location problem), and rule-based scheduling problems. Einstein’s Riddle is an excellent example of a combinatorial optimization problem (Patterson, Harmel, Friesen, 2005). For the interested reader, the definitions of these problems are included in the Appendix. The problem discussed in this paper appeared in Discover in October 2000 (Kim 2000). The problem, which could be viewed as a riddle, is a classic combinatorial optimization.

Many solution approaches to combinatorial optimization problems have been developed over the years. Comparing combinatorial models to linear programming models (another type of optimization model—see the Appendix) reveals some of the difficulties with solving combinatorial problems. The set of possible answers for linear programming models—known as the “feasible region”—is a convex set and is easily explored via the calculus of

Page 3: INTERNATIONAL JOURNAL OF MANAGEMENT RESEARCH AND …ijmrr.com/admin/upload_data/journal_Mike 2mar13mrr.pdf · 2014-01-23 · INTERNATIONAL JOURNAL OF MANAGEMENT RESEARCH AND REVIEW

IJMRR/ March 2013/ Volume 3/Issue 3/Article No-2/2497-2512 ISSN: 2249-7196

Copyright © 2012 Published by IJMRR. All rights reserved 2499

derivatives. Combinatorial models, on the other hand, require (at best) a search of a discrete set of feasible points or (in the integer programming case) a search of disjoint sets of feasible solutions (Hoffman and Padberg, n.d.). Problems encountered in practice, i.e. practical problems, generate very large numbers of solutions. Routing, task allocation, and scheduling often produce “huge” numbers of alternative solutions (Affenzeller and Mayrhofer, 2002). Adding insult to injury, solutions are often local optima. Proving that a local optima is the global optima is very difficult in a non-convex feasible region (Hoffman and Padberg, n.d.).

Some approaches for solving combinatorial optimization problems include enumerative techniques, relaxation and decomposition techniques, and cutting plane approaches. Combinations of these techniques are often employed. For a combinatorial problem in which all of the variables are integers, enumerative techniques are a simple-to-implement approach, provided all the solutions can be evaluated. Unfortunately, the size of realistic problems often leads to a “combinatorial explosion,” meaning that the number of solutions is too large to list effectively (Hoffman and Padberg, n.d.). As an example, consider the popular Deal or No Deal game show (online version found at http://www.nbc.com/Deal_or_No_Deal/game/): there are 26! or approximately 4.03E26 ways to arrange the briefcases. This is far too many possible arrangements to enumerate. One possible enumerative approach is to eliminate inferior solutions; the most popular version is named branch and bound (Hoffman and Padberg, n.d.).

Regarding relaxation and decomposition techniques, using Lagrangian methods to incorporate the constraints into the function to be optimized is the predominant approach. Hoffman and Padberg (n.d.) note that “all Lagrangian approaches are problem dependent and no underlying general theory … has evolved.” Thus, a custom solution to any given problem would be required, and, unfortunately, the customization process does not appear simple to implement with commonly available tools.

Cutting plane approaches rely on converting the set of constraints that contain integer variables into an equivalent convex set. This conversion allows the optimization to proceed to a provably global optimum. Older approaches using cutting planes required extremely long computing times. Refinements have yielded shorter computing times. Hoffman and Padberg (n.d.) list several successful applications of cutting plane approaches.

Another approach to optimization is the use of heuristics. Heuristic solutions do not guarantee an optimal solution; rather, they trade computational complexity for the opportunity to find an acceptable solution. In fact, the relative goodness of the heuristic solution is often difficult to quantify. Another advantage of heuristics is that they are often easier to explain. Heuristics are often incorporated into the approaches discussed above in order to increase the speed at which optima are determined (Taha, 1989; Affenzeller and Mayrhofer, 2002). Affenzeller and Mayrhofer (2002) note that “heuristic techniques that mimic natural processes … have produced ‘good’ results in reasonable short runs for this class of optimization.” These authors note that genetic algorithms (discussed below) and simulated annealing are two such heuristics.

A genetic algorithm is a procedure that searches a feasible region by using techniques patterned after evolutionary processes. In particular, the variables of the problem are

Page 4: INTERNATIONAL JOURNAL OF MANAGEMENT RESEARCH AND …ijmrr.com/admin/upload_data/journal_Mike 2mar13mrr.pdf · 2014-01-23 · INTERNATIONAL JOURNAL OF MANAGEMENT RESEARCH AND REVIEW

IJMRR/ March 2013/ Volume 3/Issue 3/Article No-2/2497-2512 ISSN: 2249-7196

Copyright © 2012 Published by IJMRR. All rights reserved 2500

considered as chromosomes while the objective function gives information about the fitness of the solution. The algorithm identifies solutions with the best fitness while discarding the less fit solutions. New solutions for consideration are generated from the solutions with the best fitness (ala mating fit individuals). Other evolution-based metaphors associated with genetic algorithms include crossover, mutation, and natural selection. The following pseudo-code demonstrates the important parts of genetic algorithm operation (Wikipedia, n.d.):

1. Choose initial population

2. Repeat

a. Evaluate the individual fitnesses of a certain proportion of the population

b. Select pairs of best-ranking individuals to reproduce

c. Breed new generation through crossover and mutation

3. Until terminating condition

Genetic algorithms have been shown effective in combinatorial problems, and in problems with discontinuous feasible regions (Genehunter Operating Manual, n.d.). Like many heuristic approaches, genetic algorithms have also been incorporated into the optimization approaches discussed above in order to improve performance. Verma and Lakshminarayanan (2006) used a genetic algorithm to optimize diesel engine operation. These authors minimized fuel consumption while constrained by nitrogen-oxides emissions. In a vehicle routing problem, Cao, et. al. (2006) used a genetic algorithm approach to maximize the miles traveled by a train system constrained by safety and operational considerations. To optimize the weight and energy absorbed in automotive crash protection components, Nariman-zadeh, Darvizeh, and Jamali (2006) used a multi-objective genetic algorithm approach. These authors note that the genetic algorithm approach “helped to discover important relationships, with relatively little effort in terms of modelling (sic) preparation, that would otherwise have required a very thorough mathematical analysis.” In selecting the optimal set of manufacturing processes, Singh, Jain, and Jain (2006) compared the performance of genetic algorithms and simulated annealing. They found that the genetic algorithm approach was the better performer. Garcia, et. al. (2005) used genetic algorithms as a component of a decision support system to help find optimal “routes and schedules for airport ground operations.” In this paper, the genetic algorithm was used to augment a “time-space dynamic flow management algorithm.” The authors reported encountering multiple local optima.

The software used in this paper is Microsoft Excel with the following add-ins: Evolver (by Palisade), Premium Solver Platform (by Frontline), and GeneHunter (by Ward Systems Group). Evolver and Premium Solver Platform use combinations of techniques that include enumeration (branch and bound) and genetic algorithms. Interestingly, the initial approach to the subject problem was unsolvable when attempted using the ubiquitous Frontline Solver add-in for Microsoft Excel. When questioned about their product’s performance limitations, Frontline Systems technical support replied that the problem as formulated “was not smooth,” thus the reason for the failure (communication with author). The suggestion from Frontline’s technical support was to use Frontline Premium Solver Platform. The Frontline website

Page 5: INTERNATIONAL JOURNAL OF MANAGEMENT RESEARCH AND …ijmrr.com/admin/upload_data/journal_Mike 2mar13mrr.pdf · 2014-01-23 · INTERNATIONAL JOURNAL OF MANAGEMENT RESEARCH AND REVIEW

IJMRR/ March 2013/ Volume 3/Issue 3/Article No-2/2497-2512 ISSN: 2249-7196

Copyright © 2012 Published by IJMRR. All rights reserved 2501

(solver.com) is worth mentioning for a discussion of optimization in general. GeneHunter offers a pure genetic algorithm approach.

PROBLEM DESCRIPTION

The statement of the problem is shown below (Kim 2000):

The city of Icosapolis has four rows of five houses each [in a rectangular grid]. You have a contract to paint all 20 houses. It takes your crew one day to paint a house, and then it takes three days for the paint to dry on that house. Local laws forbid you to paint next to a house with wet paint, either horizontally, vertically, or diagonally. Determine an order in which you can paint all 20 houses in just 20 days.

Mathematical Formulation of the Problem

The first step in formulating this problem was to visualize the problem. The twenty houses were numbered 1to20 in a 4x5 grid. The spreadsheet depiction of the problem is displayed in Table 1.

Table 1: Grid of Houses Numbered 1 to 20

1 2 3 4 5

6 7 8 9 10

11 12 13 14 15

16 17 18 19 20

As stated previously, the problem can be solved as a combinatorial problem. One difference between this problem and the typical optimization problem is that we are not really looking for an “optimum” solution. However, since the spreadsheet optimization add-ins utilized by the authors require an objective, we improvised one. The objective is to assure that the difference between days painted for contiguous houses is a minimum of 4. Contiguous or adjoining houses may touch on ahorizontal, vertical, or diagonalline. For example house 1 is contiguous with house 2, 7 and 6. Likewise, house 13 is contiguous with houses 7, 8, 9, 14, 19, 18, 17,and 12.There are 59 contiguous pairs possible in this 4x5 grid. The formulation follows.

Objective Function: Assure the minimum number of days between painting contiguous houses is 4.

Subject To:

x11,x12,x13,x14,x15,x21,x22,x23,x24,x25,x31,x32,x33,x34,x35,x41,x42,x43,x44,x45 = all different

Where: (1) xij∈{1 -20 } (2) x11 = integer value occupying solution matrix location 1,1

x12 = integer value occupying solution matrix location 1,2 …………

x45 = integer value occupying solution matrix location 4,5

The “all different” constraintassures that the integers occupying the solution table are different at each matrix location. The objective function is a modified constraint which considers all 59possible contiguous pairs of houses.

Page 6: INTERNATIONAL JOURNAL OF MANAGEMENT RESEARCH AND …ijmrr.com/admin/upload_data/journal_Mike 2mar13mrr.pdf · 2014-01-23 · INTERNATIONAL JOURNAL OF MANAGEMENT RESEARCH AND REVIEW

IJMRR/ March 2013/ Volume 3/Issue 3/Article No-2/2497-2512 ISSN: 2249-7196

Copyright © 2012 Published by IJMRR. All rights reserved 2502

To understand the objective function formulation, consider Table 2. This table displays a calculation for each of the possible contiguous pairs in the grid of houses. The integer value occupying a location in the grid represents the day on which the house is painted. The absolute value of the difference is the number of days between painting a contiguous pair of houses. In this problem, the minimum allowed number of days is 4. We use the differences defined in Table 2 to construct an objective function that reflects the number of times, and severity with which, the 4 day constraint is violated. We want to minimize this objective function.

Table 2: 4 Day Calculations for Contiguous Houses

│x11-x12│ >=4 │x11-x22│ >=4 │x11-x21│ >=4

│x12-x13│ >=4 │x12-x23│ >=4 │x12-x22│ >=4 │x12-x21│>=4

│x13-x14│ >=4 │x13-x24│ >=4 │x13-x23│ >=4 │x13-x22│>=4

│x14-x15│ >=4 │x14-x25│ >=4 │x14-x24│ >=4 │x14-x23│>=4

│x21-x22│ >=4 │x21-x32│ >=4 │x21-x31│ >=4

│x22-x23│ >=4 │x22-x33│ >=4 │x22-x32│ >=4 │x22-x31│>=4

│x23-x24│ >=4 │x23-x34│ >=4 │x23-x33│ >=4 │x23-x32│>=4

│x24-x25│ >=4 │x24-x35│ >=4 │x24-x34│ >=4 │x24-x33│>=4

│x31-x32│ >=4 │x31-x42│ >=4 │x31-x41│ >=4

│x32-x33│ >=4 │x32-x43│ >=4 │x32-x42│ >=4 │x32-x41│>=4

│x33-x34│ >=4 │x33-x44│ >=4 │x33-x43│ >=4 │x33-x42│>=4

│x34-x35│ >=4 │x34-x45│ >=4 │x34-x44│ >=4 │x34-x43│>=4

│x41-x32│ >=4 │x41-x42│ >=4 │x42-x33│>=4 │x42-x43│ >=4

│x43-x34│ >=4 │x43-x44│ >=4 │x44-x35│>=4 │x44-x45│>=4

│x15-x24│ >=4 │x15-x25│ >=4 │x25-x34│>=4 │x25-x35│ >=4

│x35-x43│ >=4 │x35-x45│ >=4

Excel Formulation

The initial base-line spreadsheet formulation of the problem is displayed in Table 3.

Cells B2:F5 contain the initial assignment of the numbers 1-20 to the house grid and are included for reference. Cells B7:F10 contain the solution matrix, which is the suggested sequence for painting the houses when the model has completed optimization. Cells B12 and B31 are cells which will be used as the optimizationvalues that hold the sum of the solution matrix and the minimized value to assure a minimum of 4 days between painting contiguous houses. Cells B14:E29 contain the respective differences in days for each contiguous house pair that is defined by the solution sequence contained in Cells B7:F10. These cells will be referenced in the formulation of the objective function. Table 4 displays the formula view of the spreadsheet. Note that highlighted cells E14, E18, E22, D30 and E30 each hold a

Page 7: INTERNATIONAL JOURNAL OF MANAGEMENT RESEARCH AND …ijmrr.com/admin/upload_data/journal_Mike 2mar13mrr.pdf · 2014-01-23 · INTERNATIONAL JOURNAL OF MANAGEMENT RESEARCH AND REVIEW

IJMRR/ March 2013/ Volume 3/Issue 3/Article No-2/2497-2512 ISSN: 2249-7196

Copyright © 2012 Published by IJMRR. All rights reserved 2503

constant value of 4. These cells do not have a corresponding formula for the 4 day calculation as displayed in Tables 2 and 3.

Table 3: Initial Base Spreadsheet Formulation

1 B C D E F G H I J

2 1 2 3 4 5

3 6 7 8 9 10

4 11 12 13 14 15

5 16 17 18 19 20

6

7 1 2 3 4 5

8 6 7 8 9 10

9 11 12 13 14 15

10 16 17 18 19 20

11

12 210 SUM

13

14 1 6 5 4 9 0 0 0

15 1 6 5 4 9 0 0 0

16 1 6 5 4 9 0 0 0

17 1 6 5 4 9 0 0 0

18 1 6 5 4 9 0 0 0

19 1 6 5 4 9 0 0 0

20 1 6 5 4 9 0 0 0

21 1 6 5 4 9 0 0 0

22 1 6 5 4 9 0 0 0

23 1 6 5 4 9 0 0 0

24 1 6 5 4 9 0 0 0

25 1 6 5 4 9 0 0 0

26 4 1 4 1 0 9 0 9

27 4 1 4 1 0 9 0 9

28 4 5 4 5 0 0 0 0

29 4 5 4 4 0 0 0 0

30

31 1440000 OBJ

Table 4: Formula View of Spreadsheet Model

Solution

Area

Reference

Grid

Objective

Function value

Page 8: INTERNATIONAL JOURNAL OF MANAGEMENT RESEARCH AND …ijmrr.com/admin/upload_data/journal_Mike 2mar13mrr.pdf · 2014-01-23 · INTERNATIONAL JOURNAL OF MANAGEMENT RESEARCH AND REVIEW

IJMRR/ March 2013/ Volume 3/Issue 3/Article No-2/2497-2512 ISSN: 2249-7196

Copyright © 2012 Published by IJMRR. All rights reserved 2504

1 B C D E F

2 1 2 3 4 5

3 6 7 8 9 10

4 11 12 13 14 15

5 16 17 18 19 20

6

7 1 2 3 4 5

8 6 7 8 9 10

9 11 12 13 14 15

10 16 17 18 19 20

11

12 =SUM(B7:F10) SUM

13

14 =ABS(B7-C7) =ABS(B7-C8) =ABS(B7-B8) 4

15 =ABS(C7-D7) =ABS(C7-D8) =ABS(C7-C8) =ABS(C7-B8)

16 =ABS(D7-E7) =ABS(D7-E8) =ABS(D7-D8) =ABS(D7-C8)

17 =ABS(E7-F7) =ABS(E7-F8) =ABS(E7-E8) =ABS(E7-D8)

18 =ABS(B8-C8) =ABS(B8-C9) =ABS(B8-B9) 4

19 =ABS(C8-D8) =ABS(C8-D9) =ABS(C8-C9) =ABS(C8-B9)

20 =ABS(D8-E8) =ABS(D8-E9) =ABS(D8-D9) =ABS(D8-C9)

21 =ABS(E8-F8) =ABS(E8-F9) =ABS(E8-E9) =ABS(E8-D9)

22 =ABS(B9-C9) =ABS(B9-C10) =ABS(B9-B10) 4

23 =ABS(C9-D9) =ABS(C9-D10) =ABS(C9-C10) =ABS(C9-B10)

24 =ABS(D9-E9) =ABS(D9-E10) =ABS(D9-D10) =ABS(D9-C10)

25 =ABS(E9-F9) =ABS(E9-F10) =ABS(E9-E10) =ABS(E9-D10)

26 =ABS(B10-C9) =ABS(B10-C10) =ABS(C10-D9) =ABS(C10-D10)

27 =ABS(D10-E9) =ABS(D10-E10) =ABS(E10-F9) =ABS(E10-F10)

28 =ABS(F7-E8) =ABS(F7-F8) =ABS(F8-E9) =ABS(F8-F9)

29 =ABS(F9-E10) =ABS(F9-F10) 4 4

30

31 =(B12-210)^2 + 10000*SUM(G14:J29) OBJ

13 G H I J

14 =IF(B14>4,0,(B14-4)^2) =IF(C14>4,0,(C14-4)^2) =IF(D14>4,0,(D14-4)^2) =IF(E14>4,0,(E14-4)^2)

15 =IF(B15>4,0,(B15-4)^2) =IF(C15>4,0,(C15-4)^2) =IF(D15>4,0,(D15-4)^2) =IF(E15>4,0,(E15-4)^2)

16 =IF(B16>4,0,(B16-4)^2) =IF(C16>4,0,(C16-4)^2) =IF(D16>4,0,(D16-4)^2) =IF(E16>4,0,(E16-4)^2)

17 =IF(B17>4,0,(B17-4)^2) =IF(C17>4,0,(C17-4)^2) =IF(D17>4,0,(D17-4)^2) =IF(E17>4,0,(E17-4)^2)

18 =IF(B18>4,0,(B18-4)^2) =IF(C18>4,0,(C18-4)^2) =IF(D18>4,0,(D18-4)^2) =IF(E18>4,0,(E18-4)^2)

19 =IF(B19>4,0,(B19-4)^2) =IF(C19>4,0,(C19-4)^2) =IF(D19>4,0,(D19-4)^2) =IF(E19>4,0,(E19-4)^2)

20 =IF(B20>4,0,(B20-4)^2) =IF(C20>4,0,(C20-4)^2) =IF(D20>4,0,(D20-4)^2) =IF(E20>4,0,(E20-4)^2)

21 =IF(B21>4,0,(B21-4)^2) =IF(C21>4,0,(C21-4)^2) =IF(D21>4,0,(D21-4)^2) =IF(E21>4,0,(E21-4)^2)

22 =IF(B22>4,0,(B22-4)^2) =IF(C22>4,0,(C22-4)^2) =IF(D22>4,0,(D22-4)^2) =IF(E22>4,0,(E22-4)^2)

23 =IF(B23>4,0,(B23-4)^2) =IF(C23>4,0,(C23-4)^2) =IF(D23>4,0,(D23-4)^2) =IF(E23>4,0,(E23-4)^2)

24 =IF(B24>4,0,(B24-4)^2) =IF(C24>4,0,(C24-4)^2) =IF(D24>4,0,(D24-4)^2) =IF(E24>4,0,(E24-4)^2)

25 =IF(B25>4,0,(B25-4)^2) =IF(C25>4,0,(C25-4)^2) =IF(D25>4,0,(D25-4)^2) =IF(E25>4,0,(E25-4)^2)

26 =IF(B26>4,0,(B26-4)^2) =IF(C26>4,0,(C26-4)^2) =IF(D26>4,0,(D26-4)^2) =IF(E26>4,0,(E26-4)^2)

27 =IF(B27>4,0,(B27-4)^2) =IF(C27>4,0,(C27-4)^2) =IF(D27>4,0,(D27-4)^2) =IF(E27>4,0,(E27-4)^2)

28 =IF(B28>4,0,(B28-4)^2) =IF(C28>4,0,(C28-4)^2) =IF(D28>4,0,(D28-4)^2) =IF(E28>4,0,(E28-4)^2)

29 =IF(B29>4,0,(B29-4)^2) =IF(C29>4,0,(C29-4)^2) =IF(D29>4,0,(D29-4)^2) =IF(E29>4,0,(E29-4)^2)

Genetic Algorithm Software Configuration

Page 9: INTERNATIONAL JOURNAL OF MANAGEMENT RESEARCH AND …ijmrr.com/admin/upload_data/journal_Mike 2mar13mrr.pdf · 2014-01-23 · INTERNATIONAL JOURNAL OF MANAGEMENT RESEARCH AND REVIEW

IJMRR/ March 2013/ Volume 3/Issue 3/Article No-2/2497-2512 ISSN: 2249-7196

Copyright © 2012 Published by IJMRR. All rights reserved 2505

The three genetic algorithm spreadsheet add-in software optimizers utilized for this model were Premium Solver Platform, Evolver, and GeneHunter. The respective configuration parameters are displayed in Figures 1 through 4.

As displayed in Figure 1, the cell to be optimized is B31. As discussed, the smaller cell B31 becomes, the closer the solution is to satisfying the required 4 day minimum between contiguoushouses. An objective function equal to 0 is an optimal solution.Cells B7:F10 is the solution matrix which will hold the suggested sequence solution. The Solver engine utilized is the “Standard Evolutionary,” which is the Frontline Systems genetic algorithm optimizer.

Figure 1: Premium Solver Platform Parameters

The constraint $B$7:$F$10 = alldifferent assures that the integer values (1-20) thatoccupy the cells in the 4x5 matrix will be unique at each location. One other parameter that will need to be changed is under the options/integer tab. The Max Subproblems will need to be increased to 500000. Otherwise, the model will end prior to finding an optimum solution.

The Evolver configuration is shown in Figure 2. Aswith the Premium Solver Platform parameters, the Evolver solution cell is cell B31. The adjustable cells are B7:F10. The “alldifferent”

Page 10: INTERNATIONAL JOURNAL OF MANAGEMENT RESEARCH AND …ijmrr.com/admin/upload_data/journal_Mike 2mar13mrr.pdf · 2014-01-23 · INTERNATIONAL JOURNAL OF MANAGEMENT RESEARCH AND REVIEW

IJMRR/ March 2013/ Volume 3/Issue 3/Article No-2/2497-2512 ISSN: 2249-7196

Copyright © 2012 Published by IJMRR. All rights reserved 2506

Figure 2: Evolver Parameters

constraint is defined with an additional parameter: in the section “By Adjusting the Cells,” one should select Edit and select Order from the drop-list under Solving Method. Palisade Corporation (2004) defines the Order option as a permutation of a list of items, which scrambles the order of given values (1-20 in our model) and results in unique sequences, which allow a value to occur onlyonce. In essence, it accomplishes what Premium Solver Platform refers to as the “alldifferent” constraint. The parameter screen is displayed in Figure 3.

Figure 3: Evolver Adjustable Cells Parameters

Page 11: INTERNATIONAL JOURNAL OF MANAGEMENT RESEARCH AND …ijmrr.com/admin/upload_data/journal_Mike 2mar13mrr.pdf · 2014-01-23 · INTERNATIONAL JOURNAL OF MANAGEMENT RESEARCH AND REVIEW

IJMRR/ March 2013/ Volume 3/Issue 3/Article No-2/2497-2512 ISSN: 2249-7196

Copyright © 2012 Published by IJMRR. All rights reserved 2507

GeneHunter, by Ward Systems Group, is a pure genetic algorithm optimizer designed as a Microsoft Excel add-in. Its configuration screen is similar to Evolver’s and Solver’s as is shown in Figure 4. By setting the chromosome type to “Enumerated” and “Unique Genes,” the software is forced to return a set of unique integer values. The two constraints force the sequence to start at 1 and end at 20. As the genetic algorithm psuedocode shows, the algorithm requires some sort of terminating condition, usually number of iterations, number of iterations without improvement, or amount of time.Several different software configurations were attempted, as discussed below.

Figure 4: GeneHunter Parameters

Model Output

All three genetic algorithm optimizers were able to find optimal solutions satisfying the 4-day minimum constraint. As one might expect with a problem this size,there are multiple optimal solutions. If one were to exclude the 4-day constraint there are 20! possiblepermutations to this 4x5 matrix problem. A randomly selected representative feasible solution is displayed in Table 5. The suggested sequence shown in cells B7:F10 is house 1-day 3, house 2 - day 15, house 3 - day 1, etc. The final house to be painted is number 10. As shown in cells B14:E29, the minimum 4 day difference

Table 5: Feasible Solution to Combinatorial Problem

Page 12: INTERNATIONAL JOURNAL OF MANAGEMENT RESEARCH AND …ijmrr.com/admin/upload_data/journal_Mike 2mar13mrr.pdf · 2014-01-23 · INTERNATIONAL JOURNAL OF MANAGEMENT RESEARCH AND REVIEW

IJMRR/ March 2013/ Volume 3/Issue 3/Article No-2/2497-2512 ISSN: 2249-7196

Copyright © 2012 Published by IJMRR. All rights reserved 2508

1 B C D E F G H I J

2 1 2 3 4 5

3 6 7 8 9 10

4 11 12 13 14 15

5 16 17 18 19 20

6

7 3 15 1 13 5

8 11 7 19 9 20

9 17 2 14 4 16

10 10 6 18 8 12

11

12 210 SUM

13

14 12 4 8 4 0 0 0 0

15 14 4 8 4 0 0 0 0

16 12 8 18 6 0 0 0 0

17 8 7 4 6 0 0 0 0

18 4 9 6 4 0 0 0 0

19 12 7 5 10 0 0 0 0

20 10 15 5 17 0 0 0 0

21 11 7 5 5 0 0 0 0

22 15 11 7 4 0 0 0 0

23 12 16 4 8 0 0 0 0

24 10 6 4 8 0 0 0 0

25 12 8 4 14 0 0 0 0

26 8 4 8 12 0 0 0 0

27 14 10 8 4 0 0 0 0

28 4 15 16 4 0 0 0 0

29 8 4 4 4 0 0 0 0

30

31 0 OBJ

between painting adjoining houses is satisfied. There are thirteen instances where the 4 day minimum difference is realized. These instances are summarized in Table 6. Referring to the formula view of the spreadsheet displayed in Table 2 will help one understand model output. Table 7 presents an alternative view of the final schedule in the form of the 4x5 matrix. The schedule suggests the following house sequence 3, 12, 1, 14, 5, 17, 7,19 .…8 and 10. Feasible solutions were found by both Premium Solver Platform and Evolver in less than 30 seconds for multiple executions. Trials of GeneHunter resulted in a higher variability of solution time. Very often, Genehunter returned sub-optimal answers and had to be either manually restarted or instructed to continue. Often, the GeneHunter solution would improve very quickly until a solution with one or two violations of the 4-day rule resulted. Improvement to an optimal solution proceeded much slower beyond that point. Several attempts were made to adjust the configuration of GeneHunter in order to improve performance. The most significant improvement occurred when the default population size of 50 individuals was increased.

Table 6: Instances of 4 Day Difference Between Contiguous Houses

Solution

Page 13: INTERNATIONAL JOURNAL OF MANAGEMENT RESEARCH AND …ijmrr.com/admin/upload_data/journal_Mike 2mar13mrr.pdf · 2014-01-23 · INTERNATIONAL JOURNAL OF MANAGEMENT RESEARCH AND REVIEW

IJMRR/ March 2013/ Volume 3/Issue 3/Article No-2/2497-2512 ISSN: 2249-7196

Copyright © 2012 Published by IJMRR. All rights reserved 2509

Houses Days

1,7 3,7

2,8 15,19

2,6 15,11

4,9 13,9

6,7 11,7

12,17 2,6

13,18 14,18

14,19 4,8

16,17 10,6

19,20 8,12

5,9 5,9

10,15 20,16

15,20 16,12

Table 7 : Final Painting Schedule by House Number

3 12 1 14 5

17 7 19 9 16

6 20 4 13 2

15 11 18 8 10

SUMMARY AND CONCLUSION

The field of operations research is evolving and changing rapidly. Genetic algorithm software tools, both commercial and public domain, are being utilized in a broad range of industrial and economic applications. Just a few years ago, developing a solution to the problem discussed in this paper would have involved a relatively complex software program that would have presented both the software engineer and computer hardware a challenge. Utilizing the three spreadsheet add-ins discussed in this paper (Premium Solver Platform, Evolver and GeneHunter), model development time was minimal and hardware execution time proved to be an insignificant constraint. Each of the add-in tools represents a significant advancement in the utilization of genetic algorithms in optimization modeling.

Appendix

Assignment problem

The assignment problem refers to the “situation of assigning m jobs (or workers) to n machines. A job i (= 1, 2, … , m) when assigned to machine j (= 1, 2, … , n) incurs a cost cij. The objective is to assign the jobs to machines (one job per machine) at the least total cost” (Taha, 1987).

Capital budgeting problem

The capital budgeting problem is “one of finding a subset of the thousands of capital projects under consideration that yields the greatest return on investment, while satisfying specified financial, regulatory and project relationship requirements” (Hoffman and Padberg, 1985).

Chinese postman

Page 14: INTERNATIONAL JOURNAL OF MANAGEMENT RESEARCH AND …ijmrr.com/admin/upload_data/journal_Mike 2mar13mrr.pdf · 2014-01-23 · INTERNATIONAL JOURNAL OF MANAGEMENT RESEARCH AND REVIEW

IJMRR/ March 2013/ Volume 3/Issue 3/Article No-2/2497-2512 ISSN: 2249-7196

Copyright © 2012 Published by IJMRR. All rights reserved 2510

“One wishes to find a path … through the graph that starts and ends at the same node, that covers every edge of the graph at least once, and that has the shortest length possible” (Hoffman and Padberg, 1985).

Facility location problem

“One wishes to locate facilities such that the combined cost of building the facility … and the cost of production and shipping to customers … is minimized” (Hoffman and Padberg, 1985).

Genetic algorithm

“A genetic algorithm (GA) is a search technique used in computer science to find approximate solutions to optimization and search problems. Specifically it falls into the category of local search techniques and is therefore generally an incomplete search. Genetic algorithms are a particular class of evolutionary algorithms that use techniques inspired by evolutionary biology such as inheritance, mutation, selection, and crossover (also called recombination). Genetic algorithms are typically implemented as a computer simulation in which a population of abstract representations (called chromosomes) of candidate solutions (called individuals) to an optimization problem evolves toward better solutions. … The evolution starts from a population of completely random individuals and happens in generations. In each generation, the fitness of the whole population is evaluated, multiple individuals are stochastically selected from the current population (based on their fitness), and modified (mutated or recombined) to form a new population. The new population is then used in the next iteration of the algorithm.” Downloaded from http://en.wikipedia.org/wiki/Genetic_algorithm on 7/5/2006.

Knapsack problem:

“Suppose one wants to fill a knapsack that can hold a total weight of W with some combination of items from a list of n possible items each with weight wi and value vi so that the value of the items packed into the knapsack is maximized” (Hoffman and Padberg, 1985).

Linear Programming (LP):

“LP problems are optimization problems in which the objective function and the constraints are all linear.” Downloaded from http://en.wikipedia.org/wiki/Linear_programming on 4/2/2006.

Network and graph problems:

“Many optimization problems can be represented by a network where a network (or graph) is defined by nodes and by arcs connecting those nodes. Many practical problems arise around physical networks …. In addition, there are many problems which can be modeled as networks even when there is no underlying physical network” (Hoffman and Padberg, 1985).

Traveling Salesman problem (TSP):

Page 15: INTERNATIONAL JOURNAL OF MANAGEMENT RESEARCH AND …ijmrr.com/admin/upload_data/journal_Mike 2mar13mrr.pdf · 2014-01-23 · INTERNATIONAL JOURNAL OF MANAGEMENT RESEARCH AND REVIEW

IJMRR/ March 2013/ Volume 3/Issue 3/Article No-2/2497-2512 ISSN: 2249-7196

Copyright © 2012 Published by IJMRR. All rights reserved 2511

“Given a number of cities and the costs of traveling from any city to any other city, what is the cheapest round-trip route that visits each city exactly once and then returns to the starting city?” The general TSP application can be applied to printed circuit manufacturing. Cost of travel is sometimes simplified by considering only distance. Downloaded from http://en.wikipedia.org/wiki/Traveling_salesman_problem on 4/2/2006.

The TSP can be formulated as an optimization although the combinatorial nature of the problem makes finding a global optimum difficult (Taha, 1987). There is no general method of solution known (Weisstein, n.d.).

REFERENCES

Affenzeller M, Mayrhofer R. Generic Heuristics for Combinatorial Optimization Problems. Proceedings of the 9th International Conference on Operational Research KOI 2002; 83-92, ISBN953-6931-08-7, Grafica, Trogir, Croatia.

Cao Y, Lin Z, Giras C, Disk D. Routing for the Pennsylvania Maglev system by a genetic algorithm. Proceedings of the Institute of Mechanical Engineers—Part F—Journal of Rail & Rapid Transit. 2006; 220: 55-67.

Evolver: The Genetic Algorithm Solver for Microsoft Excel, Windows Version Release 4.0. (October 2004). Palisade Corp. Newfield, New Jersey.

Garcia J, Berlanga A, Molina J, Casar J. Optimization of airport ground operations integrating genetic and dynamic flow management algorithms. AI Communications 2005; 18: 143-164.

Kim S. Bogglers (Oct. 2000 Discover). Downloaded from http://home.att.net/~numericana/ answer/recreational.htm#icosapolis

Hoffman K, Padher M. Combinatorial and Integer Optimization. "LP-based combinatorial problem solving, Annals Operations Research 1985; 4: 145-194.

Meredeth J, Shafer S, Turban E. Quantitative Business Modeling. 1st ed. Mason, Ohio, South-Western, 2001.

Nariman-zadeh N, Darvizeh A, Jamali A. Pareto optimization of energy absorption of square aluminum columns using multi-objective genetic algorithms. Proceedings of the Institution of Mechanical Engineers—Part B—Engineering Manufacture. 2006; 220: 213-224.

Patterson M, Harmel B, Friesen D. Einstein’s Riddle. International Journal of Technology, Policy and Management 2006.

Postrel V. Operations Everything.2004. The Boston Globe downloaded on 7/15/2006 from http://www.boston.com/news/globe/reprints/062704_postrel/

Sensen N. (n.d.) Downloaded from http://wwwcs.uni-paderborn.de/cs/ag-monien/RESEARCH/CO, on 4/02/2006.

Simchi-Levi D. quoted in Postrel, V. “Operations Everything.” The Boston Globe downloaded on 7/15/2006 from http://www.boston.com/news/globe/reprints/062704_postrel/

Page 16: INTERNATIONAL JOURNAL OF MANAGEMENT RESEARCH AND …ijmrr.com/admin/upload_data/journal_Mike 2mar13mrr.pdf · 2014-01-23 · INTERNATIONAL JOURNAL OF MANAGEMENT RESEARCH AND REVIEW

IJMRR/ March 2013/ Volume 3/Issue 3/Article No-2/2497-2512 ISSN: 2249-7196

Copyright © 2012 Published by IJMRR. All rights reserved 2512

Singh P, Jain S, Jain P. Comparative study of genetic algorithm and simulated annealing for optimal tolerance design formulated with discrete and continuous variables. Proceedings of the Institution of Mechanical Engineers—Part B—Engineering Manufacture. 2006; 220: 735-760.

Taha H. Operations Research: An Introduction. 4th edition. MacMillan Publishing Company: New York, 1987.

Verma R, Lakshminarayanan P. A case study on the application of a genetic algorithm for optimization of engine parameters. Proceedings of the Institution of Mechanical Engineers—Part D—Journal of Automobile Engineering 2006; 220: 471-479.

Ward Systems Group, Inc. (n.d.) Genehunter operating manual.

Weisstein E. Traveling Salesman Problem. From Mathworld –A Wolfram Web Resource. Downloaded on 4/2/2006 from http://mathworld.wolfram.com/TravelingSalesmanProblem.html

Wikipedia (n.d.) “Genetic Algorithm.” Downloaded on 7/5/2006 from http://en.wikipedia.org/wiki/ Genetic_algorithm

Wikipedia. (n.d.) “Traveling Salesman Problem.” downloaded on 4/2/2006 fromhttp://en.wikipedia.org/ wiki/Traveling_salesman