LINUX.ORG.RU

Точнее, не совсем про рюкзак. Разница в том, что вес должен быть не <= нужного, а == нужному.

lor_mokey
() автор топика
Ответ на: комментарий от HerrWeigel

Вкратце:

Есть n предметов, каждый имеет вес w и стоимость p. Нужно выбрать предметы так, чтобы получить макс. стоимость, не превысив лимит по весу. В моем случае особенность: нужно, чтобы сумм. вес был равен ограничению.

lor_mokey
() автор топика

гусар очевидность смеет сообщить

Время исполнения зависит от имплементации и от набора входных данных.

Rzhepish
()

lor_mokey> Задача про рюкзак, 4000 предметов, суммарный вес до десяти миллионов. Возможно ли вложится в 5 секунд?

Легко

sdio ★★★★★
()
Ответ на: комментарий от lor_mokey

Распараллелить на бесконечно большое кол-во компьютеров.

З.Ы. Какое условие такие и ответы.

sdio ★★★★★
()
Ответ на: гусар очевидность смеет сообщить от Rzhepish

Ограничения на входные данные я упомянул в условии. Нужно, чтобы проходило любой тест, подходщий под эти ограничения.

Имплементация будет, когда будет алгоритм, для которого возможно написать такую имплементацию.

lor_mokey
() автор топика
Ответ на: комментарий от sdio

Распараллелить на бесконечно большое кол-во компьютеров.

Хватило бы и на несколько десятков. А нужно без распараллеливания, в один поток.

lor_mokey
() автор топика
Ответ на: комментарий от lor_mokey

Ограничения на входные данные я упомянул в условии.

Ограничения на входные данные я упомянул в условии. Нужно, чтобы проходило любой тест, подходщий под эти ограничения.

Нда, смотрю на связи очередное молодое дарование.

Rzhepish
()

Я считаю, что возможно. Начинай меня опровергать

zolden ★★★★★
()
Ответ на: комментарий от Rzhepish

Только в медлительности самого обычного ДП-решения (сложность N * M, где N - вес, M - количество предметов).

lor_mokey
() автор топика
Ответ на: комментарий от lor_mokey

Итого меньше минуты, что очень близко к требуемым нескольким секундам.

Rzhepish
()
Ответ на: комментарий от anonymous

Смотрю, на связи очередное (малолетнее-)быдло с раздутым ЧСВ, которому лишь бы ляпнуть.

Rzhepish
()
Ответ на: комментарий от lor_mokey

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

LongLiveUbuntu ★★★★★
()

Новое поколение задротов РПГ решает оптимизационные задачи!

buddhist ★★★★★
()

можно, разрешаю.

anonymous
()

Нет таких рюкзаков, батенька... если тока предметы не бриллианты а вес не в каратах меряете. Что, линять собрались?;-)

Вы понимаете, что решение не единственное?

AIv ★★★★★
()
Ответ на: комментарий от HerrWeigel

Логистическая. Оптимальное использование объема.

slackwarrior ★★★★★
()
Ответ на: комментарий от LongLiveUbuntu

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

Ты упоролся?

Waterlaz ★★★★★
()

Lol, ну а не же NP-complete. Так что давай иди статьи читай, смотри какие подходы тебе подходят. Либо строишь выпуклую оболочку задачи и решаешь ее, либо используешь глобальную оптимизацию и всякие MCMC. У всех разные гарантии на сходимость и оценки снизу, у всех разное время работы.

maggotroot
()
Ответ на: комментарий от maggotroot

Lol, ну а не же NP-complete. Так что давай иди статьи читай, смотри какие подходы тебе подходят. Либо строишь выпуклую оболочку задачи и решаешь ее, либо используешь глобальную оптимизацию и всякие MCMC. У всех разные гарантии на сходимость и оценки снизу, у всех разное время работы.

Она псевдополиномиальна, успокойся. Решается за время 4000*10^6

Waterlaz ★★★★★
()
Ответ на: комментарий от LongLiveUbuntu

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

Что-что-что??

Rzhepish
()

Только добил эту лабу по ИИ. Но у меня там был simulated annealing, что его изрядно замедляет

vertexua ★★★★★
()
Ответ на: комментарий от aptyp

Правильно... Берем ЛЮБОЙ компьютер из TOP-500 он решит и за меньшее время.

kombrig ★★★
()
Ответ на: комментарий от Rzhepish

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

kombrig ★★★
()
Ответ на: комментарий от kombrig

И каким боком рассуждения о задачах, «определённых над полями вещественных чисел» относятся к обсуждаемой задачи?

И что такое «определенная над полем вещественных чисел» задача?

Rzhepish
()
Ответ на: комментарий от Rzhepish

Область допустимых значений для варьируемых переменных влияет на вычислительную сложность задачи. В данном случае кол-во предметов положенных в рюкзак - натуральные числа и задача как уже сказано NP-полная. Т.е. быстрых методов решения не существует.

kombrig ★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.