43
Session 5b

Session 5b

  • Upload
    bowie

  • View
    109

  • Download
    0

Embed Size (px)

DESCRIPTION

Session 5b. Overview. Evolutionary Solver (Genetic Algorithm) Advertising Example Product Design Example Conjoint Analysis. Nonlinear Problems. Some nonlinear problems can be formulated in a linear fashion (i.e. some network problems). - PowerPoint PPT Presentation

Citation preview

Page 1: Session 5b

Session 5b

Page 2: Session 5b

Decision Models -- Prof. Juran

2

OverviewEvolutionary Solver(Genetic Algorithm)• Advertising Example• Product Design Example

– Conjoint Analysis

Page 3: Session 5b

Decision Models -- Prof. Juran

3

Nonlinear ProblemsSome nonlinear problems can be formulated in a linear fashion (i.e. some network problems). Other nonlinear functions can be solved with our basic methods (i.e. smooth, continuous functions that are concave or convex, such as portfolio variances).However, there are many types of nonlinear problems that pose significant difficulties.

Page 4: Session 5b

Decision Models -- Prof. Juran

4

Nonlinear ProblemsThe linear solution to a nonlinear (say, integer) problem may be infeasible.The linear solution may be far away from the actual optimal solution.Some functions have many local minima (or maxima), and Solver is not guaranteed to find the global minimum (or maximum).

Page 5: Session 5b

Decision Models -- Prof. Juran

5

3 Solvers• Simplex LP Solver• GRG Nonlinear Solver• Evolutionary Solver

Page 6: Session 5b

Decision Models -- Prof. Juran

6

Radio Advertising ExampleMusic radio WABC has commercials of the following lengths (in seconds):

15, 15, 20, 25, 30, 35, 40, 57

The commercials must be assigned to 60-second breaks. What is the fewest number of breaks that are needed to air all of the commercials?

Page 7: Session 5b

Decision Models -- Prof. Juran

7

Managerial Problem DefinitionDecision VariablesWhich commercials get assigned to which programming breaks.ObjectiveMinimize the total number of breaks.ConstraintsEvery advertisement must be aired.No break can be longer than 60 seconds.

Page 8: Session 5b

Decision Models -- Prof. Juran

8

FormulationDecision VariablesDefine xi to be an integer variable identifying the break to which commercial i is assigned. For example, if commercial 1 is assigned to break 4, then x1 = 4.It should be clear that we won’t need any more than eight breaks, because there are only eight commercials. These eight x variables are the decision variables.

Page 9: Session 5b

Decision Models -- Prof. Juran

9

Define yj to be a binary variable, such that yj = 0 if no commercials are assigned to break j, and yj = 1 if any commercials are assigned to break j. Define vij to be a binary variable such that vij = 1 if commercial i is assigned to break j, and vij = 0 otherwise.Define wi to be the duration of commercial i.

Formulation

Page 10: Session 5b

Decision Models -- Prof. Juran

10

FormulationNote that the duration of break j is equal to

Let tj be the amount of “overtime” in break j. That is,

8

1iijivw

8

10 ,60max

iijij vwt

Page 11: Session 5b

Decision Models -- Prof. Juran

11

FormulationObjectiveOur objective, then, is to:

Minimize Z =

where m is a “large number”.

8

1

8

1 jj

jj tmy

Page 12: Session 5b

Decision Models -- Prof. Juran

12

FormulationThis is a good example of an advanced optimization trick: taking a constraint and building it into the objective function. It doesn’t really matter what value we use for m, as long as it is sufficiently large as to prevent any tj > 0. As it happens, in this problem m = 100 works fine.

Page 13: Session 5b

Decision Models -- Prof. Juran

13

FormulationConstraintsFor all xi, 1≤ xi ≤ 8.For all xi, xi is an integer.For all yj, yj is binary.

Page 14: Session 5b

Decision Models -- Prof. Juran

14

Solution Methodology123456789

101112131415161718192021222324252627

A B C D ELength of break (seconds) 60

Lengths of commercials Assignments of commercials to breaksCommercial Length Commercial Break

1 15 1 12 15 2 13 20 3 14 25 4 15 30 5 16 35 6 17 40 7 18 57 8 1

Information on breaksBreak Seconds Used? Amt over max

1 237 1 1772 0 0 03 0 0 04 0 0 05 0 0 06 0 0 07 0 0 08 0 0 0

Total "cost" 17701

=SUMIF($E$5:$E$12,A16,$B$5:$B$12)

=IF(B23>0,1,0)

=MAX(B23-$B$1,0)=SUM(C16:C23)+100*SUM(D16:D23)

Page 15: Session 5b

Decision Models -- Prof. Juran

15

Solution MethodologyThe objective function is in B25, including a penalty of 100 units per second if any breaks go over 60 seconds.

The decision variables (xi) are in the range E5:E12 (in the spreadsheet shown, all commercials are assigned to break 1, so xi = 1 for all i).

The range B5:B12 contains the durations of each commercial (wi), and the range B16:B23 uses the Excel SUMIF function to calculate the duration of each commercial break.

Page 16: Session 5b

Decision Models -- Prof. Juran

16

Solution MethodologyThe range C16:C23 keeps track of which breaks have any assignments (the yi variables), while the range D16:D23 keeps track of how much the breaks go over the maximum limit (the tj variables). Recall that the yi and tj variables are the basic ingredients of the productive function.

Notice how the use of the IF function in C16:C23 precludes the need to have an explicit binary constraint in Solver for the yi variables.

Page 17: Session 5b

Decision Models -- Prof. Juran

17

Solution MethodologyThe standard simplex algorithm (Solver’s default method) won’t work on this problem. The GRG Nonlinear algorithm will make an honest effort, but is likely to give up without finding the optimal solution. This is because of our use of MAX, IF, and SUMIF functions, resulting in discontinuities in our productive function and constraints as functions of the decision variables.

However, the Evolutionary Solver, a genetic algorithm, can do a good job with a problem like this.

Page 18: Session 5b

Decision Models -- Prof. Juran

18

Page 19: Session 5b

Decision Models -- Prof. Juran

19

Solution MethodologyThe Evolutionary Solver operates in a completely different way from the other types. Instead of searching in a structured way guaranteed to reach the optimal solution, genetic algorithms operate somewhat like biological evolutionary processes, with some degree of randomness in the steps taken from one solution to the next.

In a finite period of time, the Evolutionary Solver is not guaranteed to find the optimal solution, but it will find very good solutions and try to improve upon them.

Page 20: Session 5b

Decision Models -- Prof. Juran

20

Optimal Solution123456789

10111213141516171819202122232425

A B C D ELength of break (seconds) 60

Lengths of commercials Assignments of commercials to breaksCommercial Length Commercial Break

1 15 1 52 15 2 53 20 3 44 25 4 65 30 5 56 35 6 67 40 7 48 57 8 3

Information on breaksBreak Seconds Used? Amt over max

1 0 0 02 0 0 03 57 1 04 60 1 05 60 1 06 60 1 07 0 0 08 0 0 0

Total "cost" 4

Page 21: Session 5b

Decision Models -- Prof. Juran

21

ConclusionsThe solution indicates that commercials 1, 2, and 5 should go in one break, 3 and 7 should go in another, 4 and 6 should go in another, and 8 should go by itself.

A reasonably bright person could solve this problem in their head, of course. The trick here was to set it up so that a computer could solve it, providing a method for the solution of much larger problems with the same basic structure.

Page 22: Session 5b

Decision Models -- Prof. Juran

22

Product Design ExampleConjoint Analysis is a multivariate technique used specifically to understand how respondents develop preferences for products or services. It is based on the simple premise that consumers evaluate the value or utility of a product (real or hypothetical) by combining the utility provided by each attribute characterizing the product.-- Prof. Pradeep Chintagunta, Univ. of Chicago

Page 23: Session 5b

Decision Models -- Prof. Juran

23

Conjoint AnalysisConjoint Analysis is a decompositional method. Respondents provide overall evaluations of products that are presented to them as combinations of attributes. These evaluations are then used to infer the utilities of the individual attributes comprising the products. In many situations, this is preferable to asking respondents how important certain attributes are, or to rate how well a product performs on each of a number of attributes.

Page 24: Session 5b

Decision Models -- Prof. Juran

24

Conjoint AnalysisAfter determining the contribution of each attribute to the consumer’s overall evaluation, one could1.Define the product with the optimal combination of features2.Predict market shares of different products with different sets of features3.Isolate groups of customers who place differing importances on different features4.Identify marketing opportunities by exploring the market potential for feature combinations not currently available5.Show the relative contributions of each attribute and each level to the overall evaluation of the product

Page 25: Session 5b

Decision Models -- Prof. Juran

25

Product Design Example

Page 26: Session 5b

Decision Models -- Prof. Juran

26

Product Design ExampleAssume that a consumer's purchase decision on an electric razor is based on four attributes, each of which can be set at one of three levels (1, 2, or 3). Using conjoint analysis, our analysts have divided the market into five segments (labeled as customers 1, 2, 3, 4, and 5) and have determined the "part-worth" that each customer gives to each level of each attribute.

Page 27: Session 5b

Decision Models -- Prof. Juran

27

We assume here that all customers within a particular segment view electric razors more or less the same in terms of which levels of which attributes constitute an attractive product. We also assume that customers in a segment conduct a sort of mathematical analysis (perhaps unconsciously) in which they weigh the various attributes of a product to come up with an overall value with respect to competing products.Conjoint analysis usually assumes the customer buys the product yielding the highest total part-worth.

Page 28: Session 5b

Decision Models -- Prof. Juran

28

Part-Worths Levels Segment 1 Segment 2 Segment 3 Segment 4 Segment 5

1 (Slim) 1 1 1 4 4 2 (Wide) 1 1 4 3 4 Attribute 1

(Handle) 3 (Long) 2 4 3 3 3 1 (Rubber) 4 1 3 2 4 2 (Textured Plastic) 1 4 4 1 3 Attribute 2

(Grip) 3 (Smooth Plastic) 4 1 3 1 1 1 (Blue) 4 1 3 3 1 2 (Black) 1 4 4 3 1 Attribute 3

(Color) 3 (Red) 3 2 2 4 4 1 (Aloe) 4 4 3 4 4 2 (Lube) 2 2 2 2 3 Attribute 4

(Strip) 3 (None) 2 2 2 2 4

Page 29: Session 5b

Decision Models -- Prof. Juran

29

For example, consider Segment 1 and these two products:

We assume that customers in Segment 1 will not buy Product B, because they value Product A at 1 + 4 + 4 + 4 = 13 and Product B at 1 + 1 + 1 + 2 = 5.

Razor A Razor B Attribute 1 (Handle) 1 (Slim) 2 (Wide) Attribute 2 (Grip) 1 (Rubber) 2 (Textured Plastic) Attribute 3 (Color) 1 (Blue) 2 (Black) Attribute 4 (Strip) 1 (Aloe) 2 (Lube)

Page 30: Session 5b

Decision Models -- Prof. Juran

30

Razor A Razor B Levels Seg. 1 Levels Seg. 1

Attribute 1 1 (Slim) 1 1 (Slim) 1 (Handle) 2 (Wide) 1 2 (Wide) 1

3 (Long) 2 3 (Long) 2

Attribute 2 1 (Rubber) 4 1 (Rubber) 4 (Grip) 2 (Textured Plastic) 1 2 (Textured Plastic) 1

3 (Smooth Plastic) 4 3 (Smooth Plastic) 4

Attribute 3 1 (Blue) 4 1 (Blue) 4 (Color) 2 (Black) 1 2 (Black) 1

3 (Red) 3 3 (Red) 3

Attribute 4 1 (Aloe) 4 1 (Aloe) 4 (Strip) 2 (Lube) 2 2 (Lube) 2

3 (None) 2 3 (None) 2

Total 13 5

Page 31: Session 5b

Decision Models -- Prof. Juran

31

Currently there is a single product in the market that sets all four attributes equal to 1 (call it Razor 0). We want to introduce two new types of electric razors, and capture as much of the market as possible. We want to design a two-product line that maximizes the number of market segments that will buy one of our two products. Assume that in the case of a tie, the consumer does not purchase our product.

Page 32: Session 5b

Decision Models -- Prof. Juran

32

Managerial FormulationDecision VariablesWhich levels of each attribute to design into each of our two products.ObjectiveMaximize the number of customer segments who will buy one of our products.ConstraintsThere are only four attributes, each of which must be assigned to one of three existing levels for each product. (In other words, no product can have more or less than one level per attribute.)

Page 33: Session 5b

Decision Models -- Prof. Juran

33

Formulation: PreliminariesThere are five customer segments, and we will index them from 1 to 5 with the subscript letter i.There are three products (the existing Razor 0, plus our Razors 1 and 2 to be designed), and we will index them from 1 to 3 with the subscript letter j.There are four product attributes, and we will index them from 1 to 4 with the subscript letter k.There are three possible levels for each attribute, and we will index them from 1 to 3 with the subscript letter l.

Page 34: Session 5b

Decision Models -- Prof. Juran

34

Symbol Variable Description ijx A binary variable; 1 if segment i will buy product j,

0 otherwise. ijv The total “value” that segment i places on product j.

For our two products (j = 1, 2), 1ijx if jiij vv not products >

jkla A binary variable; 1 if product j has level l of attribute k, 0 otherwise. There are 12 of these per product; 36 total in this problem.

iklb The “value” placed by segment i on level l of attribute k.

There are 12 of these per segment; 60 total for this problem (as shown in the table on slide 27).

Page 35: Session 5b

Decision Models -- Prof. Juran

35

Example: Using the example on slide 28, consider Segment 1’s evaluation of Razors A and B.For Razor A:

Av1

4

1

3

11

k lklAklba

3,4,13,4,3,2,13,2,2,2,12,2,1,2,11,2,3,1,13,1,2,1,12,1,1,1,11,1, ... bababababababa AAAAAAA 20...401041201011 004004004001 13

Page 36: Session 5b

Decision Models -- Prof. Juran

36

For Razor B:

Bv1

4

1

3

11

k lklBklba

3,4,13,4,3,2,13,2,2,2,12,2,1,2,11,2,3,1,13,1,2,1,12,1,1,1,11,1, ... bababababababa BBBBBBB 20...401140201110 020010010010 5

Since , , and .

In English, customer segment 1 will buy Razor A and not buy Razor B.

BA vv 11 > 11 Ax 01 Bx

Page 37: Session 5b

Decision Models -- Prof. Juran

37

FormulationDecision Variables We need to set 12 jkla variables (attribute levels) for each of our two products. Objective

Maximize Z =

5

1

2

1i jijx

Constraints

For each attribute k in product j,

3

11

ljkla

All jkla are binary.

Page 38: Session 5b

Decision Models -- Prof. Juran

38

Solution Methodology1234567891011121314151617181920212223242526

A B C D E F G H I J K L M N O P QRazor 1 Attributes Number buying ours

Part-worths for segments 2Attribute Level 1 2 3 4 5Handle 2 Wide 1 1 4 3 4Grip 2 Textured Plastic 1 4 4 1 3 Maximums 13 11 14 13 13Color 2 Black 1 4 4 3 1 Buy ours? 0 1 1 0 0Strip 2 Lube 2 2 2 2 3Totals 5 11 14 9 11

Razor 2 Attributes Attribute LevelPart-worths for segments Handle Sgmt 1 Sgmt 2 Sgmt 3 Sgmt 4 Sgmt 5

Attribute Level 1 2 3 4 5 1 Slim 1 1 1 4 4Handle 3 Long 2 4 3 3 3 2 Wide 1 1 4 3 4Grip 3 Smooth Plastic 4 1 3 1 1 3 Long 2 4 3 3 3Color 3 Red 3 2 2 4 4 GripStrip 3 None 2 2 2 2 4 1 Rubber 4 1 3 2 4Totals 11 9 10 10 12 2 Textured Plastic 1 4 4 1 3

3 Smooth Plastic 4 1 3 1 1Razor 0 Attributes Color

Part-worths for segments 1 Blue 4 1 3 3 1Attribute Level 1 2 3 4 5 2 Black 1 4 4 3 1

Handle 1 Slim 1 1 1 4 4 3 Red 3 2 2 4 4Grip 1 Rubber 4 1 3 2 4 StripColor 1 Blue 4 1 3 3 1 1 Aloe 4 4 3 4 4Strip 1 Aloe 4 4 3 4 4 2 Lube 2 2 2 2 3Totals 13 7 10 13 13 3 None 2 2 2 2 4

=VLOOKUP($B5,$K$16:$Q$19,E$21+2)

=SUM(E4:E7)

=MAX(D26,D8,D17)=IF(D26<M5,1,0)

=SUM(M6:Q6)

Page 39: Session 5b

Decision Models -- Prof. Juran

39

Solution MethodologyWe have used an elegant Excel trick to make the model more manageable, mainly through the use of VLOOKUP functions in the ranges D4:H7, D13:H16, and D22:H25. This lets us reduce the complete 5 x 12 matrix of iklb “part-worth” values (see slide 27) down to a 5 x 4 matrix relevant to the attribute levels actually used by a given product. This lets us collapse the 24 jkla decision variables down to 8 changing cells (B4:B7 and B13:B16). Instead of being binary, these are now integers between 1 and 3. The use of MAX and IF functions makes this a good problem for the Evolutionary Solver.

Page 40: Session 5b

Decision Models -- Prof. Juran

40

Page 41: Session 5b

Decision Models -- Prof. Juran

41

Optimal Solution1234567891011121314151617181920212223242526

A B C D E F G H I J K L M N O P QRazor 1 Attributes Number buying ours

Part-worths for segments 5Attribute Level 1 2 3 4 5Handle 1 Slim 1 1 1 4 4Grip 1 Rubber 4 1 3 2 4 Maximums 14 10 12 14 16Color 3 Red 3 2 2 4 4 Buy ours? 1 1 1 1 1Strip 1 Aloe 4 4 3 4 4Totals 12 8 9 14 16

Razor 2 Attributes Attribute LevelPart-worths for segments Handle Sgmt 1 Sgmt 2 Sgmt 3 Sgmt 4 Sgmt 5

Attribute Level 1 2 3 4 5 1 Slim 1 1 1 4 4Handle 3 Long 2 4 3 3 3 2 Wide 1 1 4 3 4Grip 1 Rubber 4 1 3 2 4 3 Long 2 4 3 3 3Color 1 Blue 4 1 3 3 1 GripStrip 1 Aloe 4 4 3 4 4 1 Rubber 4 1 3 2 4Totals 14 10 12 12 12 2 Textured Plastic 1 4 4 1 3

3 Smooth Plastic 4 1 3 1 1Razor 0 Attributes Color

Part-worths for segments 1 Blue 4 1 3 3 1Attribute Level 1 2 3 4 5 2 Black 1 4 4 3 1

Handle 1 Slim 1 1 1 4 4 3 Red 3 2 2 4 4Grip 1 Rubber 4 1 3 2 4 StripColor 1 Blue 4 1 3 3 1 1 Aloe 4 4 3 4 4Strip 1 Aloe 4 4 3 4 4 2 Lube 2 2 2 2 3Totals 13 7 10 13 13 3 None 2 2 2 2 4

Page 42: Session 5b

Decision Models -- Prof. Juran

42

ConclusionsIt turns out that there is a line of two products that can capture all five segments!Razor 1, with attribute levels (1, 1, 3, 1), captures segments 4 and 5.Razor 2, with attribute levels (3, 1, 1, 1), captures segments 1, 2, and 3.

Page 43: Session 5b

Decision Models -- Prof. Juran

43

SummaryEvolutionary Solver(Genetic Algorithm)• Advertising Example

– Integer and Binary tricks– Moving Constraints into the productive

Function– MAX, IF, SUMIF

• Product Design Example– Conjoint Analysis– VLOOKUP, MAX, IF