Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Задача оптимизации  [new]
Гость
Guest
Ситуация такая:
Есть партии товара, есть их распределение по грузовым местам (палетам).
Партии приходуются на склад на основании приходного документа, уходят со склада (полностью или частично) на основании расходного документа (таблица резервов). Товар по возможности отгружается целыми палетами,
если же не получается (товар в палете зарезервирован частично) - палеты вскрываются и зарезервированный товар перекладывается в новые палеты.

Задача звучит так: найти оптимальный план выбора грузовых мест (палет), так чтобы:
1. Вскрывать минимальное число палет.
2. Минимизировать число операций по перекладыванию товара.

Таблицы:
Таблица партий товара - batches:
batch - ID
item - ID товара
qty - кол-во
DocID - - ID приходного документа

Таблица грузовых мест (палет) - pallets
pallet - ID
DocID - ID приходного документа
ReservedBy - ID расходного документа

Таблица распределения партий по грузовым местам (deplBatches):
deplBatch - ID
batch - ID партии
qty - кол-во
pallet - ID палеты

И таблица резервов на партии - resBatches:
resBatch - ID
batch - ID партии
qty - кол-во
DocID - ID расходного документа

Смутно подозреваю что придется решать либо решать систему уравнений (в общем случае вырожденную), либо воспользоватся методами оптимизации (симплекс-методом или чем нить подобным).
Кто-нибудь решал подобные задачи?
Желательно T-SQL, но подойдет любой язык.
6 май 03, 09:49    [190974]     Ответить | Цитировать Сообщить модератору
 Re: Задача оптимизации  [new]
Slav
Member

Откуда: МАсква, великий и прекрасный город
Сообщений: 9047
Уж язык тут вообще не при чем. Это же линейная оптимизация.
6 май 03, 10:18    [191008]     Ответить | Цитировать Сообщить модератору
 Re: Задача оптимизации  [new]
Гость
Guest
2 Slav

Это понятно, а идеи по реализации на T-SQL есть?
6 май 03, 10:30    [191028]     Ответить | Цитировать Сообщить модератору
 Re: Задача оптимизации  [new]
Slav
Member

Откуда: МАсква, великий и прекрасный город
Сообщений: 9047
Идеи?
Самая первая, которая приходит в голову - возьми любую книгу типа "Введение в линейную оптимизацию" и скатай оттуда любой метод. Только T-SQL, по-моему, для этой задачи точно не подходит. Рекомендую DELPHI.
Да и задачка-то с ограничениями... Учти.
6 май 03, 10:54    [191057]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить