Помощь в написании студенческих работ
Антистрессовый сервис

Задача линейного целочисленного программирования с булевыми переменными

КурсоваяПомощь в написанииУзнать стоимостьмоей работы

Суть задачи из данного варианта заключается в том, что один ресурс можно применить, только к одному объекту, в качестве примера можно привести распределение рабочих по местам, так чтобы минимизировать время производства продукции. Была составлена математическая модель задачи и получено оптимальное решение при помощи программного пакета LINDO. Было так же рассмотрено решение задачи со списками… Читать ещё >

Задача линейного целочисленного программирования с булевыми переменными (реферат, курсовая, диплом, контрольная)

[Введите текст].

1. Задание на курсовую работу

Имеется m списков длиной n элементов каждый, в которых в разном порядке расположены одни и те же элементы.

Требуется:

Составить результатный (компромиссный) список, наименее уклоняющийся от исходных списков (в смысле потери места каждым элементом).

Показать, как изменится решение, если:

элемент а1 закрепить на первом месте, а а4 на пятом, списки имеют разный приоритет: w1=0.3, w2=0.7;

Привести примеры практически возможных ситуаций, в которых могут возникать такие списки, из которых в последующем формируется один.

Исходные данные Таблица 1.

Список.

Элементы.

a7.

a2.

a10.

a4.

a6.

a9.

a1.

a8.

a5.

a3.

a1.

a7.

a6.

a9.

a2.

a5.

a10.

a3.

a4.

a8.

2. Расчетно-пояснительная часть

2.1 Построение математической модели задачи

В качестве переменных примем булевы переменные, имеющие следующий смысл:

1, если i-ый элемент стоит на j-ой позиции в результирующем списке.

0, иначе при i = 1,2,…, n и j = 1,2,…, n.

В качестве критерия принимаем общую (суммарную) величину потерь мест каждым элементом при установке в компромиссный список, которую нужно минимизировать.

где С — величина потери места i-ым элементом в установке его на j-е место в компромиссном списке.

Cij — показывает на сколько i-ый элемент результирующего списка будет отклоняться от исходных списков, если он будет стоять на j-ой позиции в результирующем списке.

Где k — текущий список.

m — количество списков.

A — текущее положение в списке Условия:

а) Каждый элемент должен войти в компромиссный список ровно один раз:

б) В каждую позицию в компромиссном списке должен войти ровно один элемент Посчитаем цену перемещения элементов Таблица 2.

ij.

Составим модель задачи.

min.

6 X11+6 X12+6 X13+6 X14+6 X15+6 X16+6 X17+8 X18+10 X19+12 X110+.

5 X21+3 X22+3 X23+3 X24+3 X25+5 X26+7 X27+9 X28+11 X29+13 X210+.

16 X31+14 X32+12 X33+10 X34+8 X35+6 X36+4 X37+2 X38+2 X39+2 X310+.

11 X41+9 X42+7 X43+5 X44+5 X45+5 X46+5 X47+5 X48+5 X49+7 X410+.

13 X51+11 X52+9 X53+7 X54+5 X55+3 X56+3 X57+3 X58+3 X59+5 X510+.

6 X61+4 X62+2 X63+2 X64+2 X65+4 X66+6 X67+8 X68+10 X69+12 X610+.

1 X71+1 X72+3 X73+5 X74+7 X75+9 X76+11 X77+13 X78+15 X79+17 X710+.

16 X81+14 X82+12 X83+10 X84+8 X85+6 X86+4 X87+2 X88+2 X89+2 X810+.

8 X91+6 X92+4 X93+2 X94+2 X95+2 X96+4 X97+6 X98+8 X99+10 X910+.

8 X101+6 X102+4 X103+4 X104+4 X105+4 X106+4 X107+6 X108+8 X109+10 X1010.

st.

каждый элемент должен один раз войти в компромиссный список.

X11 + X12 + X13 + X14 + X15 + X16 + X17 + X18 + X19 + X110 = 1.

X21 + X22 + X23 + X24 + X25 + X26 + X27 + X28 + X29 + X210 = 1.

X31 + X32 + X33 + X34 + X35 + X36 + X37 + X38 + X39 + X310 = 1.

X41 + X42 + X43 + X44 + X45 + X46 + X47 + X48 + X49 + X410 = 1.

X51 + X52 + X53 + X54 + X55 + X56 + X57 + X58 + X59 + X510 = 1.

X61 + X62 + X63 + X64 + X65 + X66 + X67 + X68 + X69 + X610 = 1.

X71 + X72 + X73 + X74 + X75 + X76 + X77 + X78 + X79 + X710 = 1.

X81 + X82 + X83 + X84 + X85 + X86 + X87 + X88 + X89 + X810 = 1.

X91 + X92 + X93 + X94 + X95 + X96 + X97 + X98 + X99 + X910 = 1.

X101 + X102 + X103 + X104 + X105 + X106 + X107 + X108 + X109 + X1010 = 1.

в каждую позицию компромиссного списка должен войти, только один элемент.

X11 + X21 + X31 + X41 + X51 + X61 + X71 + X81 + X91 + X101 = 1.

X12 + X22 + X32 + X42 + X52 + X62 + X72 + X82 + X92 + X102 = 1.

X13 + X23 + X33 + X43 + X53 + X63 + X73 + X83 + X93 + X103 = 1.

X14 + X24 + X34 + X44 + X54 + X64 + X74 + X84 + X94 + X104 = 1.

X15 + X25 + X35 + X45 + X55 + X65 + X75 + X85 + X95 + X105 = 1.

X16 + X26 + X36 + X46 + X56 + X66 + X76 + X86 + X96 + X106 = 1.

X17 + X27 + X37 + X47 + X57 + X67 + X77 + X87 + X97 + X107 = 1.

X18 + X28 + X38 + X48 + X58 + X68 + X78 + X88 + X98 + X108 = 1.

X19 + X29 + X39 + X49 + X59 + X69 + X79 + X89 + X99 + X109 = 1.

X110 + X210 + X310 + X410 + X510 + X610 + X710 + X810 + X910 + X1010 = 1.

end.

int 100.

Вывод программы.

LP OPTIMUM FOUND AT STEP 30.

OBJECTIVE VALUE = 30.0.

FIX ALL VARS.(60) WITH RC > 2.0.

NEW INTEGER SOLUTION OF 30.0 AT BRANCH 0 PIVOT 30.

BOUND ON OPTIMUM: 30.0.

ENUMERATION COMPLETE. BRANCHES= 0 PIVOTS= 30.

LAST INTEGER SOLUTION IS THE BEST FOUND.

RE-INSTALLING BEST SOLUTION…

OBJECTIVE FUNCTION VALUE.

1) 30.0.

VARIABLE VALUE REDUCED COST.

X11 0.0 6.0.

X12 0.0 6.0.

X13 0.0 6.0.

X14 0.0 6.0.

X15 0.0 6.0.

X16 1.0 6.0.

X17 0.0 6.0.

X18 0.0 8.0.

X19 0.0 10.0.

X110 0.0 12.0.

X21 0.0 5.0.

X22 1.0 3.0.

X23 0.0 3.0.

X24 0.0 3.0.

X25 0.0 3.0.

X26 0.0 5.0.

X27 0.0 7.0.

X28 0.0 9.0.

X29 0.0 11.0.

X210 0.0 13.0.

X31 0.0 16.0.

X32 0.0 14.0.

X33 0.0 12.0.

X34 0.0 10.0.

X35 0.0 8.0.

X36 0.0 6.0.

X37 0.0 4.0.

X38 1.0 2.0.

X39 0.0 2.0.

X310 0.0 2.0.

X41 0.0 11.0.

X42 0.0 9.0.

X43 0.0 7.0.

X44 0.0 5.0.

X45 0.0 5.0.

X46 0.0 5.0.

X47 0.0 5.0.

X48 0.0 5.0.

X49 1.0 5.0.

X410 0.0 7.0.

X51 0.0 13.0.

X52 0.0 11.0.

X53 0.0 9.0.

X54 0.0 7.0.

X55 0.0 5.0.

X56 0.0 3.0.

X57 1.0 3.0.

X58 0.0 3.0.

X59 0.0 3.0.

X510 0.0 5.0.

X61 0.0 6.0.

X62 0.0 4.0.

X63 0.0 2.0.

X64 0.0 2.0.

X65 1.0 2.0.

X66 0.0 4.0.

X67 0.0 6.0.

X68 0.0 8.0.

X69 0.0 10.0.

X610 0.0 12.0.

X71 1.0 1.0.

X72 0.0 1.0.

X73 0.0 3.0.

X74 0.0 5.0.

X75 0.0 7.0.

X76 0.0 9.0.

X77 0.0 11.0.

X78 0.0 13.0.

X79 0.0 15.0.

X710 0.0 17.0.

X81 0.0 16.0.

X82 0.0 14.0.

X83 0.0 12.0.

X84 0.0 10.0.

X85 0.0 8.0.

X86 0.0 6.0.

X87 0.0 4.0.

X88 0.0 2.0.

X89 0.0 2.0.

X810 1.0 2.0.

X91 0.0 8.0.

X92 0.0 6.0.

X93 0.0 4.0.

X94 1.0 2.0.

X95 0.0 2.0.

X96 0.0 2.0.

X97 0.0 4.0.

X98 0.0 6.0.

X99 0.0 8.0.

X910 0.0 10.0.

X101 0.0 8.0.

X102 0.0 6.0.

X103 1.0 4.0.

X104 0.0 4.0.

X105 0.0 4.0.

X106 0.0 4.0.

X107 0.0 4.0.

X108 0.0 6.0.

X109 0.0 8.0.

X1010 0.0 10.0.

NO. ITERATIONS= 30.

BRANCHES= 0 DETERM.= 1.000E 0.

Из данного решения следует, что оптимальное значение L = 30, компромиссный список имеет вид.

Таблица 3.

Элемент.

a7.

a2.

a10.

a9.

a6.

a1.

a5.

a3.

a4.

a8.

Стоимость.

Что бы показать, как измениться решение при закреплении элемента а1 на первом месте, а а4 на пятом, отредактируем условие.

st.

X11 = 1! зафексировали элемент а1 на первом месте.

X21 + X22 + X23 + X24 + X25 + X26 + X27 + X28 + X29 + X210 = 1.

X31 + X32 + X33 + X34 + X35 + X36 + X37 + X38 + X39 + X310 = 1.

X45 =1 !зафиксировали элемент a4 на пятом месте.

X51 + X52 + X53 + X54 + X55 + X56 + X57 + X58 + X59 + X510 = 1.

X61 + X62 + X63 + X64 + X65 + X66 + X67 + X68 + X69 + X610 = 1.

X71 + X72 + X73 + X74 + X75 + X76 + X77 + X78 + X79 + X710 = 1.

X81 + X82 + X83 + X84 + X85 + X86 + X87 + X88 + X89 + X810 = 1.

X91 + X92 + X93 + X94 + X95 + X96 + X97 + X98 + X99 + X910 = 1.

X101 + X102 + X103 + X104 + X105 + X106 + X107 + X108 + X109 + X1010 = 1.

X11 + X21 + X31 + X41 + X51 + X61 + X71 + X81 + X91 + X101 = 1.

X12 + X22 + X32 + X42 + X52 + X62 + X72 + X82 + X92 + X102 = 1.

X13 + X23 + X33 + X43 + X53 + X63 + X73 + X83 + X93 + X103 = 1.

X14 + X24 + X34 + X44 + X54 + X64 + X74 + X84 + X94 + X104 = 1.

X15 + X25 + X35 + X45 + X55 + X65 + X75 + X85 + X95 + X105 = 1.

X16 + X26 + X36 + X46 + X56 + X66 + X76 + X86 + X96 + X106 = 1.

X17 + X27 + X37 + X47 + X57 + X67 + X77 + X87 + X97 + X107 = 1.

X18 + X28 + X38 + X48 + X58 + X68 + X78 + X88 + X98 + X108 = 1.

X19 + X29 + X39 + X49 + X59 + X69 + X79 + X89 + X99 + X109 = 1.

X110 + X210 + X310 + X410 + X510 + X610 + X710 + X810 + X910 + X1010 = 1.

Вывод программы.

LP OPTIMUM FOUND AT STEP 21.

OBJECTIVE VALUE = 30.0.

FIX ALL VARS.(71) WITH RC > 2.0.

NEW INTEGER SOLUTION OF 30.0 AT BRANCH 0 PIVOT 21.

BOUND ON OPTIMUM: 30.0.

ENUMERATION COMPLETE. BRANCHES= 0 PIVOTS= 21.

LAST INTEGER SOLUTION IS THE BEST FOUND.

RE-INSTALLING BEST SOLUTION…

OBJECTIVE FUNCTION VALUE.

1) 30.0.

VARIABLE VALUE REDUCED COST.

X11 1.0 6.0.

X12 0.0 6.0.

X13 0.0 6.0.

X14 0.0 6.0.

X15 0.0 6.0.

X16 0.0 6.0.

X17 0.0 6.0.

X18 0.0 8.0.

X19 0.0 10.0.

X110 0.0 12.0.

X21 0.0 5.0.

X22 0.0 3.0.

X23 1.0 3.0.

X24 0.0 3.0.

X25 0.0 3.0.

X26 0.0 5.0.

X27 0.0 7.0.

X28 0.0 9.0.

X29 0.0 11.0.

X210 0.0 13.0.

X31 0.0 16.0.

X32 0.0 14.0.

X33 0.0 12.0.

X34 0.0 10.0.

X35 0.0 8.0.

X36 0.0 6.0.

X37 0.0 4.0.

X38 1.0 2.0.

X39 0.0 2.0.

X310 0.0 2.0.

X41 0.0 11.0.

X42 0.0 9.0.

X43 0.0 7.0.

X44 0.0 5.0.

X45 1.0 5.0.

X46 0.0 5.0.

X47 0.0 5.0.

X48 0.0 5.0.

X49 0.0 5.0.

X410 0.0 7.0.

X51 0.0 13.0.

X52 0.0 11.0.

X53 0.0 9.0.

X54 0.0 7.0.

X55 0.0 5.0.

X56 0.0 3.0.

X57 0.0 3.0.

X58 0.0 3.0.

X59 1.0 3.0.

X510 0.0 5.0.

X61 0.0 6.0.

X62 0.0 4.0.

X63 0.0 2.0.

X64 1.0 2.0.

X65 0.0 2.0.

X66 0.0 4.0.

X67 0.0 6.0.

X68 0.0 8.0.

X69 0.0 10.0.

X610 0.0 12.0.

X71 0.0 1.0.

X72 1.0 1.0.

X73 0.0 3.0.

X74 0.0 5.0.

X75 0.0 7.0.

X76 0.0 9.0.

X77 0.0 11.0.

X78 0.0 13.0.

X79 0.0 15.0.

X710 0.0 17.0.

X81 0.0 16.0.

X82 0.0 14.0.

X83 0.0 12.0.

X84 0.0 10.0.

X85 0.0 8.0.

X86 0.0 6.0.

X87 0.0 4.0.

X88 0.0 2.0.

X89 0.0 2.0.

X810 1.0 2.0.

X91 0.0 8.0.

X92 0.0 6.0.

X93 0.0 4.0.

X94 0.0 2.0.

X95 0.0 2.0.

X96 1.0 2.0.

X97 0.0 4.0.

X98 0.0 6.0.

X99 0.0 8.0.

X910 0.0 10.0.

X101 0.0 8.0.

X102 0.0 6.0.

X103 0.0 4.0.

X104 0.0 4.0.

X105 0.0 4.0.

X106 0.0 4.0.

X107 1.0 4.0.

X108 0.0 6.0.

X109 0.0 8.0.

X1010 0.0 10.0.

NO. ITERATIONS= 21.

BRANCHES= 0 DETERM.= 1.000E 0.

Из данного решения следует, что оптимальное значение L = 30, компромиссный список имеет вид.

Таблица 4.

Элемент.

a1.

a7.

a2.

a6.

a4.

a9.

a10.

a3.

a5.

a8.

Стоимость.

В случае когда, списки имеют разный приоритет, нужно помножить цену потери места на приоритет — w.

Тогда матрица оценок для задачи примет следующий вид.

Таблица 5.

ij.

1,8.

2,2.

2,6.

3,4.

3,8.

4,2.

5,2.

6,2.

7,2.

3,1.

2,1.

1,7.

1,3.

0,9.

1,9.

2,9.

3,9.

4,9.

5,9.

7,6.

6,6.

5,6.

4,6.

3,6.

2,6.

1,6.

0,6.

1,4.

6,5.

5,5.

4,5.

3,5.

3,1.

2,7.

2,3.

1,9.

1,5.

2,5.

5,9.

4,9.

3,9.

2,9.

1,9.

0,9.

1,3.

1,7.

2,1.

3,1.

2,6.

1,6.

0,6.

1,4.

2,4.

3,4.

4,4.

5,4.

6,4.

0,7.

0,3.

1,3.

2,3.

3,3.

4,3.

5,3.

6,3.

7,3.

8,3.

8,4.

7,4.

6,4.

5,4.

4,4.

3,4.

2,4.

1,4.

0,6.

3,6.

2,6.

1,6.

0,6.

1,4.

2,4.

3,4.

4,4.

5,4.

4,8.

3,8.

2,8.

2,4.

1,6.

1,2.

2,2.

3,2.

4,2.

Изменим критерий модели задачи.

min.

1.8 X11 + 2.2 X12 + 2.6 X13 + 3.0 X14 + 3.4 X15 + 3.8 X16 + 4.2 X17 + 5.2 X18 + 6.2 X19 + 7.2 X110 +.

3.1 X21 + 2.1 X22 + 1.7 X23 + 1.3 X24 + 0.9 X25 + 1.9 X26 + 2.9 X27 + 3.9 X28 + 4.9 X29 + 5.9 X210 +.

7.6 X31 + 6.6 X32 + 5.6 X33 + 4.6 X34 + 3.6 X35 + 2.6 X36 + 1.6 X37 + 0.6 X38 + 1.0 X39 + 1.4 X310 +.

6.5 X41 + 5.5 X42 + 4.5 X43 + 3.5 X44 + 3.1 X45 + 2.7 X46 + 2.3 X47 + 1.9 X48 + 1.5 X49 + 2.5 X410 +.

5.9 X51 + 4.9 X52 + 3.9 X53 + 2.9 X54 + 1.9 X55 + 0.9 X56 + 1.3 X57 + 1.7 X58 + 2.1 X59 + 3.1 X510 +.

2.6 X61 + 1.6 X62 + 0.6 X63 + 1.0 X64 + 1.4 X65 + 2.4 X66 + 3.4 X67 + 4.4 X68 + 5.4 X69 + 6.4 X610 +.

0.7 X71 + 0.3 X72 + 1.3 X73 + 2.3 X74 + 3.3 X75 + 4.3 X76 + 5.3 X77 + 6.3 X78 + 7.3 X79 + 8.3 X710 +.

8.4 X81 + 7.4 X82 + 6.4 X83 + 5.4 X84 + 4.4 X85 + 3.4 X86 + 2.4 X87 + 1.4 X88 + 1.0 X89 + 0.6 X810 +.

3.6 X91 + 2.6 X92 + 1.6 X93 + 0.6 X94 + 1.0 X95 + 1.4 X96 + 2.4 X97 + 3.4 X98 + 4.4 X99 + 5.4 X910 +.

4.8 X101 + 3.8 X102 + 2.8 X103 + 2.4 X104 + 2.0 X105 + 1.6 X106 + 1.2 X107 + 2.2 X108 + 3.2 X109 + 4.2 X1010.

Вывод LINDO с данными критерием:

FIX ALL VARS.(82) WITH RC > 0.500 000.

NEW INTEGER SOLUTION OF 9.0 AT BRANCH 0 PIVOT 13.

BOUND ON OPTIMUM: 9.0.

ENUMERATION COMPLETE. BRANCHES= 0 PIVOTS= 13.

LAST INTEGER SOLUTION IS THE BEST FOUND.

RE-INSTALLING BEST SOLUTION…

OBJECTIVE FUNCTION VALUE.

1) 9.0.

VARIABLE VALUE REDUCED COST.

X11 1.0 1.800 000.

X12 0.0 2.200 000.

X13 0.0 2.600 000.

X14 0.0 3.0.

X15 0.0 3.400 000.

X16 0.0 3.800 000.

X17 0.0 4.200 000.

X18 0.0 5.200 000.

X19 0.0 6.200 000.

X110 0.0 7.200 000.

X21 0.0 3.100 000.

X22 0.0 2.100 000.

X23 0.0 1.700 000.

X24 0.0 1.300 000.

X25 1.0 0.900 000.

X26 0.0 1.900 000.

X27 0.0 2.900 000.

X28 0.0 3.900 000.

X29 0.0 4.900 000.

X210 0.0 5.900 000.

X31 0.0 7.600 000.

X32 0.0 6.600 000.

X33 0.0 5.600 000.

X34 0.0 4.600 000.

X35 0.0 3.600 000.

X36 0.0 2.600 000.

X37 0.0 1.600 000.

X38 1.0 0.600 000.

X39 0.0 1.0.

X310 0.0 1.400 000.

X41 0.0 6.500 000.

X42 0.0 5.500 000.

X43 0.0 4.500 000.

X44 0.0 3.500 000.

X45 0.0 3.100 000.

X46 0.0 2.700 000.

X47 0.0 2.300 000.

X48 0.0 1.900 000.

X49 1.0 1.500 000.

X410 0.0 2.500 000.

X51 0.0 5.900 000.

X52 0.0 4.900 000.

X53 0.0 3.900 000.

X54 0.0 2.900 000.

X55 0.0 1.900 000.

X56 1.0 0.900 000.

X57 0.0 1.300 000.

X58 0.0 1.700 000.

X59 0.0 2.100 000.

X510 0.0 3.100 000.

X61 0.0 2.600 000.

X62 0.0 1.600 000.

X63 1.0 0.600 000.

X64 0.0 1.0.

X65 0.0 1.400 000.

X66 0.0 2.400 000.

X67 0.0 3.400 000.

X68 0.0 4.400 000.

X69 0.0 5.400 000.

X610 0.0 6.400 000.

X71 0.0 0.700 000.

X72 1.0 0.300 000.

X73 0.0 1.300 000.

X74 0.0 2.300 000.

X75 0.0 3.300 000.

X76 0.0 4.300 000.

X77 0.0 5.300 000.

X78 0.0 6.300 000.

X79 0.0 7.300 000.

X710 0.0 8.300 000.

X81 0.0 8.400 000.

X82 0.0 7.400 000.

X83 0.0 6.400 000.

X84 0.0 5.400 000.

X85 0.0 4.400 000.

X86 0.0 3.400 000.

X87 0.0 2.400 000.

X88 0.0 1.400 000.

X89 0.0 1.0.

X810 1.0 0.600 000.

X91 0.0 3.600 000.

X92 0.0 2.600 000.

X93 0.0 1.600 000.

X94 1.0 0.600 000.

X95 0.0 1.0.

X96 0.0 1.400 000.

X97 0.0 2.400 000.

X98 0.0 3.400 000.

X99 0.0 4.400 000.

X910 0.0 5.400 000.

X101 0.0 4.800 000.

X102 0.0 3.800 000.

X103 0.0 2.800 000.

X104 0.0 2.400 000.

X105 0.0 2.0.

X106 0.0 1.600 000.

X107 1.0 1.200 000.

X108 0.0 2.200 000.

X109 0.0 3.200 000.

X1010 0.0 4.200 000.

NO. ITERATIONS= 13.

BRANCHES= 0 DETERM.= 1.000E 0.

Из данного решения следует, что оптимальное значение L = 9,.

Оптимальное решение в виде компромиссного списка имеет вид:

Таблица 6.

Элемент.

a1.

a7.

a6.

a9.

a2.

a5.

a10.

a3.

a4.

a8.

Стоимость.

1.8.

0.3.

0.6.

0.6.

0.9.

0.9.

1.2.

0.6.

1.5.

0.6.

По данным, указанными в таблице 6, видно, что элементы компромиссного списка, остались на местах списка с более высоким приоритетом.

3. Пример задачи

Суть задачи из данного варианта заключается в том, что один ресурс можно применить, только к одному объекту, в качестве примера можно привести распределение рабочих по местам, так чтобы минимизировать время производства продукции.

Заключение

компромиссный список задача программа В курсовой работе рассмотрена задача линейного целочисленного программирования с булевыми переменными.

Была составлена математическая модель задачи и получено оптимальное решение при помощи программного пакета LINDO. Было так же рассмотрено решение задачи со списками имеющие разный приоритет.

1. Гольдштейн А. Л. Оптимизация в LINDO / Перм. гос. техн. ун-т, Пермь, 2000. — 88 с.

2. Юдин Д. Б., Гольдштейн Е. Г. Задачи и методы линейного программирования / М.: «Сов. радио», 1961 — 494 с.

Показать весь текст
Заполнить форму текущей работой