Параллельно вложенные циклы

В реальной практике наряду с задачами, использующими последовательно вложенные циклы, существуют и требуют решения варианты с параллельным вложением. Анализ большинства транспортных задач показывает, что в соответствии с конкретной постановкой, форма вложений циклов может изменяться. Типичное подтверждение этого – откорректированная задача (9.3) о доставке грузов.

Постановка задачи

В городе имеется N продуктовых магазинов. Продукты поставляет один хлебозавод. Производство ориентировано на два вида продукции: хлебобулочную и кондитерскую. Каждый магазин заказывает конкретный ассортимент (количество К хлебобулочных и массу М кондитерских изделий). Требуется рассчитать суммарное количество хлебобулочных изделий и массу кондитерских, поставляемых в каждый магазин.

Формирование математической модели

Исходные данные

N [шт] – число магазинов;
Т [шт] – максимальный ассортимент хлебобулочных продуктов;
P [шт] – максимальный ассортимент кондитерских изделий;
Kil , 1 i N, 1 l Т [шт] – количество хлебобулочных продуктов для каждого магазина;
Mij , 1 i N 1 j P [кг] – массы кондитерских изделий для каждого магазина;
         

Расчётные зависимости

[шт] – суммарное количество хлебобулочных изделий, поставляемых в i-й магазин;
[кг] – суммарная масса кондитерских изделий, поставляемых в i-й магазин;
1 i N, 1 l T, 1 j Р – диапазоны изменения индексов;
i = i + 1, l = l+1, j = j + 1 – законы изменения индексов.

Выбор метода решения

Математическая модель позволяет решить задачу двумя вариантами:

· осуществить расчёт суммарного количества хлебобулочных изделий и суммарной массы кондитерских изделий по всему ассортименту, доставляемых в один магазин, а затем повторить вычисления для всех оставшихся магазинов;

· осуществить расчёт суммарного количества хлебобулочных изделий по всему ассортименту, доставляемых в один магазин, повторив вычисления для всех оставшихся магазинов, а затем осуществить расчёт суммарной массы кондитерских изделий по всему ассортименту, доставляемых в один магазин, повторив вычисления для всех оставшихся магазинов.

Выбор варианта не влияет на результаты решения, но предполагает различные схемы вложенных вычислений:

· первый – с двумя параллельно вложенными циклами;

· второй – с двукратно реализуемыми простейшими (одно вложение) последовательно вложенными циклами.

В соответствии с целью раздела выбираем первый вариант. Тогда в качестве внешнего цикла используется перебор магазинов, в качестве внутренних – изменения количества хлебобулочных изделий (изменение параметра l), завозимых в i-й магазин и изменения массы кондитерских изделий (изменение параметра j), завозимых в i-й магазин.

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