2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки


Правила форума


В этом разделе нельзя создавать новые темы.

Если Вы хотите задать новый вопрос, то не дописывайте его в существующую тему, а создайте новую в корневом разделе "Помогите решить/разобраться (М)".

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

Не ищите на этом форуме халяву, правила запрещают участникам публиковать готовые решения стандартных учебных задач. Автор вопроса обязан привести свои попытки решения и указать конкретные затруднения.

Обязательно просмотрите тему Правила данного раздела, иначе Ваша тема может быть удалена или перемещена в Карантин, а Вы так и не узнаете, почему.



Начать новую тему Ответить на тему На страницу 1, 2  След.
 
 Оптимальная загрузка танкера))
Сообщение20.01.2012, 06:24 


20/01/12
5
Бразеры, помогите разобраться!

Работаю на танкерах. Постоянно возникает задача оптимальной загрузки, которую пытался решить с помощью экселя, но не хватает знаний) Суть задачи: требуется загрузить танкер, например, тремя сортами разного груза (бензин, соляра, керосин). Известны массы (объемы) грузов (они, как правило, разные), количество и объем грузовых танков. Единственное ограничение - танки нельзя грузить больше 98% от их максимального объема. Требуется так оптимально разместить эти грузы, чтобы танки были загружены по максимуму (т.е. чтобы максимально использовать полезный грузовой объем с учетом вышеназванного 98%-го ограничения). Прикидка вручную подчас занимает много времени, поэтому хотелось бы немного облегчить себе жизнь и как-нибудь автоматизировать этот процесс) Знаю, что все это можно реализовать с помощью Solvera, встроенного в Excel, но, повторюсь, не хватает знаний на запрограммирование алгоритма. Спасибо заранее за любые возможные советы.

 Профиль  
                  
 
 Re: Оптимальная загрузка танкера))
Сообщение20.01.2012, 07:31 


11/01/12
50
Задача подобна задаче логистики (в городе есть несколько складов с убывающими товарами; нужно снабжать склады грузовиком с наименьшей суетой) или задача о рюкзаке (тяжелое вниз, легкое наверх, дешевое вниз, дорогое наверх, мягкое к спине, нужное первым на выход). Сейчас такого рода задачи решаются только перебором, на компьютере. Есть специальная программа
http://www.packer3d.ru/node/170
Больше сказать ничего не могу и этой темой не интересуюсь.

 Профиль  
                  
 
 Re: Оптимальная загрузка танкера))
Сообщение20.01.2012, 12:35 


14/01/11
2921
То есть у вас на каждом танкере имеются танки разного объёма, и вам надо разместить по ним заданные объёмы наливных грузов, максимизировав при этом суммарный объём танков, оставшихся пустыми?

 Профиль  
                  
 
 Re: Оптимальная загрузка танкера))
Сообщение20.01.2012, 13:15 
Заблокирован


19/09/08

754
de-sed в сообщении #529109 писал(а):
Бразеры, помогите разобраться!

Работаю на танкерах. Постоянно возникает задача оптимальной загрузки, которую пытался решить с помощью экселя, но не хватает знаний) Суть задачи: требуется загрузить танкер, например, тремя сортами разного груза (бензин, соляра, керосин). Известны массы (объемы) грузов (они, как правило, разные), количество и объем грузовых танков. Единственное ограничение - танки нельзя грузить больше 98% от их максимального объема. Требуется так оптимально разместить эти грузы, чтобы танки были загружены по максимуму (т.е. чтобы максимально использовать полезный грузовой объем с учетом вышеназванного 98%-го ограничения). Прикидка вручную подчас занимает много времени, поэтому хотелось бы немного облегчить себе жизнь и как-нибудь автоматизировать этот процесс) Знаю, что все это можно реализовать с помощью Solvera, встроенного в Excel, но, повторюсь, не хватает знаний на запрограммирование алгоритма. Спасибо заранее за любые возможные советы.

По вашему описанию, вообще, никакой задачи не видно.Что вы понимаете под словом "оптимально"? В чем заключаются ваши трудности? Изложите по-подробней.

 Профиль  
                  
 
 Re: Оптимальная загрузка танкера))
Сообщение20.01.2012, 13:22 
Заслуженный участник


21/05/11
897
vvvv в сообщении #529213 писал(а):
Изложите по-подробней.
Больше всего непонятно, можно ли в танк, где ранее перевозили соляру, наливать бензин?

 Профиль  
                  
 
 Re: Оптимальная загрузка танкера))
Сообщение20.01.2012, 13:34 
Заслуженный участник
Аватара пользователя


18/05/06
13437
с Территории
Можно, но эта операция имеет свою цену (т.е. входит в функционал, который мы минимизируем - если по-хорошему).

 Профиль  
                  
 
 Re: Оптимальная загрузка танкера))
Сообщение20.01.2012, 13:34 
Заслуженный участник


09/08/09
3438
С.Петербург
Sender в сообщении #529198 писал(а):
То есть у вас на каждом танкере имеются танки разного объёма, и вам надо разместить по ним заданные объёмы наливных грузов, максимизировав при этом суммарный объём танков, оставшихся пустыми?
Это, на мой взгляд, не совсем полная постановка. Например, рассмотрим случай, когда необходимо перевезти 3 кубометра бензина, и есть танки с полезной емкостью 1 кубометр, 2 кубометра и 3 кубометра. Можно залить первый и второй, можно - только третий. Суммарный объем пустых танков в обоих случаях будет одинаковым, но с содержательной точки зрения какой-то вариант является предпочтительным.

(Под полезным объемом понимается 98% номинального)

-- Пт янв 20, 2012 15:15:53 --

de-sed в сообщении #529109 писал(а):
Единственное ограничение - танки нельзя грузить больше 98% от их максимального объема.
de-sed, а что, никаких ограничений по неравномерности загрузки танков нет?

 Профиль  
                  
 
 Re: Оптимальная загрузка танкера))
Сообщение21.01.2012, 04:52 


20/01/12
5
Спасибо всем откликнувшимся!
Немного уточнений: да, танки имеют разный объём (от 1200 до 2000 куб. метров). Грузы имеют определенные заданные объемы. Например требуется загрузить 10000 куб. метров бензина, 8000 куб. метров керосина и 6000 куб. метров солярки. В сумме - это чуть меньше полной грузовместимости судна. Смысл задачи в том, чтобы максимально полезно задействовать полезный грузовой объем танкера. Например, может получиться, что бензин будет загружен в 1, 3, 6 танки, занимая 96% от их суммарного объема - это хороший показатель. Если грузить в 2, 4, 5 - то будет перелив, так объемы этих танков меньше, чем в первом варианте. Если же, например, грузить в 3, 5, 6, то общее заполнение танков будет лишь на 80%, т.е почти 20% полезного грузового объема не будет использовано, а другой груз одновременно с бензином в один танк грузить нельзя. Порой такая прикидка по оптимальному размещению нескольких грузов занимает достаточно много времени и хотелось бы как-нибудь все это дело автоматизировать. Надеюсь, что расписал все понятно))

 Профиль  
                  
 
 Re: Оптимальная загрузка танкера))
Сообщение21.01.2012, 14:12 
Заслуженный участник


21/05/11
897
ИСН в сообщении #529224 писал(а):
Можно, но эта операция имеет свою цену (т.е. входит в функционал, который мы минимизируем - если по-хорошему).
Теперь я понимаю смысл объявления: "Продаётся цементовоз-молоковоз". :-(

-- Сб янв 21, 2012 17:14:11 --

de-sed в сообщении #529479 писал(а):
Надеюсь, что расписал все понятно
А нельзя привести конкретный живой пример, если это не является закрытой информацией? :shock:

 Профиль  
                  
 
 Re: Оптимальная загрузка танкера))
Сообщение21.01.2012, 14:21 


02/11/08
1187
2 Praded

http://korabley.net/news/samii_bolshoi_tanker_v_mire_batillus/2009-06-03-257
Самый большой танкер в мире «Batillus»

http://www.svarchik.ru/vodny.htm
Основные данные морских танкеров
Основные данные несамоходных речных барж
Основные данные речных танкеров

http://www.odin.tc/disaster/big.asp
Самый большой танкер LNG в мире
Гигант Mozah, проекта Q-Max, берет 266000 кубометров – достаточно, чтобы обеспечит теплом и электричеством всю Англию в течении 24 часов. Дедвейт Mozah 125600 тонн, длина 345 метров, ширина 50 метров, осадка 12 метров. От киля до клотика высота судна равна высоте 20-этажного небоскреба. Сжиженный газ перевозится в пяти гигантских танках мембранного типа, но только размерами новинки лидера газовозов не ограничиваются.

 Профиль  
                  
 
 Re: Оптимальная загрузка танкера))
Сообщение21.01.2012, 14:23 
Заслуженный участник


21/05/11
897
Yu_K
Но ведь ТС ходит на конкретном судне, а не на всём разнообразии.

 Профиль  
                  
 
 Re: Оптимальная загрузка танкера))
Сообщение23.01.2012, 11:14 


14/01/11
2921
В общем, вырисовывается задача целочисленного линейного программирования. Пусть у нас есть $n$ грузов и $m$ танков, объёмы грузов $\{V_1,...,V_n\}$, полезные объёмы танков (исходные, умноженные на 0,98) $\{c_1,...,c_m\}$. Введём переменные $x_{ij},x_{ij}\in \{0,1\}, i\in\overline{1,n}, j\in\overline{1,m}$, где $x_{ij}=1$ в том и только в том случае, если в j-м танке содержится i-й груз. Тогда условия задачи записываются так:
1. $0\leqslant x_{ij}\leqslant 1, i\in\overline{1,n}, j\in\overline{1,m}.$

2. $\sum_{i=1}^{n}x_{ij}\leqslant 1, j\in\overline{1,m}$ (каждый танк загружается не более, чем одним видом груза).

3. $\sum_{j=1}^{m}c_{ij}x_{ij}\geqslant V_i, i\in\overline{1,n}$ (каждый груз полностью распределён по танкам).

4. $\sum_{i=1}^{n}\sum_{j=1}^{m}c_{ij}x_{ij}\rightarrow \min$ (условие максимизации загруженности танков).

Эксель ведь позволяет решать целочисленные задачи подобного типа?

 Профиль  
                  
 
 Re: Оптимальная загрузка танкера))
Сообщение23.01.2012, 15:27 
Заблокирован


19/09/08

754
de-sed в сообщении #529479 писал(а):
Спасибо всем откликнувшимся!
Немного уточнений: да, танки имеют разный объём (от 1200 до 2000 куб. метров). Грузы имеют определенные заданные объемы. Например требуется загрузить 10000 куб. метров бензина, 8000 куб. метров керосина и 6000 куб. метров солярки. В сумме - это чуть меньше полной грузовместимости судна. Смысл задачи в том, чтобы максимально полезно задействовать полезный грузовой объем танкера. Например, может получиться, что бензин будет загружен в 1, 3, 6 танки, занимая 96% от их суммарного объема - это хороший показатель. Если грузить в 2, 4, 5 - то будет перелив, так объемы этих танков меньше, чем в первом варианте. Если же, например, грузить в 3, 5, 6, то общее заполнение танков будет лишь на 80%, т.е почти 20% полезного грузового объема не будет использовано, а другой груз одновременно с бензином в один танк грузить нельзя. Порой такая прикидка по оптимальному размещению нескольких грузов занимает достаточно много времени и хотелось бы как-нибудь все это дело автоматизировать. Надеюсь, что расписал все понятно))


Вот сейчас смысл задачи ясен.

Не могли бы указать количество танков и их емкость, а также максимальное число различных перевозимых грузов одновременно.

Под целочисленное линейное программирование эта задача не подходит.
Можно попытаться написать для этой задачи отдельную программу.

 Профиль  
                  
 
 Re: Оптимальная загрузка танкера))
Сообщение23.01.2012, 16:08 


14/01/11
2921
vvvv в сообщении #530336 писал(а):
Под целочисленное линейное программирование эта задача не подходит.


Если не трудно, не могли бы вы указать на ошибку в моих построениях?

 Профиль  
                  
 
 Re: Оптимальная загрузка танкера))
Сообщение23.01.2012, 16:37 
Заслуженный участник


21/05/11
897
Sender в сообщении #530358 писал(а):
Если не трудно, не могли бы вы указать на ошибку в моих построениях?
Ведь одного груза может быть на 1,5 танка...

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 29 ]  На страницу 1, 2  След.

Модераторы: Модераторы Математики, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group