Прогнозирование урожайности подсолнечника по Краснодарскому краю с применением системно-когнитивного анализа

Синтез и верификация системно-когнитивной модели искусственной экосистемы насаждений подсолнечника Краснодарского края. Прогнозирование сценария изменения урожайности подсолнечника. Научное исследование искусственной экосистемы насаждений подсолнечника.

Рубрика Сельское, лесное хозяйство и землепользование
Вид статья
Язык русский
Дата добавления 29.04.2017
Размер файла 109,4 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

УДК 303.732.4

UDC 303.732.4

ПРОГНОЗИРОВАНИЕ УРОЖАЙНОСТИ ПОДСОЛНЕЧНИКА ПО КРАСНОДАРСКОМУ КРАЮ С ПРИМЕНЕНИЕМ СИСТЕМНО-КОГНИТИВНОГО АНАЛИЗА (Часть 2-я: Формальная постановка задачи и преобразование исходных данных в информацию, а ее в знания)

FORECASTING OF SUNFLOWER YIELD FOR THE KRASNODAR REGION WITH THE USE OF SYSTEM-COGNITIVE ANALYSIS (PART II:

Formal statement of the problem and the transformation of raw data into information, and information into knowledge)

Луценко Евгений Вениаминович

д.э.н., к.т.н., профессор

Lutsenko Eugeny Veniaminovich

Dr.Sci.Econ., Cand.Tech.Sci., professor

Кубанский государственный аграрный университет, Россия, 350044, Краснодар, Калинина, 13, prof.lutsenko@gmail.com

Kuban State Agrarian University, Krasnodar, Russia

Познышева Наталья Олеговна

Poznysheva Natalya Olegovna

Кубанский государственный аграрный университет, Россия, 350044, Краснодар, Калинина, 13

Kuban State Agrarian University, Krasnodar, Russia

В данной работе впервые осуществлен синтез и верификация системно-когнитивной модели искусственной экосистемы насаждений подсолнечника Краснодарского края (на уровнях районов и края в целом). На основе созданной модели решены задачи: 1. Прогнозирование сценария изменения урожайности подсолнечника на период от 1 до 5 лет. 2. Научное исследование искусственной экосистемы насаждений подсолнечника Краснодарского края (на уровнях районов и края в целом)

In this article, for the first time, the synthesis and verification of the system-cognitive model of artificial ecosystems of sunflower crops in the Krasnodar region (at the levels of regions and in the whole region) are carried out. On the basis of the developed models, there are solved tasks: 1. Forecasting scenario of sunflower yield for the period from 1 to 5 years. 2. The scientific study of artificial ecosystems of sunflower crops in the Krasnodar region (at the levels of regions and in the whole region)

Ключевые слова: системный подход, системно-когнитивный анализ, многоотраслевая корпорация, прогнозирование, семантическая информационная модель

Keywords: system approach, system-cognitive analysis, diversified corporation, forecasting, semantic information model

Анализ исходных данных и преобразование исходных данных в исходную информацию: когнитивная структуризация и формализация предметной области

Рассмотрим один из вариантов реализации этих этапов.

1-й этап СК-анализа: «Когнитивная структуризация предметной области»

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

2-й этап СК-анализа: «Формализация предметной области»

Данный этап включает: разработку градаций классификационных и описательных шкал (номинального, порядкового и числового типа); использование разработанных на предыдущих этапах классификационных и описательных шкал и градаций для формального описания (кодирования) исходных данных (исследуемой выборки). Исходные данные для решения задачи представляют собой урожайность подсолнечника по районам Краснодарского края и краю в целом за 21 год с 1989 по 2009 годы (табл. 1 и 2):

Таблица 1. Исходные данные об урожайности подсолнечника по районам Краснодарского края и краю в целом за 1989-1998 годы

Код

Административные единицы

1989

1990

1991

1992

1993

1994

1995

1996

1997

1998

1

Всего по краю средневзвешенное)

20,1

23,3

20,4

18,2

17,3

16,7

18,5

13,8

9,1

13,9

2

г. Анапа

12,7

15,7

11,2

9,9

10,7

6,7

11,5

8,2

5,4

7,2

3

г. Армавир

17,3

20,4

19,6

16,7

15,4

18,2

18,3

12,1

7,4

14,2

4

г. Белореченск

14,3

14,9

13,2

9,4

10,1

11,3

11,1

6,3

1,4

5,4

5

г. Краснодар

18,9

23,3

15,3

14,9

16,3

17,1

12,3

14,7

7,3

11,3

6

г. Крымск

12,6

12,0

8,5

8,3

8,4

9,8

5,9

5,5

0,9

4,3

7

г. Лабинск

18,8

20,7

18,8

16,0

11,3

12,0

13,5

6,4

3,4

11,7

8

г. Славянск-на-Кубани

13,1

18,8

14,0

11,0

12,8

15,0

9,7

10,5

3,2

5,5

9

Абинский

14,9

12,8

5,6

4,7

8,5

12,0

8,4

9,7

0,4

3,2

10

Белоглиненский

20,9

26,4

21,0

19,3

18,5

16,7

21,9

15,8

10,0

11,7

11

Брюховецкий

22,6

22,8

22,7

20,5

21,5

19,7

22,4

17,3

11,5

15,1

12

Выселковский

21,5

25,3

22,6

19,9

18,6

18,3

23,0

18,7

12,5

17,1

13

Гулькевичский

18,9

25,7

20,0

20,8

18,6

20,6

20,1

15,1

11,7

18,5

14

Динской

20,7

24,6

20,1

13,5

17,0

16,7

12,4

14,5

7,3

13,1

15

Ейский

20,9

21,0

19,8

21,4

19,8

13,5

20,7

12,4

12,8

14,4

16

Кавказский

18,5

21,0

18,1

16,2

16,4

16,4

17,9

15,4

9,2

13,2

17

Калининский

21,8

24,9

22,4

16,7

19,8

20,3

16,3

14,7

5,4

13,2

18

Каневский

22,6

25,5

21,3

19,3

19,7

17,9

20,6

16,1

12,9

17,8

19

Кореновский

21,3

23,6

22,9

17,4

18,9

19,6

19,9

15,5

8,9

13,7

20

Красноармейский

21,7

25,2

15,6

17,0

22,4

18,6

12,7

13,6

5,1

10,4

21

Крыловский

19,8

22,6

21,1

18,2

16,1

14,3

18,0

13,7

7,1

12,7

22

Курганинский

17,0

21,4

19,6

18,6

16,3

17,2

18,6

12,7

9,5

13,3

23

Кущевский

20,7

25,0

22,7

18,8

14,9

14,6

17,5

9,5

6,3

10,2

24

Ленинградский

23,1

25,4

23,6

21,0

19,1

20,4

20,8

18,0

10,6

16,8

25

Мостовский

15,4

18,1

16,8

9,9

9,2

11,3

10,6

6,9

2,7

3,6

26

Новокубанский

19,4

24,4

19,9

21,7

18,4

20,0

20,5

13,5

10,4

21,5

27

Новопокровский

18,2

24,3

19,8

18,1

16,4

16,1

20,7

15,7

9,0

12,6

28

Отрадненский

14,3

18,7

16,3

10,4

8,6

10,6

12,3

4,9

2,5

7,8

29

Павловский

19,7

22,0

22,2

19,8

18,6

17,7

20,8

16,0

9,9

16,1

30

Приморско-Ахтарский

23,1

24,9

24,3

22,8

22,1

18,0

20,1

16,1

9,1

14,1

31

Северский

16,0

14,1

9,8

9,1

7,9

11,2

6,4

6,4

0,5

8,7

32

Староминский

22,5

25,4

23,0

20,1

18,1

17,1

20,8

16,0

11,2

17,9

33

Тбилисский

19,2

24,4

18,5

17,1

16,9

17,1

17,7

14,3

10,1

15,4

34

Темрюкский

17,6

16,8

12,0

15,0

11,6

7,0

11,2

7,6

7,0

6,0

35

Тимашевский

22,6

24,7

21,7

16,4

19,1

21,0

18,6

17,1

8,2

15,3

36

Тихорецкий

19,8

22,8

22,1

18,9

18,1

18,1

17,3

14,0

8,8

12,5

37

Успенский

17,5

22,7

18,5

19,7

16,6

18,5

20,5

12,3

8,9

7,8

38

Усть-Лабинский

20,2

23,1

21,8

16,2

16,8

0,0

16,9

14,4

7,9

13,9

39

Щербиновский

21,5

25,5

21,0

22,2

20,5

17,5

21,8

14,2

14,9

17,2

Таблица 2. Исходные данные об урожайности подсолнечника по районам Краснодарского края и краю в целом за 1999-2009 годы

Административные единицы

1999

2000

2001

2002

2003

2004

2005

2006

2007

2008

2009

Всего по краю

средневзвешенное)

14,0

15,2

14,5

18,5

15,0

18,2

20,9

22,5

20,7

25,3

22,4

1

г. Анапа

8,1

7,4

7,3

6,8

4,8

6,5

9,0

13,2

13,3

18,2

14,3

2

г. Армавир

9,2

12,7

11,0

16,3

9,8

16,5

22,3

25,0

22,7

26,5

23,3

3

г. Белореченск

5,3

6,5

6,0

9,1

6,5

7,7

13,2

17,3

14,7

19,2

17,3

4

г. Краснодар

13,5

15,0

16,5

18,8

18,4

22,3

22,0

27,1

24,3

28,6

23,3

5

г. Крымск

2,3

4,1

4,2

5,7

1,7

6,0

9,8

11,1

13,3

17,0

19,0

6

г. Лабинск

9,8

12,3

10,4

17,2

14,9

16,6

17,9

18,4

19,5

20,5

19,8

7

г. Славянск-на-Кубани

8,0

9,4

11,2

12,7

8,3

8,8

15,3

17,4

16,4

20,2

19,2

8

Абинский

6,0

5,8

10,1

4,0

4,1

6,9

6,2

12,3

8,0

17,1

19,2

9

Белоглиненский

14,0

15,1

13,3

21,4

15,4

19,1

24,1

22,3

14,2

17,6

15,2

10

Брюховецкий

19,0

17,1

15,3

19,0

19,3

22,9

25,5

25,6

23,9

31,2

24,7

11

Выселковский

14,0

17,3

16,2

21,8

16,7

21,0

25,0

28,7

25,1

30,2

27,8

12

Гулькевичский

19,0

19,7

17,7

23,7

18,4

22,5

25,5

25,3

21,3

24,3

21,0

13

Динской

10,0

16,3

18,4

23,8

19,0

18,8

21,5

25,0

24,7

25,6

24,8

14

Ейский

13,0

14,2

13,6

15,9

15,0

16,4

18,4

17,0

16,2

26,8

17,8

15

Кавказский

19,0

17,8

16,9

22,1

15,5

21,4

22,3

20,4

22,0

28,0

22,9

16

Калининский

10,0

13,0

14,1

14,6

13,2

17,2

18,6

20,8

21,6

25,7

28,6

17

Каневский

18,0

18,5

17,5

20,7

17,5

21,9

24,7

27,6

22,2

31,3

27,3

18

Кореновский

19,0

16,4

14,5

18,3

16,3

19,4

22,5

25,7

22,9

29,5

27,0

19

Красноармейский

10,0

11,8

12,6

14,2

12,9

15,5

16,5

16,2

17,7

23,8

20,9

20

Крыловский

14,0

13,6

11,9

15,6

8,2

12,0

16,6

17,6

16,4

23,2

15,6

21

Курганинский

18,0

16,9

17,2

19,1

12,1

17,4

20,4

24,7

22,1

27,8

27,4

22

Кущевский

10,0

11,7

11,5

15,2

14,6

17,8

18,9

21,3

17,1

22,7

21,6

23

Ленинградский

19,0

17,9

15,4

20,4

20,0

19,9

20,8

25,4

24,5

27,5

24,5

24

Мостовский

9,0

9,0

10,2

13,0

10,5

8,6

12,8

16,0

16,9

23,1

20,6

25

Новокубанский

21,0

21,9

18,8

26,1

23,1

23,1

26,6

27,5

27,9

30,8

27,4

26

Новопокровский

14,4

14,9

13,5

19,1

13,9

18,6

22,0

21,3

15,3

19,2

15,4

27

Отрадненский

9,4

9,4

9,4

11,0

10,6

11,3

18,8

16,7

17,0

18,7

17,8

28

Павловский

14,5

16,3

14,8

19,7

14,0

16,7

20,9

22,9

21Д

25,2

21,3

29

Приморско-Ахтарский

9,9

13,0

12,4

15,7

13,4

16,9

19,5

19,5

23,6

28,4

22,8

30

Северский

8,4

7,5

5,8

7,0

7,4

6,2

11,8

12,5

13,8

16,0

16,7

31

Староминский

18,2

17,4

16,5

17,1

17,3

20,5

18,2

21,5

23,1

33,4

25,9

32

Тбилисский

16,1

19,0

19,3

25,2

17,3

20,3

23,7

28,0

26,3

24,8

26,3

33

Темрюкский

9,2

7,9

7,7

8,5

7,1

7,9

8,9

8,2

5,3

7,4

11,7

34

Тимашевский

17,0

17,0

15,8

19,9

17,4

21,5

19,7

28,0

25,1

27,8

27,0

35

Тихорецкий

14,0

15,6

15,8

19,9

15,2

21,0

24,6

24,0

22,0

25,4

22,9

36

Успенский

10,0

11,5

10,6

17,7

9,7

11,3

13,9

13,5

18,5

14,8

18,5

37

Усть-Лабинский

17,9

18,0

18,6

21,7

20,0

25,4

26,7

26,2

28,2

28,9

28,7

38

Щербиновский

18,3

16,9

15,7

16,5

15,2

20,6

21,1

24,8

20,6

27,7

21,2

Для преобразования исходных данных в информацию авторами был разработан программный интерфейс, обеспечивающий представление числовых исходных данных, приведенных в табл.1 и табл.2, в форме интервальных значений, обозначенных лингвистическими переменными: «В», «С», «Н», означающих соответственно, следующие элементарные события: высокая, средняя и низкая урожайность (при этом нулевые значения считаются отсутствием данных):

Транспонирование матрицы исходных данных

и формирование БД для расчета по краю и районам

(c) Луценко Е.В., Познышева Н.О.

05/29/12 03:20pm

Программные интерфейсы для импорта данных

Транспонирование DBF-матриц исходных данных

scr23 = SAVESCREEN(0,0,24,79)

Рекогносцировка

CLOSE ALL

PUBLIC Disk_name := DISKNAME()

PUBLIC Cur_dir := CURDIR()

PUBLIC Disk_dir := Disk_name+":\"+Cur_dir

SET CURSOR OFF

CLS

Создать БД для транспонированной БД Inp_data.dbf

CLOSE ALL

USE Ish_data EXCLUSIVE NEW

SELECT Ish_data

Записать всю базу исходных данных в массив

PRIVATE A_IshData[RECCOUNT(), FCOUNT()]

DBGOTOP()

i=1

DO WHILE .NOT. EOF()

FOR j=1 TO FCOUNT()

A_IshData[i,j] = FIELDGET(j)

NEXT

i++

DBSKIP(1)

ENDDO

Создаем файл структуры БД для транспонированной матрицы

CREATE Struc

APPEND BLANK

REPLACE Field_name WITH "Year",;

Field_type WITH "C",;

Field_len WITH 4 ,;

Field_dec WITH 0

FOR j = 1 TO 39

APPEND BLANK

REPLACE Field_name WITH "R"+STRTRAN(STR(j,2)," ","0"),;

Field_type WITH "N",;

Field_len WITH 4 ,;

Field_dec WITH 1

NEXT

Создаем базу данных объектов

CREATE Inp_data FROM Struc

CLOSE ALL

ERASE Struc.dbf

Заполнить транспонированную БД пустыми записями

CLOSE ALL

USE Inp_data EXCLUSIVE NEW

SELECT Inp_data

FOR i=1 TO 21 // Годы

APPEND BLANK

FIELDPUT(1, STR(A_IshData[1,2+i]),4)

NEXT

Заполнить транспонированную БД данными из БД исходных данных

FOR i=1 TO 21 // Годы

DBGOTO(i)

FOR j=1 TO 39 // Районы, 1-й КК

FIELDPUT(1+j, A_IshData[1+j,2+i])

NEXT

NEXT

Записать транспонированную базу исходных данных в массив

CLOSE ALL

USE Inp_data EXCLUSIVE NEW

PRIVATE A_InpData[RECCOUNT(), FCOUNT()]

DBGOTOP()

i=1

DO WHILE .NOT. EOF()

FOR j=1 TO FCOUNT()

A_InpData[i,j] = FIELDGET(j)

NEXT

i++

DBSKIP(1)

ENDDO

Создание БД для программного интерфейса

по Краснодарскому краю в целом и всем районам края

Создаем базы данных по районам и краю в целом

FOR i=1 TO 39

M_Name = "Inp_R"+STRTRAN(STR(i,2)," ","0")

IF FILEDATE(M_Name,16) = CTOD("//")

DIRMAKE(M_Name)

ENDIF

DIRCHANGE(M_Name)

Создаем файл структуры для числовых БД для программного интерфейса

CLOSE ALL

CREATE Struc

APPEND BLANK

REPLACE Field_name WITH "Year",;

Field_type WITH "C",;

Field_len WITH 4 ,;

Field_dec WITH 0

FOR j = 1 TO 21

APPEND BLANK

REPLACE Field_name WITH "Y_"+STRTRAN(STR(j,2)," ","0"),;

Field_type WITH "N",;

Field_len WITH 4 ,;

Field_dec WITH 1

NEXT

CREATE (M_Name) FROM Struc

DIRCHANGE("..")

NEXT

FOR i=1 TO 39

M_Name= "Inp_R"+STRTRAN(STR(i,2)," ","0")

DIRCHANGE(M_Name)

CLOSE ALL

USE (M_Name) EXCLUSIVE NEW

Создание пустой БД по j-му району

FOR j=1 TO 21

APPEND BLANK

FIELDPUT(1, A_InpData[j,1])

NEXT

DIRCHANGE("..")

NEXT

CLOSE ALL

ERASE Struc.dbf

Создание БД для программного интерфейса

по Краснодарскому краю в целом и всем районам края

FOR i=1 TO 39

M_Name= "Inp_R"+STRTRAN(STR(i,2)," ","0")

DIRCHANGE(M_Name)

CLOSE ALL

USE (M_Name) EXCLUSIVE NEW

Заполнение БД по j-му району

FOR k=1 TO 21

FOR j=k TO 21

DBGOTO(j)

FIELDPUT(1+k, A_InpData[j-k+1,1+i])

NEXT

NEXT

DIRCHANGE("..")

NEXT

CLOSE ALL

Поиск границ интервалов: РАВНЫЕ ИНТЕРВАЛЫ

- высокая урожайность (B)

- средняя урожайность (C)

- низкая урожайность (H)

M_Max = -9999

M_Min = +9999

FOR i=1 TO 21

FOR j=2 TO 40

IF A_InpData[i,j] > 0

M_Max = MAX(M_Max, A_InpData[i,j])

M_Min = MIN(M_Min, A_InpData[i,j])

ENDIF

NEXT

NEXT

Delta = (M_Max - M_Min) / 3 // Величина интервала. Интервалы равные

H1 = M_Min + 0 Delta

H2 = M_Min + 1 Delta

C1 = M_Min + 1 Delta

C2 = M_Min + 2 Delta

B1 = M_Min + 2 Delta

B2 = M_Min + 3 Delta

Печать Мin, Мах, Delta и границ интервалов

SET DEVICE TO PRINT

SET PRINTER TO ("BCH_MMD.txt")

s = 0

@s , 0 SAY "Мin, Мах, Delta и границ интервалов"

@s++, 0 SAY "Мin ="+ALLTRIM(STR(M_Min),3,1)

@s++, 0 SAY "Мax ="+ALLTRIM(STR(M_Max),3,1)

@s++, 0 SAY "Delta="+ALLTRIM(STR(Delta),3,1)

@s++, 0 SAY "H={"+ALLTRIM(STR(H1),3,1)+", "+ALLTRIM(STR(H2),3,1)+"}"

@s++, 0 SAY "C={"+ALLTRIM(STR(C1),3,1)+", "+ALLTRIM(STR(C2),3,1)+"}"

@s++, 0 SAY "B={"+ALLTRIM(STR(B1),3,1)+", "+ALLTRIM(STR(B2),3,1)+"}"

SET PRINTER TO

SET DEVICE TO SCREEN

Формирование границ интервалов таким образом,

чтобы в них было РАВНОЕ количество наблюдений

A_inp := {}

FOR i=1 TO 21

FOR j=1 TO 39

IF A_InpData[i,1+j] > 0

AADD(A_inp, A_InpData[i,1+j])

ENDIF

NEXT

NEXT

ASORT(A_inp)

N_Nabl = LEN(A_inp)

H1---H2C1---C2B1---B2

H = 0

C = 0

B = 0

H1 = A_inp[1]

FOR j=1 TO N_Nabl

IF H+1 <= N_Nabl/3

++H

H2 = A_inp[j]

C1 = A_inp[j]

ELSE

IF C+1 <= N_Nabl/3

++C

C2 = A_inp[j]

B1 = A_inp[j]

ELSE

++B

B2 = A_inp[j]

ENDIF

ENDIF

NEXT

Печать границ интервалов с равным количеством наблюдений

SET DEVICE TO PRINT

SET PRINTER TO ("BCH_KOT.txt")

s = 0

@s , 0 SAY "Печать границ интервалов с примерно РАВНЫМ количеством наблюдений"

@s++, 0 SAY "Всего наблюдений"+ALLTRIM(STR(N_Nabl),15)

@s++, 0 SAY "H={"+ALLTRIM(STR(H1),13,1)+", "+ALLTRIM(STR(H2),13,1)+"}, Интервал="+ALLTRIM(STR(H2-H1,13,1))+", Кол-во набл.низкой урожайности: "+ALLTRIM(STR(H),15)

@s++, 0 SAY "C={"+ALLTRIM(STR(C1),13,1)+", "+ALLTRIM(STR(C2),13,1)+"}, Интервал="+ALLTRIM(STR(C2-C1,13,1))+", Кол-во набл.средней урожайности: "+ALLTRIM(STR(C),15)

@s++, 0 SAY "B={"+ALLTRIM(STR(B1),13,1)+", "+ALLTRIM(STR(B2),13,1)+"}, Интервал="+ALLTRIM(STR(B2-B1,13,1))+", Кол-во набл.высокой урожайности: "+ALLTRIM(STR(B),15)

SET PRINTER TO

SET DEVICE TO SCREEN

Формирование БД с лингвистическими переменными

FOR i=1 TO 39

M_NameR= "Inp_R"+STRTRAN(STR(i,2)," ","0")

M_NameL= "Inp_L"+STRTRAN(STR(i,2)," ","0")

DIRCHANGE(M_NameR)

Создаем файл структуры для лингвистических БД для программного интерфейса

CLOSE ALL

CREATE Struc

APPEND BLANK

REPLACE Field_name WITH "Year",;

Field_type WITH "C",;

Field_len WITH 4 ,;

Field_dec WITH 0

FOR j = 1 TO 21

APPEND BLANK

REPLACE Field_name WITH "Y_"+STRTRAN(STR(j,2)," ","0"),;

Field_type WITH "C",;

Field_len WITH 1 ,;

Field_dec WITH 0

NEXT

APPEND BLANK

REPLACE Field_name WITH "ALL_YEAR",;

Field_type WITH "C",;

Field_len WITH 21 ,;

Field_dec WITH 0

CREATE (M_NameL) FROM Struc

DIRCHANGE("..")

NEXT

FOR i=1 TO 39

M_NameR= "Inp_R"+STRTRAN(STR(i,2)," ","0")

M_NameL= "Inp_L"+STRTRAN(STR(i,2)," ","0")

DIRCHANGE(M_NameR)

CLOSE ALL

USE (M_NameL) EXCLUSIVE NEW

Создание пустой БД по j-му району

FOR j=1 TO 21

APPEND BLANK

FIELDPUT(1, A_InpData[j,1])

NEXT

DIRCHANGE("..")

NEXT

CLOSE ALL

ERASE Struc.dbf

Создание лингвистических БД для программного интерфейса

по Краснодарскому краю в целом и всем районам края

FOR i=1 TO 39

M_NameR= "Inp_R"+STRTRAN(STR(i,2)," ","0")

M_NameL= "Inp_L"+STRTRAN(STR(i,2)," ","0")

DIRCHANGE(M_NameR)

CLOSE ALL

USE (M_NameR) EXCLUSIVE NEW

USE (M_NameL) EXCLUSIVE NEW

Заполнение БД по j-му району

SELECT(M_NameR)

DBGOTOP()

DO WHILE .NOT. EOF()

M_AllYear = ""

M_Recno = RECNO()

FOR j=2 TO FCOUNT()-1

SELECT(M_NameR)

MV = FIELDGET(j)

IF MV > 0

SELECT(M_NameL)

DBGOTO(M_Recno)

DO CASE

CASE B1 <= MV .AND. MV < B2

FIELDPUT(j, "B")

M_AllYear = M_AllYear + "B"

CASE C1 <= MV .AND. MV < C2

FIELDPUT(j, "C")

M_AllYear = M_AllYear + "C"

CASE H1 <= MV .AND. MV <=H2

FIELDPUT(j, "H")

M_AllYear = M_AllYear + "H"

ENDCASE

ENDIF

NEXT

SELECT(M_NameL)

DBGOTO(M_Recno)

REPLACE All_Year WITH M_AllYear

SELECT(M_NameR)

DBSKIP(1)

ENDDO

DIRCHANGE("..")

NEXT

CLOSE ALL

СФОРМИРОВАТЬ КЛАССИФИКАЦИОННЫЕ И ОПИСАТЕЛЬНЫЕ ШКАЛЫ И ГРАДАЦИИ

И ОБУЧАЮЩУЮ ВЫБОРКУ ПО ВСЕМ РАЙОНАМ КРАСНОДАРСКОГО КРАЯ И КРАЮ В ЦЕЛОМ

Создать БД сценариев по районам и краю в целом

CLOSE ALL

CREATE Struc

APPEND BLANK

REPLACE Field_name WITH "Kod",;

Field_type WITH "N",;

Field_len WITH 4 ,;

Field_dec WITH 0

APPEND BLANK

REPLACE Field_name WITH "ALL_YEAR",;

Field_type WITH "C",;

Field_len WITH 21 ,;

Field_dec WITH 0

CREATE Scenario FROM Struc

CLOSE ALL

ERASE Struc.dbf

A_scenario := {}

FOR i=1 TO 39

M_NameR= "Inp_R"+STRTRAN(STR(i,2)," ","0")

M_NameL= "Inp_L"+STRTRAN(STR(i,2)," ","0")

DIRCHANGE(M_NameR)

CLOSE ALL

USE (M_NameL) EXCLUSIVE NEW

DBGOBOTTOM()

AADD(A_scenario, All_Year)

DIRCHANGE("..")

NEXT

CLOSE ALL

USE Scenario EXCLUSIVE NEW

FOR i=1 TO 39

APPEND BLANK

FIELDPUT(1, i)

FIELDPUT(2, A_scenario[i])

NEXT

CLOSE ALL

Скопировать БД классификационных и описательных шкал и градаций

и обучающей выборки в директории всех моделей

FOR i=1 TO 39

M_NameR= "Inp_R"+STRTRAN(STR(i,2)," ","0")

COPY FILE (Disk_dir+"\Object.dbf") TO (Disk_dir+"\"+M_NameR+"\Object.dbf")

COPY FILE (Disk_dir+"\Priz_ob.dbf") TO (Disk_dir+"\"+M_NameR+"\Priz_ob.dbf")

COPY FILE (Disk_dir+"\Priz_per.dbf") TO (Disk_dir+"\"+M_NameR+"\Priz_per.dbf")

COPY FILE (Disk_dir+"\Priz_per.dbt") TO (Disk_dir+"\"+M_NameR+"\Priz_per.dbt")

COPY FILE (Disk_dir+"\ObInfZag.dbf") TO (Disk_dir+"\"+M_NameR+"\ObInfZag.dbf")

COPY FILE (Disk_dir+"\ObInfKpr.dbf") TO (Disk_dir+"\"+M_NameR+"\ObInfKpr.dbf")

NEXT

Создание справочников классов и признаков

FOR r=1 TO 39

M_NameR= "Inp_R"+STRTRAN(STR(r,2)," ","0")

M_NameL= "Inp_L"+STRTRAN(STR(r,2)," ","0")

DIRCHANGE(M_NameR)

CLOSE ALL

USE (M_NameL) EXCLUSIVE NEW

USE Object EXCLUSIVE NEW;ZAP

USE Priz_per EXCLUSIVE NEW;ZAP

SELECT(M_NameL)

DBGOBOTTOM()

M_AllYear = All_Year

A_Obj := {}

A_Prp := {}

FOR t=2 TO LEN(M_AllYear) // Позиция во времени

Формирование справочника классов

FOR j=1 TO t-1 // Количество лет в классе

Mu = ALLTRIM(SUBSTR(M_AllYear, t-j, j))

IF ASCAN(A_Obj, STR(LEN(Mu),5)+Mu) = 0

AADD( A_Obj, STR(LEN(Mu),5)+Mu)

ENDIF

NEXT

Формирование справочника признаков

FOR j=t TO LEN(M_AllYear) // Количество лет в признаке

Mu = ALLTRIM(SUBSTR(M_AllYear, t, j-t+1))

IF ASCAN(A_Prp, STR(LEN(Mu),5)+Mu) = 0

AADD( A_Prp, STR(LEN(Mu),5)+Mu)

ENDIF

NEXT

NEXT

Запись справочника классов

ASORT(A_Obj)

SELECT Object

FOR j=1 TO LEN(A_Obj)

APPEND BLANK

FIELDPUT(1, j)

FIELDPUT(2, SUBSTR(A_Obj[j],6))

NEXT

SELECT Object ;INDEX ON Name TO Obj_name

Запись справочника признаков

ASORT(A_prp)

SELECT Priz_per

FOR j=1 TO LEN(A_Prp)

APPEND BLANK

FIELDPUT(1, j)

FIELDPUT(2, SUBSTR(A_Prp[j],6))

NEXT

SELECT Priz_per;INDEX ON Name TO Prp_name

DIRCHANGE("..")

NEXT

Создание обучающей выборки

FOR r=1 TO 39

M_NameR= "Inp_R"+STRTRAN(STR(r,2)," ","0")

M_NameL= "Inp_L"+STRTRAN(STR(r,2)," ","0")

DIRCHANGE(M_NameR)

CLOSE ALL

USE (M_NameL) EXCLUSIVE NEW

USE ObInfZag EXCLUSIVE NEW;ZAP

USE ObInfKpr EXCLUSIVE NEW;ZAP

USE Object INDEX Obj_name EXCLUSIVE NEW

USE Priz_per INDEX Prp_name EXCLUSIVE NEW

SELECT(M_NameL)

DBGOBOTTOM()

M_AllYear = All_Year

M_KodIst = 0

FOR t=2 TO LEN(M_AllYear) // Позиция во времени

Формирование справочника классов

FOR i=1 TO t-1 // Количество лет в классе

FOR j=t TO LEN(M_AllYear) // Количество лет в признаке

M_obj = ALLTRIM(SUBSTR(M_AllYear, t-i, i))

SELECT Object;SET ORDER TO 1;Tr=DBSEEK(M_obj)

IF Tr

M_KodObj = Kod

ENDIF

M_prp = ALLTRIM(SUBSTR(M_AllYear, t,j-t+1))

SELECT Priz_per;SET ORDER TO 1;Tr=DBSEEK(M_prp)

IF Tr

M_KodPrp = Kod

ENDIF

Запись обучающей выборки

++M_KodIst

SELECT ObInfZag

APPEND BLANK

FIELDPUT(1, M_KodIst)

FIELDPUT(2, STR(t, 2)+", "+STR(i,2)+", "+STR(j,2))

FIELDPUT(3, M_KodObj)

SELECT ObInfKpr

APPEND BLANK

FIELDPUT(1, M_KodIst)

FIELDPUT(2, M_KodPrp)

NEXT

NEXT

NEXT

DIRCHANGE("..")

NEXT

Mess = "Процесс завершен успешно !"

@22,40-LEN(Mess)/2 SAY Mess COLOR "rg+/rb"

INKEY(0)

RESTSCREEN(0,0,24,79,scr23)

QUIT

Укрупненный алгоритм работы данного программного интерфейса приведен на рисунке 1:

Рисунок 1. Алгоритм работы программного интерфейса преобразования исходных числовых данных в форму интервальных значений, соответствующих элементарным событиям: «высокая, средняя и низкая урожайность»

С учетом теоремы Котельникова (Найквиста-Шеннона) было принято решение использовать адаптивные интервалы, т.е. подобрать границы интервалов таким образом, чтобы в них попадало примерно одинаковое количество наблюдений (таблица 3):

Таблица 3. Способ кодирования числовых значений интервальными значениями, обозначенными лингвистическими переменными

Интервальное значение (лингвистическая переменная)

Интервал

Количество наблюдений

Начальное значение

Конечное значение

Величина

Н

0,4

14,4

14,0

272

С

14,4

19,4

5,0

272

В

19,4

33,4

14,0

273

Всего:

817

С использованием способа кодирования, представленного в таблице 3, исходные данные из таблиц 1 и 2 представляются в виде (таблица 4):

Таблица 4. Представление исходных данных в форме элементарных событий в предметной области (интервальных значений или лингвистических переменных)

Код района

1989 - 2009 годы

1

Всего по краю (средневзвешенное)

BBBBBCCCCCHHHHCCCCBBB

2

г. Анапа

HCHHHHHHHHHHHHHHHHHCH

3

г. Армавир

BBBBBCHCHHHHHHCCCCBBC

4

г. Белореченск

CCCCHHHHHHHHHHHHHHHCH

5

г. Краснодар

BBBBBBCCCCHHHCHCCCCBC

6

г. Крымск

CCHHHHHHHHHHHHHHHHHHH

7

г. Лабинск

BBBCCCCCHHHHHHHHHCCBC

8

г. Славянск-на-Кубани

CBCCCHHHHHHHHHHCHHHCH

9

Абинский

CCHHHHHHHHHHHHHHHHHHC

10

Белоглиненский

CCHBBCCBHCHHHCBCCCBBB

11

Брюховецкий

BBBBBBCCCCCCHCBBBBBBB

12

Выселковский

BBBBBBCBCCHCHCBCCBBBB

13

Гулькевичский

BBBBBBCBCBCCHCBBCBBBC

14

Динской

BBBBBCCBCCHHHCHCCHBBB

15

Ейский

CBCCCCCCHHHCHHBHBBBBB

16

Кавказский

BBBBBBCBCCCHHCCCCCCBC

17

Калининский

BBBBCCHCHHHHHCCBBCBBB

18

Каневский

BBBBBBCBCCCCHCBCBCBBB

19

Кореновский

BBBBBBCCCCCHHCBBCCBBB

20

Красноармейский

BBCCCCHHHHHHHHHCBCCBB

21

Крыловский

CBCCCHHCHHHHHHCHCCBBB

22

Курганинский

BBBBBCHCCCCHHHCCCCBBC

23

Кущевский

BBCBCCCCHHHHHHCCCCBBB

24

Ленинградский

BBBBBBBBCCCCHCBBCBBBB

25

Мостовский

BBCCHHHHHHHHHHHHHHCCC

26

Новокубанский

BBBBBBBBCBBBHHBBCBBBB

27

Новопокровский

CCCBBCHCHCCHHCBCCCBBC

28

Отрадненский

CCCCCHHHHHHHHHHHHHCCH

29

Павловский

BBBBCHBCCCCHCBCCBBBB

30

Приморско-Ахтарский

BBBBBCHCHHHHHCBCBBBBB

31

Северский

CCHHHHHHHHHHHHHHHHHHC

32

Староминский

BBBCBCCCCCCHCBCCBBBB

33

Тбилисский

BBBBBBCBCCCCHHCCCCCBC

34

Темрюкский

HHHHHHHHHHHHHHHHHCHCC

35

Тимашевский

BBBBBBCBCCCCHCCBCCBBB

36

Тихорецкий

BBBBBBCBCCHHHHCCCCBBB

37

Успенский

CCCHHHHCHHHHHHBCCBCBC

38

Усть-Лабинский

BBBBBBBBCCCHHCCCCBBB

39

Щербиновский

BBBBBBCCCCCCCHBCBBBBB

Затем на основе таблицы 4 были разработаны справочник классов, соответствующих сценариям изменения будущих состояний урожайности подсолнечника, и справочник признаков, соответствующих прошлым сценариям изменения состояний урожайности (таблицы 5 и 6):

Таблица 5. Справочник классов - систем событий различной сложности или сценариев изменения урожайности в будущем


Подобные документы

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.

Код

Наимен.

Код

Наименован.

Код

Наименование

Код

Наименование

1

B

44

CCCCH

87

CCCCHHHH

130

BBCCCCCHHHHC

2

C

45

CCCHH

88

CCCHHHHC

131

BCCCCCHHHHCC

3

H

46

CCHHH

89

CCHHHHCC

132

CCCCCHHHHCCC

4

BB

47

CHHHH

90

CHHHHCCC

133

CCCCHHHHCCCC

5

BC

48

HCCCC

91

HHCCCCBB

134

CCCHHHHCCCCB

6

CB

49

HHCCC

92

HHHCCCCB

135

CCHHHHCCCCBB

7

CC

50

HHHCC

93

HHHHCCCC

136

BBBBBCCCCCHHH

8

CH

51

HHHHC

94

BBBBBCCCC

137

BBBBCCCCCHHHH

9

HC

52

BBBBBC

95

BBBBCCCCC

138

BBBCCCCCHHHHC

10

HH

53

BBBBCC

96

BBBCCCCCH

139

BBCCCCCHHHHCC

11

BBB

54

BBBCCC

97

BBCCCCCHH

140

BCCCCCHHHHCCC

12

BBC

55

BBCCCC

98

BCCCCCHHH

141

CCCCCHHHHCCCC

13

BCC

56

BCCCCC

99

CCCCCHHHH

142

CCCCHHHHCCCCB

14

CBB

57

CCCCBB

100

CCCCHHHHC

143

CCCHHHHCCCCBB

15

CCB

58

CCCCCH

101

CCCHHHHCC

144

BBBBBCCCCCHHHH

16

CCC

59

CCCCHH

102

CCHHHHCCC

145

BBBBCCCCCHHHHC

17

CCH

60

CCCHHH

103

CHHHHCCCC

146

BBBCCCCCHHHHCC

18

CHH

61

CCHHHH

104

HHHCCCCBB

147

BBCCCCCHHHHCCC

19

HCC

62

CHHHHC

105

HHHHCCCCB

148

BCCCCCHHHHCCCC

20

HHC

63

HCCCCB

106

BBBBBCCCCC

149

CCCCCHHHHCCCCB

21

HHH

64

HHCCCC

107

BBBBCCCCCH

150

CCCCHHHHCCCCBB

22

BBBB

65

HHHCCC

108

BBBCCCCCHH

151

BBBBBCCCCCHHHHC

23

BBBC

66

HHHHCC

109

BBCCCCCHHH

152

BBBBCCCCCHHHHCC

24

BBCC

67

BBBBBCC

110

BCCCCCHHHH

153

BBBCCCCCHHHHCCC

25

BCCC

68

BBBBCCC

111

CCCCCHHHHC

154

BBCCCCCHHHHCCCC

26

CCBB

69

BBBCCCC

112

CCCCHHHHCC

155

BCCCCCHHHHCCCCB

27

CCCB

70

BBCCCCC

113

CCCHHHHCCC

156

CCCCCHHHHCCCCBB