Научная статья на тему 'Сложность вычисления программ'

Сложность вычисления программ Текст научной статьи по специальности «Математика»

CC BY
42
21
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
АРИФМЕТИЧЕСКИЕ ПРОГРАММЫ / СЛОЖНОСТЬ ВЫЧИСЛЕНИЯ / ОБОБЩЕННЫЙ ПРОПОЗИЦИОНАЛЬНЫЙ ЯЗЫК / GENERALIZED ПРОПОЗИЦИОНАЛЬНЫЙ LANGUAGE / ARITHMETIC PROGRAMS / COMPLEXITY OF THE CALCULATION

Аннотация научной статьи по математике, автор научной работы — Попов С. В.

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

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

DEVELOPMENT AND IMPLEMENTATION OF THE METAL DETERGENT PRODUCTION PROJECT

Complexity of calculation of programs depending on a type of functions calculated by them is described..

Текст научной работы на тему «Сложность вычисления программ»

координаты, что позволяет этот процесс описать следующим движением во множестве случайных векторов: N+l = WN + l(Xi> . , y%k+i + yZk+i> р%к+2 + pZk+2, шшш1рХп + pZn) +

X

+ WN + 1(UX± + иу1, VX2 + vy2, ... , VXn + vyn) (1.4)

где: W- случайная булева величина: p (W = 1) = р, p(W = 0) = 1 — pw = q-^

W - является параметром, который позволяет управлять процессом ветвления.

Допустимое множество вариантов решений можно проиллюстрировать в виде дерева, рис. 3.2.

Для WN+ ^ = 1 возможен спуск по дереву вариантов ((х],х2,...,хк) - частичный вариант).

Для W"^+^= 0 происходит возврат в начальную вершину дерева вариантов.

Для вектора (х^ , ..., Х^~) варьирование осуществляется на основе экспертных данных.

Движением во множестве случайных векторов согласно (1.4) для некоторых вероятностных характеристик осуществляется согласно (1.5).

Движение (1.4) может быть выполнено либо в реализациях, либо в некоторых вероятностных характеристиках. В последнем

случае

yN+1

Р"'" = Pw[pYPp{f(x,z) — f(x,zk+1>x) — f(x,xk+1,z) + f(x,x)) + Py(f(x,zk+1,x) — f(x,x)) + Pp(f(x,xk+1>z) — f(x,x)\ + qw[PuPv(f(y) — f(Yi,X) — f(x i,^) + f(x) + Pv{f(xi,Y) — /Ш) + Pv{f(Yi,X) — f(X)) + f(X)\ (1.5)

V = (v v ) VN = (VN VN) trN = (VN VN) rr:N = (-nN ..N)

Л (Л^^.. , лк), Л (Лк + 2, ■■■ , лп ), Л (^2 , ■■■ , ■)> ” (^2 , ■■■ , l/n ),

yW ___ p yW TT^ __ f ryN _ (7N 7N\

Л — (Л! , ,Лп ), Л — (Лк+1> ... ,An),Z — (Zk + 2, ... , Zn ),

= 7.P. . 7^ -n. = n(Y. = 1)/ = 1 h- •> __

z = zk+1, ->zn>Pi = P(xi = 1),i = 1,k,pf = p(xj* = l),j = k + 1,...,n

Pw = P(wN = 1),4w = P(wN = 0),p^ = p(yN = 1),P/] = P(PN = ^ rf* = p(zf = 1),j = k + 1,n

Для того, что бы схема перебора была упорядоченной и сокращения этого перебора разложением псевдобулевой функции f ( x ) по переменной xk:

f(x) = xk[f(x1,...,xk_1,1,xk+1,...,xn) — f(x1,...,xk_1,0,xk+1,...,xn)] +

_ +f(xi,..., Xk_v 0, xk+1,..., xj = xkAkf(x) + f(0, x),

где X = (X1,...,Xk_1,Xk+1,...,Xn),Akf (X) = f(1,X) — f(0,X). (1.6)

Параметры движения (W, V, U, Z, X (1.5)) определяются за счет выполнения условия локального улучшения (УЛУ) вариационного типа MxN+i [f (х) ] — MXN [f(x)] < 0 и (1.6) принимает вид:

M{pw[pyAk+1f(x,x)(zk+1 — xk+1) + pp{Ak+1f(x,x) — Afc+i/frx^Xfc+i + PYAk+if(x,x)(zk+i — xk+1) + pp(f(x,0,x) — f(x,0,x) + f(x,x)] + qw[PuAif(x)(yi — x±) + pvx^I+1(A1f(y) — A1f(x) + pv(f(0,y) — f(0,x) + f(x)]] < 0 (1.7)

,N

y.N+1 = rr.N+1

где xk+l = Y

. w+1 — л W+l —N+l м . ™+i — л

xk+l + Yzk+1,Y = 1 — Y>x 1 = U x" + uyr\u = 1 — и

, N+1

xN и алгоритмы используют только

ч +uy?+1 - -

Выполнение УЛУ (1.7) осуществимо по трем направлениям:

- не производится осреднение, и неравенство выполняется для каждого вектора yN случайные вектора;

- осреднение осуществляется по всем переменным, неравенства и алгоритмы используют только случайные вектора, предусматривающие изменение параметров генераторов случайных величин;

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

Следовательно УЛУ необходимо производить на основе реализации случайных векторов.

Литература

1. Березовский Б.А., Гнедин А.В. Задача наилучшего выбора. М.: Наука, 1984. 196 с.

2. Грешилов А.А. Как принять наилучшее решение в реальных условиях. М: Радио и связь, 1991. 320 с.

3. Кини П.Дж., Райфа X. Принятие решений при многих критериях: предпочтения и замещения. М.: Радио и связь, 1981. 560 с.

4.

208 с.

Ларичев О.И., Мошкович Е.М. Качественные методы принятия решений. Вербальный анализ решений. М.: Наука, 1996.

Попов С.В.

Кандидат физ.-мат. наук, Колледж автоматизации и информационных технологий №20, Москва СЛОЖНОСТЬ ВЫЧИСЛЕНИЯ ПРОГРАММ

Аннотация

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

Ключевые слова: арифметические программы, сложность вычисления, обобщенный пропозициональный язык.

Popov S.V.

Candidate of ph.-m. sciences, College of automation and information technologies №20, Moscow DEVELOPMENT AND IMPLEMENTATION OF THE METAL DETERGENT PRODUCTION PROJECT

Abstract

Complexity of calculation ofprograms depending on a type offunctions calculated by them is described..

Keywords: arithmetic programs, complexity of the calculation, generalized пропозициональный language.

36

Обобщенный пропозициональный язык

Пропозициональный язык представляет собой удобное средство для описания широкого спектра содержательных задач [2]. С другой стороны, его выразительных возможностей не хватает для описания задач, связанных с вычислительными моделями. Поэтому расширение пропозиционального языка привело к появлению новых языков: модальные, динамические логики и бесконечные пропозициональные языки. Изучение разнообразных расширений пропозиционального языка представляет интерес как своими теоретическими, так и прикладными аспектами.

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

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

Расширение булевского языка над базисом {v, л, —} осуществляется путем обобщений дизъюнкции и конъюнкции на не более, чем счетное множество аргументов. Для обобщенных дизъюнкции и конъюнкции используются выражения соответственно u,=k, h и <^i=k, h, где i называется индексом этой связки, k - нижней границей, а h - верхней. k и h - это либо константы, либо символ бесконечности, либо целочисленные функции, зависящие от других индексов.

Введем определение формулы в расширенном базисе.

1. Полагаем, что задано счетное множество переменных x, y, z, ... , возможно с индексами, каждая из которых есть формула. Одна переменная может обладать несколькими индексами.

2. Если A, Ay - формулы, то A v Ay, A л Ay и A суть формулы.

3. Если h, k - нижняя и верхняя границы, f, i = k, k+1, k+2, ., h - суть формулы, то u,=k, hf и t^i=k, h f также суть формулы. Будем говорить, что все формулы f находятся в области действия связок соответственно u,=k, h и t^i=k, h. Это же относится к каждой их подформуле. Если fi содержит в качестве подформулы обобщенную формулу, то ее границы могут быть либо константой, либо символом бесконечности, либо значением некоторой целочисленной функции от i и других индексов (эти функции назовем граничными).

Пример 0.1. Следующие выражения суть формулы:

^i=0, ю xb ^i=0,ro yi+5, ^i=0,ro Э/=0, i yj+2, ^i=0, ю ^j=2i, 3i yi, j, ^i=0, ю ^j=0, ю xij v yj+1.

Укажем несколько возможных семантик обобщенных формул.

1) Временная семантика с дискретным временем.

2) Семантика линейного порядка с определенными ограничениями, которые задаются обобщенными формулами.

3) Семантика в виде вычислимых функций, когда все переменные одного типа с различными индексами, например, x0, xy, x2, ... трактуются как компоненты бинарного вектора x0xyx2 ... , представляющего двоичную запись числа.

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

Наиболее важная для нас семантика обобщенных формул связана с представлением вычислимых функций, когда обобщенная формула является характеристической для вычислимой функции. В частности, обобщенная формула F(xy, x2, ..., хп, у) представляет двоичную функцию у = f xy, x2, ., хп), если при означивании переменных xy, x2, ., хп, у соответственно бинарными векторами сту, ст2, ..., сти, ст„+у формула F(ay, ст2, ..., стп, ст„+у) истинна тогда и только тогда, когдаfoy, ст2, ..., а„) = an+y. Оказывается, что обобщенный язык с введенными ограничениями на индексы переменных, позволяет представлять все функции арифметики Пресбургера.

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

Сложность вычисления арифметических программ

В этой части работы исследуются свойства программ над двоичным арифметическим базисом [1]. В качестве базисных операторов в программах используются операторы присваивания, оператор проверки равенства/неравенства и арифметические операторы - обнуление переменной и прибавления единицы. Известно, что этот базис полный, т.е. для любой рекурсивной функции существует вычисляющая ее программа.

Так как рассматриваются двоичные функции, то каждая переменная x представляется в виде бесконечного набора булевских компонентов: x0xyx2. xi ... . При этом слабые разряды располагаются слева. Тогда каждое двоичное число представляется двоичным префиксом, оканчивающимся единицей, после которого следует бесконечный нулевой суффикс. Например, бесконечная последовательность 10100. 000 ... обозначает число 5.

Вводится понятие начального означивания переменной, когда ее конечный префикс, оканчивающийся единицей, представляет двоичное число, после которого располагаются неозначенные переменные. Например, таким означиванием может быть У0Ухзх4. xi ... . Основываясь на частичном означивании двоичной переменной, вводится понятие функции, определенной начальным означиванием ее аргумента. Для простоты приведем это определение на примере функции с одним аргументом. Пусть ф(х) есть двоичная функция, где x рассматривается как бесконечный набор двоичных компонентов, и стх есть начальное означивание аргумента. При таком означивании функция ф(х) преобразуется в функцию ф(х)|„х значения которой определяются оставшимися не означенными компонентами аргумента х. При этом мы игнорируем т.н. неподвижные компоненты значения функции ф(х), т.е. компоненты, которые не меняются при расширении означивания стх. Два начальных означивания &х и ст"х эквивалентны, если они определяют одну функцию.

Тем самым при различных начальных означиваниях ах вводится семейство функций ф(х)|„х, порождаемых различными начальными означиваниями. И мощность фактор-множества введенной эквивалентности частичных означиваний служит характеристикой сложности исходной функции. Это напоминает бинарные программы для логических функций, когда сечение программы рассматривается как мера сложности логической функции.

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

37

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

По аналогии с частичным означиванием аргумента функции определяется вычисление программы для частично означенного входа, что естественно приводит к возникновению неопределенности продолжения вычисления программы. Однако, число элементарных вычислений программы до возникновения неопределенности определяется мощностью фактор-множества. В частности, основной результат этого раздела выглядит так: для арифметических программ длина вычисления не меньше величины hc, где h - это мощность фактор множества эквивалентности частичных означиваний входа, а c - константа, определяемая видом программы и количеством ее рабочих переменных.

Литература

1. Янов Ю.И. О вычислениях в одном классе программ // Проблемы кибернетики. - 1977. №32.- С. 200-230.

2. Попов С.В., Брошкова Н.Л. Прикладная логика. - М.: Физматлит, 2011. - 212 с.

Матвеев М.Г.1, Михайлов В.В.2, Сирота Е.А.3, Новицкий Г.С.4;

'доктор технических наук, профессор, заведующий кафедрой информационных технологий управлений факультета компьютерных наук, Воронежский государственный университет; 2доктор технических наук, начальник метеорологического факультета ВУНЦ ВВС "Военно-воздушная академия имени профессора Н.Е. Жуковского и Ю.А. Гагарина"; 3кандидат физикоматематических наук, доцент кафедры цифровых технологий факультета компьютерных наук, Воронежский государственный университет; 4 Аспирант, Воронежский государственный университет МЕТОДИКА МОДЕЛИРОВАНИЯ УРАВНЕНИЯ СОСТОЯНИЯ МЕТЕОРОЛОГИЧЕСКОЙ СИСТЕМЫ НА БАЗЕ

ИСКУССТВЕННЫХ НЕЙРОННЫХ СЕТЕЙ

Аннотация

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

Ключевые слова: векторная авторегрессия, нестационарный метеорологический процесс, уравнения состояний,

искусственная нейронная сеть.

Matveev M.G.1, Mihailov V.V.2, Sirota E.A.3, Novickiy G.S.4;

'PhD in technical science, professor, Voronezh State University; 2PhD in technical science, professor, VVS Academy named after Gagarin and Jukovsky; 3PhD in Physics and mathematics, assosiate professor, Voronezh State University; ^Postgraduate student, Voronezh

State University;

METHODS OF MODELING EQUATION OF STATE METEOROLOGICAL SYSTEM BASED ON NEURAL NETWORKS

Abstract

The aim of this work was to construct a system of vector autoregression to analyze the dynamics of unsteady vector meteorological process, as well as the possibility of using experimental basis vector autoregression models with variable parameters for the analysis of the dynamics of non-stationary processes in meteorology using neural networks.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Keywords: vector autoregression, non-stationary meteorological processes, equation of state, neural network.

Модели типа «вход-выход» обеспечивают требуемый уровень адекватности, лишь при фиксированном состоянии моделируемой системы, т.е. при некоторых однородных условиях протекания моделируемых процессов и явлений. Изменения однородности условий могут находить отражение в зависимости параметров модели «вход-выход» от входных переменных и, как правило, эта зависимость стохастическая и не известна. Примером такой ситуации является известная модель векторной

авторегрессии [1], которая при использовании в метеорологии для анализа изменения во времени ^ температурных полей x имеет вид [2]

x(t) = Ax{t - Г), (1)

Aw akm (xj-1,..., xj-n )

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

функциональная зависимость средних значений параметров.

Рассмотрим модель (1) более подробно. Анализ динамических процессов изменения атмосферной температуры предполагает рассмотрение скалярных полей температуры в трехмерном пространстве земной атмосферы. Дискретное представление этого пространства - трехмерная сетка с постоянными шагами по меридианам, параллелям и расстоянию от поверхности земли. Изменение температуры в узлах сетки рассматривается как случайный процесс, порождающий временной ряд температур. Динамика температуры в каждом узле сетки с конкретными пространственными координатами зачастую определяется не столько местными факторами погоды, сколько влиянием конвективной составляющей, которая может оцениваться изменением аналогичных переменных в смежных узлах. Следствием этого является взаимная коррелированность временных рядов температур в узлах и необходимость моделирования многомерного временного ряда [3].

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

Вид модели (1) в более подробной интерпретации определим как векторную авторегрессию следующего вида:

x(t) = A^t -1) +... + Apx(t - p) + s(t)

x = (x;...; xn)

Т

(2)

A

'iv-j^n/ J±k

где - вектор значений температуры в n смежных узлах сетки; - матрица параметров модели,

k = p _ s(t)

- временной лаг авторегрессии что они имеют нулевое среднее и интерпретируются как белый шум

- вектор серийно некоррелированных ошибок, о которых предполагается,

x(t)

Если векторный процесс

стационарный и

эргодический, то параметры

Ak=

a

mlk

векторной авторегрессии (2) находятся как МНК-оценки по однородным (полученным при одинаковых условиях) статистическим данным. В этом случае параметры представляют собой константы, не изменяющиеся во времени.

38

i Надоели баннеры? Вы всегда можете отключить рекламу.