назад Оглавление вперед


[Старт] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34] [35] [36] [37] [38] [39] [40] [41] [42] [43] [44] [45] [46] [47] [48] [49] [50] [51] [52] [53] [54] [55] [56] [57] [58] [59] [60] [61] [62] [63] [64] [65] [66] [67] [68] [69] [70] [71] [72] [73] [74] [75] [76] [77] [78] [79] [80] [81] [82] [83] [84] [85] [86] [87] [88] [89] [90] [91] [92] [93] [94] [95] [96] [97] [98] [99] [100] [101] [102] [103] [104] [105] [106] [107] [108] [109] [110] [111] [112] [113] [114] [115] [116] [117] [118] [119] [120] [121] [122] [123] [124] [125] [126] [127] [128] [129] [130] [131] [132] [133] [134] [135] [136] [137] [138] [139] [140] [141] [142] [143] [144] [145] [146] [147] [148] [ 149 ] [150] [151] [152] [153] [154] [155] [156] [157] [158] [159] [160] [161] [162] [163] [164] [165] [166] [167] [168] [169] [170] [171] [172] [173] [174] [175] [176] [177] [178] [179] [180] [181] [182] [183] [184] [185] [186] [187] [188] [189] [190] [191] [192] [193] [194] [195] [196] [197] [198] [199] [200] [201] [202] [203] [204] [205] [206] [207] [208] [209] [210] [211] [212] [213] [214] [215] [216] [217] [218] [219] [220] [221] [222] [223] [224] [225] [226] [227] [228] [229] [230] [231] [232] [233] [234] [235] [236] [237] [238] [239] [240] [241] [242] [243] [244] [245] [246] [247] [248] [249] [250] [251] [252] [253] [254] [255] [256] [257] [258] [259] [260] [261] [262] [263] [264] [265] [266] [267] [268] [269] [270] [271] [272] [273] [274] [275] [276] [277] [278] [279] [280] [281] [282] [283] [284] [285] [286] [287] [288] [289] [290] [291] [292] [293]


149

Оптимальное решение

Состояние

2216 + 1,1909хз

Этап 2.

/:W= max {s2+/3(x3)},

s2 = (1,083 - 1,078а)/2 + 1,0783х2 = 0,006985/2 + 1,25273х2, х3 = 2000 - 0,005/2 + 0,022х2.

Следовательно,

max {0,0О6985/2 +1,2527х, + 2216 +1,1909(2000 - 0,005/2

+ 0,022х2)} =

max {4597,8 + 0,0010305/, +1,27893хЛ.

0</,Sa, 1

Оптимальное решение

Состояние

Нхг)

4597,8 + 1.27996X2

Этап 1.

/.(•О = 0™*{*.+Л (•*:)}.

s, = (1,084 - 1,0784)/, + 1,0784х, = 0,01005/, + 1,3504*,, х2 = 2000 - 0,005/, + 0,023х,.

Следовательно,

/,(х,)= max {0,01005/, +1,3504х, +4597,8 + 1,27996(2000 - 0,005/, + 0,023*,)} = = max {7157,7 + 0,00365/. +1,37984х,}.

Оптимальное решение

Состояние

n(Xi)

Xi = $4000

7I57,7 + 1,38349xi

$4000

При вычислениях в обратном направлении получаем следующее.

х2 = 2000 - 0,005 х 4000 + 0,023 х 4000 = 2072 долл., х3 = 2000 - 0,005 х 2072 + 0,022 х 2072 = 2035,22 долл., xt = 2000 - 0,005 х 0 + 0,026 х 2035,22 = 2052,92.

Следовательно, оптимальное решение будет записано следующим образом.



Год Оптимальное решение Решение, принимаемое инвестором Накопления

= х1

Инвестировать xi

= 4000 долл. в первый банк

.si = 5441,80 долл.

= хг

Инвестировать Хг

= 2072 долл. в первый банк

S2 = 2610,13 долл.

Инвестировать хз =

2035,22 долл. во второй банк

S3 = 2365,13 долл.

Л"

Инвестировать х4 =

2052,92 долл. во второй банк

и = 2274,64 долл.

Всего

12 691,70 долл.

УПРАЖНЕНИЯ 10.3.4

1. Решите задачу из примера 10.3.4, предполагая, что г, = 0,085, г2 = 0,08. Кроме того, пусть Рг = 5000 долл., Р2 = 4000 долл., Р3 = 3000 долл. и Р4 = 2000 долл.

2. Некий инвестор с начальным капиталом в 10 000 долл. должен решить в конце каждого года, сколько денег истратить и сколько инвестировать. Каждый инвестированный доллар возвращает а = 1,09 долл. в конце года. Истраченные у долларов на протяжении каждого года приносят удовлетворение, определяемое количественно как эквивалент получения g{y)=fy долларов. Решите задачу с помощью методов динамического программирования для периода в п = 5 лет.

3. Фермер имеет k овец. В конце каждого года он принимает решение, сколько овец продать и сколько оставить. Прибыль от продажи одной овцы в ;-й год равна Количество овец в конце /-го года удваивается к концу (; + 1)-го года. Фермер планирует в конце п-то года полностью продать овец.

a) Получите общее рекуррентное уравнение для решения задачи.

b) Решите задачу при следующих данных: п = 3 года, к = 2 овцы, р, = 100 долл., р2 = 130 долл., р3 = 120 долл..

10.3.5. Модели управления запасами

Важной областью применения методов динамического программирования являются задачи управления запасами. В главах 11 и 16 рассмотрены некоторые задачи этого класса, при этом в главе 11 рассматриваются детерминированные модели, а в главе 16 - стохастические.

10.4. ПРОБЛЕМА РАЗМЕРНОСТИ

Во всех рассмотренных выше задачах динамического программирования состояние системы на любом этапе описывалось единственной переменной. Например, в задаче о загрузке (раздел 10.3.1) вес предмета является единственным ограничением, которое учитывается при его погрузке. Вместе с этим объем судна также может быть ограничительной величиной. В этом случае говорят, что состояние системы является двухмерным, так как формируется двумя переменными: весом и объемом.

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



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

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

Пример 10.4.1

Предприятие обрабатывающей промышленности выпускает два вида продукции. Производственный процесс составляет 430 минут в день. Для производства единицы продукции первого вида требуется 2 минуты, а второго - 1 минута. На дневной объем производства продукции первого вида ограничений нет (кроме возможностей производственного процесса), максимальный ежедневный спрос на второй вид продукции равен 230 единиц. Реализация единицы продукции первого вида приносит прибыль в 2 долл., а второго- 5 долл. Необходимо найти оптимальное решение задачи максимизации прибыли методами динамического программирования.

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

Максимизировать г = 2х1 + 5хг

при ограничениях

2х, + х2<430, х2<230, х,, х2>0.

Элементы модели динамического программирования таковы.

1. Этап / соответствует продукции /, /=1,2.

2. Альтернативой х, на /-м этапе является объем производства продукции /,/=1,2.

3. Состояние (vb wx) представляет количество ресурсов, необходимое для производства продукции вида 1 и 2 (производственное время и ограничение на спрос) и используемое на этапах 1 и 2.

4. Состояние (v2, w2) представляет количество ресурсов, необходимое для производства продукции вида 1 и 2 (производственное время и ограничение на спрос) и используемое на этапе 2.

Этап 2. Пусть /2(v2, w2) представляет максимальную прибыль для этапа 2 (прибыль от выпуска продукции вида 2) при заданном состоянии (v2, w2). Тогда

/2(v2, w2)= max{5x2}.

Следовательно, max{5x2} имеет место при x2 = min{v2, w2). Имеем следующее решение для второго этапа.

Оптимальное решение

Состояние

f2(v2, w2)

(v2, w2)

5 min{v2, w2}

min{v2, w2)

[Старт] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34] [35] [36] [37] [38] [39] [40] [41] [42] [43] [44] [45] [46] [47] [48] [49] [50] [51] [52] [53] [54] [55] [56] [57] [58] [59] [60] [61] [62] [63] [64] [65] [66] [67] [68] [69] [70] [71] [72] [73] [74] [75] [76] [77] [78] [79] [80] [81] [82] [83] [84] [85] [86] [87] [88] [89] [90] [91] [92] [93] [94] [95] [96] [97] [98] [99] [100] [101] [102] [103] [104] [105] [106] [107] [108] [109] [110] [111] [112] [113] [114] [115] [116] [117] [118] [119] [120] [121] [122] [123] [124] [125] [126] [127] [128] [129] [130] [131] [132] [133] [134] [135] [136] [137] [138] [139] [140] [141] [142] [143] [144] [145] [146] [147] [148] [ 149 ] [150] [151] [152] [153] [154] [155] [156] [157] [158] [159] [160] [161] [162] [163] [164] [165] [166] [167] [168] [169] [170] [171] [172] [173] [174] [175] [176] [177] [178] [179] [180] [181] [182] [183] [184] [185] [186] [187] [188] [189] [190] [191] [192] [193] [194] [195] [196] [197] [198] [199] [200] [201] [202] [203] [204] [205] [206] [207] [208] [209] [210] [211] [212] [213] [214] [215] [216] [217] [218] [219] [220] [221] [222] [223] [224] [225] [226] [227] [228] [229] [230] [231] [232] [233] [234] [235] [236] [237] [238] [239] [240] [241] [242] [243] [244] [245] [246] [247] [248] [249] [250] [251] [252] [253] [254] [255] [256] [257] [258] [259] [260] [261] [262] [263] [264] [265] [266] [267] [268] [269] [270] [271] [272] [273] [274] [275] [276] [277] [278] [279] [280] [281] [282] [283] [284] [285] [286] [287] [288] [289] [290] [291] [292] [293]