Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Моделирование экосистем.doc
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
3.06 Mб
Скачать

Рациональный «раскрой».

На предприятии из листов металла размером 5х10 м требуется выкраивать заготовки типа А и В, имеющих размеры соответственно 4х1 м и 2х3 м. Известны потребности в этих заготовках – нужно выкроить не менее 1600 заготовок каждого типа. Необходимо предложить такой план раскроя, который позволит выполнить плановое задание с минимальными затратами материала (листов).

Каждый лист может быть раскроен по-разному. Например, из листа можно выкроить одну заготовку А, а оставшуюся часть листа отправить в отходы. Сразу ясно, что такой способ раскроя очень плох, так как в отходы идет материал, из которого еще можно выкраивать заготовки. Поэтому с самого начала сосредоточим внимание только на «разумных» способах раскроя, то есть на таких, где в отходы идет материал, из которого уже нельзя выкроить ни одной заготовки. На рисунке приведены такие способы раскроя.

1 способ раскроя: 2 способ раскроя:

12 заготовок типа А 0 заготовок типа А

0 заготовок типа В 8 заготовок типа В

■ – отходы ■ – отходы

3 способ раскроя: 4 способ раскроя:

8 заготовок типа А 6 заготовок типа А

3 заготовки типа В 4 заготовки типа В

отходов нет ■ – отходы

Обозначим через хi (i = 1, 2, 3, 4) количество листов металла, которые раскраиваем i-м способом. Теперь понятно, что такое «план раскроя» – это набор чисел х1. х2, х3, х4, которые показывают, сколько листов раскраиваются каждым способом. Поскольку мы хотим выполнить план с минимальными затратами материала, целевая функция имеет вид:

min {x1 + x2 + x3 + x4}.

Если один лист раскраивается первым способом, то из него получается 12 заготовок типа А. Если же этот способ применен к х1 листам, то заготовок типа А получится 12х1. Рассуждая аналогично по отношению к другим способам раскроя, можно записать условие выполнения плана по заготовкам типа А:

12х1+0х2+8х3 + 6х4 ≥ 1600 и точно так же по заготовкам типа В:

0х1+8х2+3х3+4х4≥1600.

В каждом уравнении 4 слагаемых – по числу способов раскроя. Кроме того, понятно, что величины xi (i = 1, 2, 3, 4) не должны быть отрицательными, так как нельзя раскроить отрицательное число листов материала.

Окончательная формулировка задачи: найти хi (i = 1 … 4), который обеспечит минимум целевой функции

z = x1 + x2 + x3 + x4

при условиях:

12х1+0х2+8х3 + 6х4 ≥ 1600

0х1+8х2+3х3+4х4≥1600

х1 ≥ 0,  х2 ≥ 0,  х3 ≥ 0, х4 ≥ 0.

В результате пришли к задаче линейного программирования. С помощью стандартных приёмов получаем решение – оптимальный план раскроя, состоящий в следующем: 125 листов кроятся по второму способу раскроя (х2 = 125), а 200 листов – по третьему способу раскроя (х3 = 200), х1 = х4 = 0, то есть первый и четвертый способы вообще не используются. Получилось ровно по 1600 заготовок типа А и В. Конечно далеко не всегда удается получить раскрой почти без отхода или лишних заготовок, но линейное программирование гарантирует минимум затрат листов. «Вручную» такой план раскроя, особенно при более сложной задаче, получить невозможно.

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