Объектом оптимизации в случае процесса разработки экономической модели является набор параметров модели, который отвечает за её поведение и сходство с описываемой системой. Параметры модели обычно имеют допустимые пределы, таким образом перед исследователем ставится задача условной оптимизации. Решение задачи условной оптимизации необходимо проводить с учётом всей имеющейся информации об объекте оптимизации - только так можно рассчитывать на наилучший результат. Использование всей информации предусматривает использование пространства недопустимых решений для получения знаний о задаче в целом и подбор решений наилучшим образом.
Пространство недопустимых решений может использоваться разными способами, которые можно условно разделить на две категории: с изменением целевой функции и без изменения целевой функции. К первой категории относится способ штрафных функций. В данной работе исследуются способы из второй категории, известные как способы «лечения».
«Лечение» недопустимой точки - есть использование знаний о значении целевой функции в этой точке и выбор новой точки, такой, что она является допустимой, на основе этих знаний. Операторы лечения могут применяться как для всех точек сразу, так и для отдельных точек.Существенным фактором, влияющим на успешность операции «лечения», является количество решений, используемых в процесс оптимизации. Генетический алгоритм оптимизации использует в ходе своей работы большое количество информации о пространстве поиска.
На рисунке 1 показано положение оператора «лечения» относительно других операторов генетического алгоритма.
Поставить задачу лечения можно исходя из постановки задач условной оптимизации. Пусть существует задача условной оптимизации на множестве решений с критерием вида . Также существует множество ограничений , -количество ограничений. Множество допустимых решений содержит в себе решения, удовлетворяющие всем ограничениям.
Пусть на i-ом шаге итерационного процесса поиска новых решений имеется конечное множество решений, содержащее как допустимые решения , так и недопустимые решения . Задача «лечения» заключается в генерации такого множества решений , что:
1. , т.е. все решения должны являться допустимыми.
2. , где - некоторый критерий качества конечного множества решений. Он может задаваться как отношение количества недопустимых решений к общему, наилучшее значение целевой функции среди всех решений множества, среднее значение целевой функции.
3. - конечно.
После определения общего вида процедуры необходимо задать функцию-отображение пары решений во множество допустимых. Для пространства векторов вещественных чисел это может быть алгоритм линейного поиска на отрезке, соединяющем две точки в пространстве . Алгоритм для подобной задачи можно построить на основе идеи методов деления отрезка. Пример итерационной процедуры на основе метода золотого сечения:
1. В вектор заносится положение допустимой точки, в вектор - положение недопустимой.
2. .
3. ; - лучшая, но не обязательно допустимая точка, - лучшая из найденных допустимых. Если - допустимая, то . Если на данной итерации находится в недопустимой точке, то значение не изменяется.
4. Если , то поиск прекращается. - достаточно малое число, выражающее желаемую точность.
5. ; - число-отношение золотого сечения.
6. Считаются - значения целевой функции в точках .
7. Считаются - степени нарушения ограничений в точках .
|
8. Принимается решение по схеме на рисункеРисунок 2. Переход к пункту 2.
Было проведено исследование влияния вероятности «лечения» на результат решения тестовых и реальных задач. Проверка гипотезы о различии математических ожиданий дала неотрицательный результат, что означает наличие положительного влияния процедуры лечения на ход процесса оптимизации.
Отличительная особенность операторов «лечения» состоит в том, что их использование возможно и желательно сочетать с использованием других способов учёта ограничений, таких, как, например, методы штрафных функций. Механизм работы операторов «лечения» позволяет беспрепятственно использовать получаемые решения в дальнейшем процессе оптимизации и добиваться лучших результатов в решении задач, чем без них.