|
|
|
Похоже на задачу линейного программирования Ø |
☑ | ||
|---|---|---|---|---|
|
0
Ferrum
30.12.05
✎
10:13
|
Собственно есть N-накладных,Sj- сумма j-й накладной.
Mi- количество i-го товара, Сi-цена i-го товара. Сумма Sj=Сумме Mi*Ci необходимо разложить товары по накладным если такое возможно. Ктонить подскажет алгоритм? |
|||
|
1
Uho
30.12.05
✎
10:15
|
Эксель+поиск решения :)))
|
|||
|
2
Ferrum
30.12.05
✎
10:31
|
а если серьёзно? :)
в 1с? да и в экселе бы не отказался :) как это можно сделать :) |
|||
|
3
zak
30.12.05
✎
10:35
|
Ищи решение "задачи о рюкзаке".
|
|||
|
4
корум
30.12.05
✎
10:37
|
+(3) в виде отчёта от NSа
|
|||
|
6
vS
30.12.05
✎
11:00
|
я так понимаю, что ему надо в имеющиеся номера и суммы накладных впихнуть черный товар :) чтобы сумма совпала :)
однако, методом пузырька попахивает? |
|||
|
7
Ferrum
30.12.05
✎
11:03
|
2(3,4) - в яндексе пусто, на форуме тож :(
2(6) - правильно :) пузырёк помоему не пойдёт |
|||
|
8
Бит
30.12.05
✎
11:10
|
(7)
http://www.yandex.ru/yandsearch?text=класс+переборных+задач&stype=www |
|||
|
9
Пьер
30.12.05
✎
11:10
|
Если количество только целочисленное (штуки, упаковки) то классическая задача о ранце (рюкзаке), если может быть дробным, то решается элементарно (наподобие гашения по партиям), хотя лучше бы сделать какое-нибудь нормальное распределение у выборки перед тем как размазывать по накладным, чтобы не получилось, что в начале месяца торговали позицией А, в середине Б, в конце В.
|
|||
|
10
LubK
30.12.05
✎
11:12
|
Точного решения, если товар неделимый может не существовать.
Например, если все цены парные, непарной суммы не получиш. А вообще находиш количества i товара xij по цене ci для j накладной из условия минимума (сума по i xij*cij - sj)**2 т.е. получаеш j систем линейных уравнений |
|||
|
11
iogri
30.12.05
✎
11:34
|
Посмотри алгоритм для "одного рюкзака" здесь:
http://forum.vingrad.ru/index.php?s=c79d0d97ff629288b4d414e5a5d5510e&showtopic=49953 Если применить его начиная с маленьких по сумме накладных, велики шансы добраться до решения, если оно в принципе существует. |
|||
|
12
angro
30.12.05
✎
11:53
|
Если в Excel -е то воспользуйся действительно поиском решений, а так почитай симплекс метод
делаешь уранения типа СуммаНакладной= колвотовар1*ценатовар1+колвотовар2*ценатовар2 ... и ограничения колво - целое, сумма(колвотовар1)<=остатоктовар1 ... |
|||
|
13
NS
30.12.05
✎
13:01
|
Например - ищи мои посты...
http://forum.mista.ru/topic.php?id=129178 |
|||
|
14
AAAChel
30.12.05
✎
17:34
|
(0)а почему именно такая постановка? в чем физика явления?
|
|||
|
15
pvase
30.12.05
✎
19:39
|
(14) Есть количество накладных (записей где=то, может в каком то журнале), и есть сумма каждой накладной.
Никакая это не задача лин. программирования. Так как связи между сумами накладных нет, то получается метод тупого подбора: Для j = 1 по N Цикл // Цикл по накладным Для i = 1 По M Цикл // Цикл по товарам Только вся проблема в том, что цену надо точно побобрать, но здесь снова метод тупого беребора. Ну и для того чтобы не впихивать постоянно одни и теже товары - то таблицу товаров стоит сделать с весовыми коефициентами, и изментья их от количества заполнений в накладных (ну и выбирать по весовым окефициентам). ЗЫ Только все равно, наверное придется писать функцию равномерного распределения (можно взять втсроеный RANDOM) и подбирать товар случайно с подходящей ценой. |
|||
|
16
NS
30.12.05
✎
20:03
|
(15) Ошибаетесь - задача о подборе заданной суммы ДИСКРЕТНО (количество товара не может быть дробным) - является задачей о рюкзаке, задачей ЛИНЕЙНОГО программирования. Решается она полным перебором. Обычно используется НАПРВЛЕННЫЙ перебор, одним из вариантов которого является Симплекс-метод.
|
|||
|
17
pvase
31.12.05
✎
00:42
|
(16) В Условии не указано что Кво товара не может быть дробным, но и линейным тоже быть не может, все равно должны быть дискретные величини.
ЗЫ Что то о такой задаче "о рюкзаке" в теории исследований операций не помню (хотя учил эту дисциплину на 3 и 4 курсах). Это что то новое, или может задача как то по другому называлась? |
|||
|
18
AAAChel
31.12.05
✎
00:58
|
(17)задача о ранце (рюкзаке)см (9), давно очень правда читал))
(14)хорошо Вы задачу описали: есть суммы и есть количества записей. Это и из заголовка ясно Почему надо на точные суммы и почему цены неизвестны, ведь это цены поставщиков или цены реализации. |
|||
|
19
Темный Эльф
31.12.05
✎
00:59
|
(17) - ты вроде не новичок, чтобы тебя на Яндекс посылать...
http://lib.custis.ru/index.php/Задача_о_рюкзаке http://alglib.sources.ru/combinatorial/backpack.php http://www.np-soft.ru/npproject/projects/int/knapsacks/knapsacks.htm http://www.iai.donetsk.ua/general/ai_annot.php3?a=915&m=30&l=r |
|||
|
20
Ferrum
03.01.06
✎
12:17
|
(19)Глянул ссылки.
вот именно задача об М-рюкзаках и интересует, всё остальное - это вопрос как заполнить 1 рюкзак. |
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |