Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
Поиск решения не находит оптимальное решение, распределение выпуска по времени с приоритетом более раннего
 
Дмитрий, по заданным Вами ограничениям поиск не понимает, каким образом ему нужно рассчитать и распределить суммы выпуска во времени, поэтому он либо размазывает его равномерно, либо выполняет условие на 10 часов, а прочие игнорирует и завершает итерационный процесс. В первом варианте для него минимум целевой функции  =34, в последнем =8. Т.е. он сначала выполняет ограничение по выпуску на 10 часов, а далее сам "догадаться", что вы хотите остаток бросить одной суммой на ранее время - не может. Не заданы ему такие параметры, в качестве изменяемых ячеек - целый массив и он его заполняет, как умеет. Нигде не указан метод как дробить потребность и он выдает локальное решение в виде равномерного распределения, либо просто не дает глобального решения. Ваша задача поиском решаема, если в качестве изменяемых ячеек задавать структуру распределения, а не саму сумму. Пример прилагаю, но пришлось еще дополнительную таблицу сделать для сумм по продуктам, которые нужно раскидать по часам. Вот так поиск находит целевое, равное 10. Рекомендую копать в этом направлении при постановке задачи.
Экономико-математическая модель при осуществлении перевозок речным транспортом
 
АНдрей VG, БМВ, все-все снова ухожу на ближайшие пару лет, кодерс-снобизм детектид:)
Архитектура модели — принципиальная организация модели, воплощенная в её элементах, их взаимоотношениях друг с другом, а также принципы, направляющие её проектирование.
Экономико-математическая модель при осуществлении перевозок речным транспортом
 
БМВ, согласна, это комплексная задача для раздела работа, автор недооценил трудоемкость, о чем я и написала. Про тест Вы, думаю, ошибаетесь - тесты обычно примитивнее:)) И потом он уже второй месяц бьется над вопросом, судя по темам. Мне просто интересно для себя порешать, это нескучный квест по крайней мере, не заезженный вопрос, только поэтому вступилась.
Может еще найдутся альтруисты:)
Экономико-математическая модель при осуществлении перевозок речным транспортом
 
БМВ, у автора запрос на помощь по архитектуре решения в Excel, я так поняла. Там расчет то несложный, если вы про формулы, даже без VBA можно обойтись, главное грамотно реализовать матметод в Excel.
Экономико-математическая модель при осуществлении перевозок речным транспортом
 
TrollenFoxy, заступлюсь за Вас:) Очень интересная задача, но требует времени, видимо потому никто не берется в помощники просто так. Говорю как человек, который строит финансовые модели, в т.ч по оптимизации.
Вы неплохо поработали над исходными данными, по крайней мере у меня вопросов не возникло, но чтобы построить решение, повторюсь, нужно время на реорганизацию этих данных и увязку в расчет.

БМВ, вид транспорта как раз имеет значение, это исключительно отраслевая задача - "северный завоз", поведение северных рек в связке с кратчайшими сроками навигации в регионе и резко меняющимся уровнем воды в этот период - ключевое ограничение, которое потребуется встроить в алгоритм поиска решений.

TrollenFoxy, я не обещаю по времени, но на досуге попробую порешать вашу задачу, если получится что-то приличное, отпишусь.
Макрос для построения гистограммы при помощи Анализа данных
 
Юрий М, авторекодер прекрасно пишет при отключенной надстройке ATPVBAEN.XLAM, ему достаточно чтобы был доступ к надстройке "Пакет анализа" в панели инструментов, в библиотеке ANALIS32.XLL. Макрос потом ее не запускает. Только что проверила еще раз.
Очень часто сталкиваюсь с подобными проблемами настроек у своих клиентов, переносят мои модели с машины на машину, сбиваются настройки, итерационные расчеты и т.д, потом макросы считают неверно. Если сразу в нотации все нужные галки не перечислишь в приложении, тут же аларм у людей:)
Макрос для построения гистограммы при помощи Анализа данных
 
Oda412,
В надстройках приложения подключите Пакет анализа VBA, проверила у себя, как только сняла галки, выдало ошибку 1004 при запуске макроса, до этого все работало. Excel 2010 В библиотеке называется ATPVBAEN.XLAM
Окно приветствия с выбором скрытого листа
 
У  Sanja, изящней вариант,  но и с кнопчками можно быстро по шаблону настрогать:) см простенький вариант
Окно приветствия с выбором скрытого листа
 
Davidova, а что в листах у вас будет? простые списки номенклатуры или вычисления с формулами? И почему 500, неужели у вас 500 номенклатурных групп? Я представила эту гидру, ну допустим книга 500 пустых листов весит 0,5 мб, надо понять сколько это будет с данными + 500 кнопок. Потом вы должны понимать что на 1 юзерформе все 500 не уместятся, т.е порядка 20 юзерформ*25 кнопок. В общем, белошвейка только возьмется такое вышивать:) Есть же другие варианты, без кнопок, те же гиперссылки или выпадающие списки.
Методологический вопрос по фин. модели, Избавиться от циклической ссылки
 
Цитата
ArtHome написал: А что неверно в формуле?
Неверно использовать в ней в качестве аргумента ссылку на ячейку (E$135), которая заведомо может принимать нечисловое значение, в этом случае "-".
Код
ЕСЛИОШИБКА(ПОИСКПОЗ(ИСТИНА;I135:AD135;0); "-")
В целом, соглашусь с предыдущими ораторами - вы пытаетесь автоматизировать хаос, а это к финансовому моделированию не имеет никакого отношения :)
Изменено: Gata - 08.05.2016 11:36:16
Методологический вопрос по фин. модели, Избавиться от циклической ссылки
 
ArtHome, на первый взгляд проблема не в итерационном расчете. Открыла ваш файл с включенной итерацией, все покрылось ЗНАЧ# и дело#. Первым делом, наткнулась на некорректное использование формулы СМЕЩ в столбце AO:
Код
=СУММ(СМЕЩ(H11;0;0;1;E$135+1))
Рекомендую провести тщательный аудит своей модели на предмет ошибок в формулах. По своему опыту финансового моделирования, рекомендую циклические расчеты заводить в макрос и выдавать в строку готовые значения. Если вы оставите циклы и одновременно начнете использовать инструмент "таблицу данных", таблица вообще уйдет в непрерывный расчет, файл подвиснет окончательно.
Функция ВСД выдаёт ошибку #число
 
У Вас тот случай, когда для ряда не одно значение IRR, посмотрите в файле, если достроить ряд NPV, видно, что не один раз он принимает нулевое значение.
Как правильно задать в коде скользящий диапазон изменяемых ячеек для Solver, Синтаксис VBA для Поиска решений
 
Казанский, Спасибо Вам большое! Все работает, все считает:)
Как правильно задать в коде скользящий диапазон изменяемых ячеек для Solver, Синтаксис VBA для Поиска решений
 
Добрый день! Поиск решения (Excel 2010) у меня запускается макросом, Solver изначально создавала для данных по одному столбцу $D таблицы, (все работало, References подключены) но потребовалось чтобы для каждого года (это 16 столбцов, начиная с D) происходил свой поиск решения. Попробовала оформить циклом, но запнулась о ByChange - подскажите пж-та, как грамотно оформить синтаксис, чтобы этот параметр тоже брался в цикле для поиска всем диапазоном? На Range ругается.
Код прилагаю, спасибо
Код
Sub Goals()
ActiveSheet.CheckBoxes(1) = 1
For i = 1 To 16
SolverReset
SolverOk SetCell:=Cells(21, 3 + i), MaxMinVal:=3, ValueOf:=0, ByChange:="$D$27:$D$40", _
    Engine:=1, EngineDesc:="GRG Nonlinear"
SolverAdd CellRef:=Cells(27, 3 + i), Relation:=3, FormulaText:="0%"
SolverAdd CellRef:=Cells(36, 3 + i), Relation:=3, FormulaText:="0%"
SolverAdd CellRef:=Cells(41, 3 + i), Relation:=2, FormulaText:="100%"
SolverAdd CellRef:=Cells(42, 3 + i), Relation:=2, FormulaText:="100%"
SolverSolve True
Next
End Sub
Изменено: Gata - 18.04.2015 20:42:23
Страницы: 1
Наверх