Метод прямого поиска

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

Процесс получения оценок параметров эконометрической модели согласно методу прямого поиска реализуется на основе определенного алгоритма, логика которого состоит в следующем.

1. На первом этапе выбираются начальные оценки параметров эконометрической модели ai(0), i=0,1,...,n; и их приращения Dai. Для заданных значений параметров рассчитывается значение суммы квадратов ошибок S02=S2(a(0)). Затем каждое исходное значение ai(0) заменяется на следующий его вариант

 

ai(1)= ai(0)+ Dai. (11.15)

 

Для i=0,1,...,n; последовательно рассчитываются значения S02(ai(1)). Если при этом S02(ai(1))<S02, то значение ai(1) принимается в качестве нового значения приближения к исходной оценке i-го параметра модели, в противном случае, т. е. когда S02(ai(1))>S02, то в качестве такого приближения выбирается значение ai(1)=ai(0)–Dai. Если оказывается, что и в том, и в другом случае сумма квадратов ошибки увеличивается, то в качестве оценки параметра ai эконометрической модели используется исходное значение ai(0).

Таким образом, на первом шаге метода прямого поиска определяется направление движения к вектору “оптимальных” оценок a параметров модели по каждой координате. Значения приближений ai(2) на втором шаге уже определяются по одной из двух формул ai(1)=ai(0)±Dai, и если S22(ai(2))<S12, то движение в выбранном направлении продолжается, в противном случае, т. е. когда S22³S12, в качестве оценки i-го параметра модели выбирается значение ai(1). Заметим, что S12 представляет в данном случае сумму квадратов ошибки модели, определенную согласно выражению (11.12) при векторе оценок ее параметров ai(1).

Процесс определения “оптимальных” оценок параметров эконометрической модели составляет определенное количество шагов до тех пор, пока изменения значений отдельных параметров в любом направлении (уменьшения или увеличения) не будут приводить к росту полученного на предыдущем этапе значения суммы квадратов ошибки Sj2. Здесь j индекс характеризует номер предпоследнего этапа расчетов. Однако при этом следует иметь в виду, что найденное таким образом решение, представляющее собой вектор оценок j-го шага расчетов еще нельзя рассматривать в качестве окончательного, т. е. оптимального варианта искомых оценок.

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

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

На практике можно использовать процедуры расчетов с несколькими вариантами длин шагов, уменьшающимися в порядке их следования. При этом длину последнего шага теоретически можно выбирать бесконечно малой. На практике естественно ограничиваются некоторой конечной величиной шага и решение о прекращении дальнейших уточняющих положение оптимума шагов принимается, если значение суммы квадратов ошибки изменяется в пределах заданного интервала точности. Иными словами, если для j+1-го шага (уточняющего) выполняется условие |Sj2Sj+12J, где J³0 – величина, определяющая точность расчетов, то процедура расчетов прекращается и в качестве решения выбирается полученный на j-м (или на j+1-м) шаге вектор оценок aj(aj+1).

Во-вторых, описанная выше процедура может привести к локальному минимуму S2. Иными словами, функция S2(a, x) может иметь несколько минимумов по своим параметрам, каждый из которых находится в определенной области их значений. При этом априорно, вообще говоря, количество локальных минимумов у суммы квадратов ошибки установить не представляется возможным.

Исследователя естественно интересует положение “глобального” минимума, в качестве которого может быть рассмотрен наименьший из некоторого набора локальных. В такой ситуации необходимо попытаться определить все возможные локальные минимумы в некоторой допустимой достаточно широкой области существования оценок параметров эконометрической модели и выбрать среди них наименьший по величине. Эта область может быть ограничена, исходя из некоторых содержательных предпосылок относительно их предельных (минимальных и максимальных) допустимых значений параметров модели.

Данная задача решается с помощью того же метода прямого поиска путем задания различных вариантов начальных значений параметров a0, находящихся на разных участках допустимой области их существования. При этом может сложиться ситуация, когда при всех вариантах начальных значений получают одно и то же решение. Это является определенной гарантией существования одного минимума в рассматриваемой области. В противном случае, когда разные начальные значения параметров a0 приводят к различным минимумам функции S2(a, x), из них необходимо выбрать наименьший и в качестве решения задачи оценки параметров эконометрической модели – выбрать соответствующие ему значения параметров a0, a1,..., aп.

Несложно заметить, что допустимая область существования оценок параметров эконометрической модели может быть определена в виде системы неравенств следующего вида:

 

ai*£ai£ai *, (11.16)

 

где ai* и ai* – нижняя и верхняя границы соответственно допустимой области существования значений параметра ai модели.