Смекни!
smekni.com

Стохастическое моделирование и прогноз загрязнения атмосферы с использованием нелинейной регрессии (стр. 4 из 5)

- Определение предикторов, которые будут включены в модель. Необходимо выявить наиболее значимые предикторы. Для этого используется метод пошагового регрессионного анализа. При пошаговом алгоритме для критерия Фишера назначаются значения включения и исключения переменных. За счёт этого можно регулировать количество включаемых в модель предикторов.

- Функция составления системы для метода наименьших квадратов и её решения - определение коэффициентов регрессии.

- Проверка полученной схемы на «обучающей» и «независимой» выборках. Функция с помощью сохранённых параметров для преобразования линеаризует, нормализует необходимые величины и вычисляет прогностическое значение концентрации загрязняющего вещества.

- Сохранение. Функция записывает все промежуточные данные и результаты вычислений в выходной файл out.xls. Это позволяет пользователю легко анализировать результаты, строить все необходимые графики и оценки для модели средствами MS Excel, OpenOffice Calc, Statistica и другие.

Также в этом модуле программы реализованы вспомогательные функции такие как:

- Вычисление функции вероятности нормального распределения со средним 0 и ско 1.

- Вычисление обратной функции вероятности нормального распределения.

- Вычисление определителя матрицы.

- Решение системы с помощью LU-разложения.

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

Весь алгоритм программы можно представить в виде блок-схемы (рис.1).

Рис. 1. Блок-схема алгоритма.

3. ОПИСАНИЕ РЕЗУЛЬТАТОВ

3.1 Исходные данные

Исходные данные (рис. 2) для разработки стохастической модели были предоставлены ГУ "ГГО" по станции, расположенной на ул. Пестеля (г. Санкт-Петербург). Эти данные характеризуют загрязнение атмосферного воздуха озоном за 2002 год.

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

, где

-

- предиктант, максимальная за сутки концентрация озона (мкг/м3);

-

– линейная функция от n предикторов;

- в качестве предикторов

используются следующие величины:

- максимальная концентрация озона (мкг/м3) за предыдущие сутки;

-7- концентрация оксида азота (мкг/м), измеренная в 7 часов;

-7 - концентрация диоксида азота (мкг/м3), измеренная в 7 часов;

- концентрация озона (мкг/м3), измеренная в 7 часов;

- скорость ветра (м/с) в 6 и 12 часов;

- направление ветра (дес.град) в 6 и 12 часов;

- атмосферное давление (мб) в 6 и 12 часов;

- температура воздуха (°С) в 6 и 12 часов;

- относительная влажность воздуха (%) в 6 и 12 часов;

- атмосферные явления (шифр), наблюдаемые в 6 и 12 часов.

Длина массива данных составляет 273.


Рис.2. Исходные данные

3.2 Подготовительный этап

Чтобы вычислить коэффициенты функции

при каждом из предикторов необходимо подготовить исходные данные. С этой целью:

1. Ряд значений

максимальных за сутки концентраций озона разбивается на обучающую и независимую выборки. Далее все преобразования производятся только с обучающей выборкой.

2. Осуществляется цензурирование выборки: сортируется массив данных в соответствие с ростом переменной

, где
- значение
за сутки до срока, на который дается прогноз. Находим значение 60%-ного квантиля функции распределения
. - В рассматриваемом примере значению 60%-ного квантиля функции распределения
соответствует концентрация
= 63,42 мкг/м3. Делим исходные данные на две группы. В первую группу, объем которой составляет 60% от общей выборки, войдут значения
, сопутствующие метеоусловия и расчетные параметры, которые наблюдались при
< 63,42 мкг/м3. Для этой группы прогноз
осуществляется по уравнению
. Во вторую группу, объем которой составляет 40% от общей выборки, - значения
,
,
,
, сопутствующие метеоусловия и расчетные параметры, которые наблюдались при
>= 63,42 мкг/м3. Для этой группы прогноз
осуществляется с использованием прогностических схем.

3.3 Преобразование предикторов

1. Линеаризация (рис.3). Исключение нелинейности связей между предиктантом

и предикторами.

Рис. 3. Линеаризация предикторов

2. Для повышения эффективности модели в области высоких значений необходимо нормализовать все переменные, входящие в модель (рис. 4). Для этого каждое значение переменной сопоставляем значение обратной функции к функции распределения нормальной случайной величины со средним значением ноль и стандартным отклонением единица. Ее аргументом является значение выборочной функции распределения рассматриваемой случайной величины.


Рис. 4. Графики функции распределения предиктанта (до и после преобразования)

3.4 Построение регрессионного уравнения

Подготовленные исходные данные применяются для получения коэффициентов уравнения. Применяем метод пошаговой многомерной регрессии. Устанавливаем параметры: F-включения = 2, F-удаления = 1,9. После девяти итераций получаем предикторы, которые необходимо включить в систему. Так как два предиктора, F-6 и F-12, соответствуют одному и тому же метеорологическому параметру, в систему включаем только тот, который больше коррелирует с предиктантом, то есть F-6.

Таблица 1. Оценка предикторов

F-включения F-удаления In/Out Предиктор
89,0213 In
31,3170 In С7
3,4080 In F-6
6,1487 In D-6
4,7916 In NO2-7
2,2418 In F12
3,5270 In V12
3,0150 In Т-6
2,3492 In NO-7
0,4037 Out Р6
0,0001 Out Т-12
0,0001 Out D12
0,4391 Out V-6
0,0083 Out АЯ-12
0,9863 Out АЯ-6
0,6304 Out Р12

После того как определены наиболее значимые предикторы, ищем коэффициенты b0 и bi. Для этого используем метод наименьших квадратов. В результате получаем прогностическое уравнение:

, (18)