Читайте также:
|
|
Диалоговое окно закладки IntegerSolver (целочисленный решатель) выглядит следующим образом:
Constraint Cuts:
В линейных целочисленных задачах, LINGO пытается ускорить процесс решения, добавляя допустимые ограничения. Эти дополнительные ограничения, называемые «отсечениями», не нарушают допустимую целочисленную область задачи. Они, однако, могут нарушать непрерывность допустимого диапазона. Опции группы ConstraintCuts (отсечения ограничений) позволяют установить параметры генерируемых целочисленных «отсечений».
Поле Application позволяет указать, где могут использоваться отсечения в IP модели. Значением по умолчанию является «Solver Decides» (по усмотрению внутреннего решателя).
Если в этом поле выбрано значение «All Nodes» (все узлы), количество добавляемых ограничений ограничено только доступной памятью. Как правило, это приводит к ускорению решения за счет уменьшения рассматриваемых узлов. В некоторых моделях, однако, это может привести к временным затратам без ускорения процесса решения. Если вы считаете, что именно это и произойдет, то установите значение «Root Only» (только корневые узлы), чтобы ограничить отсечения только корневыми узлами.
Поле Mixed Cuts устанавливает тип отсечений, добавляемых к IP задачам со смешанными ограничениями (то есть бинарными, целыми и непрерывными). LINGO может использовать также методы «Flow Cuts», «Gomory Cuts» или «None».
Поле Pure Cuts определяет тип «отсечений», добавляемых в IP задачах. Отсечения этих типов генерируются при анализе ограничений в смешанных IP моделях, которые содержат только бинарные переменные. LINGO может генерировать следующие типы: «Knapsack» отсечения, «Knapsack& GUB» отсечения или «None».
Поле определяет Storage размещение модели при решении целочисленных моделей. Выбор параметра «RAM Only» (только в оперативной памяти) более эффективно с точки зрения затрат машинного времени. Однако, это может ограничивать используемую память, если исходная модель была сохранена с параметром «Disk Only». При установленном по умолчанию значении «Solver Decides» (на усмотрение решателя) решатель анализирует доступную память, чтобы определить наилучшее размещение между оперативной памятью и диском.
Когда в поле Limitустановлено значение «None», принятое по умолчанию, количество добавляемых ограничений ограничено только доступной памятью. Как правило, это приводит к ускорению решения. В некоторых моделях, однако, это может привести к временным затратам без ускорения процесса решения. Если вы считаете, что именно это и произойдет, то установите некоторое значение в поле Limit, чтобы ограничить количество допускаемых отсечений. Разрешается любое неотрицательное число. Вы можете поэкспериментировать в этом месте, чтобы добиться оптимального времени решения задачи.
Параметры отсечений используются только в целочисленных моделях. Для других моделей они игнорируются.
Tolerances:
Группа опций Tolerances (точность) позволяет установить точность решения целочисленной задачи.
Значение (между 0 и 1), введенное в поле Optimality,устанавливает точность поиска в алгоритме «ветвей и границ», используемым LINGO. Например, если вы хотите получить ответ с точностью одного процента от оптимального решения, введите значение 0.01. Решение, полученное LINGO в этом случае, вовсе необязательно будет наилучшим. Однако, оно будет находиться в пределах 1% от оптимума. Это может значительно ускорить процесс решения особенно для больших целочисленных моделей.
По умолчанию установлено значение «None». Это не равносильно установке нуля, которое будет означать, что вы готовы ждать точный ответ.
Если вы знаете примерное значение целевой функции задачи, введя его в поле Hurdle(барьер), то это может существенно ускорить процесс решения. «Барьерное» значение должно основываться на известном допустимом решении. Это значение используется в методе «ветвей и границ», чтобы ограничить поиск оптимума. LINGO не рассматривает ветви, которые дают худший ответ, чем установленное вами значение.
По умолчанию принято значение «None». В задачах оптимизации это соответствует значению «барьера», равным минус бесконечности. Для задач минимизации это — положительная бесконечность. Если установлено слишком большое «барьерное» значение (в задачах максимизации) или слишком малое (для задач минимизации), то LINGO выдаст сообщение, что целочисленное решение не может быть найдено. Вы можете использовать оба эти значения и параметр точности в одной модели.
Число, введенное в поле RelativeIntegrality (относительная целочисленность) используется LINGO для проверки степени целочисленности задачи. Другими словами, эта степень точности будет использоваться для определения, насколько число является целым.
Например, X будет считаться целым, если
где I — ближайшее к X целое число. По умолчания для этого параметра принято значение 0.0000008.
Heuristics:
Если у поля стоит отметка в поле PerformHeuristics(выполнять эвристики), то LINGO выполняет эвристические действия, используя решения линейного программирования и допустимость ограничений в каждом узле, чтобы ускорить поиск хорошего решения целочисленной (IP) задачи. Если найдено IP-решение лучшее, чем было определено ранее, то оно используется, чтобы зафиксировать или сузить глобальные и локальные ограничения.
Замечание: Ослабление точности в дополнительных опциях — увеличение их значений — может ускорит решение. Однако, чрезмерное их ослабление может привести к решению, которое противоречит ограничениям и условиям целочисленности. Если вы решили изменить эти параметры, делайте это с осторожностью.
Меню Windows
Command Window Alt+C
Используйте команду CommandWindow (командное окно) из меню Windows, или нажмите клавишу Alt+C, чтобы открыть командное окно:
Командное окно дает доступ к интерфейсу командной строки LINGO, в котором вы можете вводить директивы «командной строки» после знака «запроса» (двоеточие) для выполнения программы. Детальное описание этих команд можно найти в разделе «Директивы командной строки».
В общем случаи пользователям Windows нет необходимости использовать командное окно. Оно предназначено для пользователей, которые хотят совместить специальные приложения, способные использовать LINGO посредством языка командного окна, для управления программой.
Status Window Alt+S
Используйте команду StatusWindow (окно состояний решателя) из меню Windows, или нажмите клавишу Alt+C, чтобы открыть окно состояний решателя LINGO:
Когда вы решаете новую задачу в LINGO, появляется Окно состояний (Status Slver) решателя, как только начинается процесс решения. Снимите отметку в поле Solver Status Window в группе Options… из меню LINGO, чтоб указать LINGO не выводил на экран это окно состояний при каждом решении задачи.
Окно состояний решателя выводит на экран следующую информацию:
§ Общие переменные модели, разбитые по категориям — линейные, нелинейные и целые.
§ Состояние оптимизатора, включая:
· Текущее состояние решения (например, глобальный оптимум)
· Число выполненных итераций
· Текущее значение суммарных отклонений
· Текущее значений целевой функции
· Целочисленное решение, полученное к данному моменту (только в целочисленных задачах)
· Границы в IP решении (только в целочисленных задачах)
§ Общее число ограничений в модели, разделенные на категории — линейные и нелинейные
§ Общее число ненулевых переменных, разделенных по категориям — линейные и нелинейные
§ Общее количество памяти, используемое LINGO для размещения данных
§ Время, прошедшее с начала решения
Дополнительно это окно предоставляет вам:
§ Кнопку Interrupt Solver (прервать решение). Прерывание решения заставит LINGO приостановить решение задачи и выдать наилучшее решение, полученное к этому моменту, с предупреждением, что это решение может быть не оптимальным или недопустимым.
§ Кнопку Close (закрыть).
§ Поле, в котором вы можете указать, через сколько времени (в секундах) следует обновлять на экране значение целевой функции. В целочисленных задачах экран будет в любом случае обновляться, как только будет найдена новая целочисленная граница, независимо от установленного в этом поле значения. Имейте ввиду, что слишком частое обновление экрана приведет к увеличению времени решения.
Send To Back Alt+B
Используйте команду Send To Back из меню Windows, или щелкните по кнопке в палитре инструментов, ил нажмите клавишу Alt+B, чтобы переместить верхнее окно на задний план. Эта команда очень полезна для переключения окна модели на окно отчета и обратно.
Close All Alt+X
Используйте команду CloseAll из меню Windows, или щелкните по кнопке в палитре инструментов, или нажмите клавишу Alt+X, чтобы закрыть все окна модели и диалоговые окна.
Tile Alt+T
Используйте команду Tileизменю Windows, или нажмите клавишу Alt+T, чтобы упорядочить все открытые окна, так чтобы они занимали одинаковое пространство (паркетом) внутри рабочего окна LINGO. При этом вы увидите диалоговое окно, в котором вы можете выбрать горизонтальный или вертикальный «паркет».
Cascade Alt+A
Используйте команду Cascadeиз меню Windows, или нажмите клавишу Alt+А, чтобы упорядочить все открытые окна каскадом с левого верхнего к нижнему правому с текущим активным окном, расположенным поверх остальных.
Arrange Icons Alt+I
Используйте команду ArrangeIcons из меню Windows, или нажмите клавишу Alt+I, чтобы переместить все иконки, представляющие минимизированные окна, таким образом, что они все будут упорядочены в нижней части экрана.
List Of Windows
При этом в нижней части меню Windows появляется список всех открытых окон с помеченным активным окном. Вы можете выбрать окно из этого списка, чтобы поместить его поверх остальных (и сделать активным).
МЕНЮ HELP
Help Topics F1
Первая их кнопок открывает помощь к разделам справки. Нажмите вторую кнопку (с помеченным стрелкой знаком вопроса), чтобы вызвать контекстно-зависимую справку. После того, как курсор примет вид знака вопроса, выбор любой команды предоставит вам справку по этой команде.
About LINGO Alt+F1
Используйте эту команду, чтобы получить информацию о версии программы, серийному номеру, а также о пределах на количество переменных и ограничений и о пределах памяти, которую использует программа LINGO. При этом показывается, как связаться с LINGO Systems по поводу дополнительной информации и технической поддержки.
Дата добавления: 2015-11-16; просмотров: 44 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Закладка NONLINEAR SOLVER | | | Функции импорта файлов |