Научная статья на тему 'Формальное описание функционального логико-математического моделирования динамических систем'

Формальное описание функционального логико-математического моделирования динамических систем Текст научной статьи по специальности «Кибернетика»

CC BY
46
8
Поделиться
Ключевые слова
МАТЕМАТИЧЕСКОЕ МОДЕЛИРОВАНИЕ / ЗАДАЧА МОДЕЛИРОВАНИЕ / БАЗА ЗНАНИЙ / ФУНКЦИОНАЛЬНЫЕ ГРАММАТИКИ / ЛЯМБДА-ИСЧИСЛЕНИЕ / MATHEMATICAL MODELING / MODELING PROBLEM / KNOWLEDGE BASE / FUNCTIONAL GRAMMARS / LAMBDA CALCULUS

Аннотация научной статьи по кибернетике, автор научной работы — Кравченко Вячеслав Александрович, Ширапов Дашадондок Шагдарович, Чимитов Доржи Намсараевич

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

Похожие темы научных работ по кибернетике , автор научной работы — Кравченко Вячеслав Александрович, Ширапов Дашадондок Шагдарович, Чимитов Доржи Намсараевич,

Formal Description of Functional Logical-Mathematical Modeling of Dynamic Systems

The article presents a formal description of the principles of building logical-mathematical models for dynamic systems using the apparatus of functional grammars. Lambda calculus, which is the theoretical basis of functional grammars and functional programming languages, has been used as a logical system.

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

Текст научной работы на тему «Формальное описание функционального логико-математического моделирования динамических систем»

УДК 510.66

doi: 10.18101/2304-5728-2017-3-32-39

ФОРМАЛЬНОЕ ОПИСАНИЕ ФУНКЦИОНАЛЬНОГО ЛОГИКО-МАТЕМАТИЧЕСКОГО МОДЕЛИРОВАНИЯ ДИНАМИЧЕСКИХ СИСТЕМ

© Кравченко Вячеслав Александрович

старший преподаватель,

Восточно-Сибирский государственный университет технологий и управления Россия, 670013, г. Улан-Удэ, ул. Ключевская, 40В E-mail: krawyach@mail.ru

О Ширапов Дашадондок Шагдарович

доктор физико-математических наук, профессор, заведующий кафедрой,

Восточно-Сибирский государственный университет технологий и управления Россия, 670013, г. Улан-Удэ, ул. Ключевская, 40В E-mail: shirapov.dashadondok@yandex.ru

© Чимитов Доржи Намсараевич

кандидат физико-математических наук, доцент,

Восточно-Сибирский государственный университет технологий и управления Россия, 670013, г. Улан-Удэ, ул. Ключевская, 40В E-mail: dorji2009@mail.ru

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

Ключевые слова: математическое моделирование; задача моделирования; база знаний; функциональные грамматики; лямбда-исчисление.

Введение

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

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

1) описание теории предметной области динамической системы в виде неполной функциональной грамматики;

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

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

1. Формальное описание задачи логико-математического моделирования динамических систем

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

ж = {к, д О),

состоящей из трех множеств:

1) множество понятий и отношений предметной области, составляющих базу знаний:

К = {к1}, 1=1,2, ... , р-

2) множество входных переменных задачи, характеризующих исходные знания о модели:

Л = / = 1, 2, ... , г;

3) множество выходных переменных задачи, характеризующих цель моделирования:

6 = {?,}, 1 = 1,2,...,$. Если задача моделирования разрешима, то её можно представить в виде:

(К, ё2, ... , ёг н» ... , ).

Таким образом, логико-математическое моделирование заключается в отображении вектора входных переменных Х> в вектор выходных параметров () с помощью соотношений из базы знаний К:

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

<2=вв,

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

( Ва

д.

в

д

в,

(М)2

в

В,„ в( в

(«Хг-1) '(t-V)g

в2

Вп Д-

д д

'2(8-1)

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

д.

где Ва, Вч |,,. ... , В2%, . g = r■s. —операторы отдельных элементарных операций.

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

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

Определение 1. Неполная контекстно-свободная грамматика - это совокупность:

0\' = {У1, Р1}, состоящая из множества (алфавита) символов:

VI = {с,}, ¡=1,2,... ,п

и множества правил:

Р1 = {Р13), 7 = 1,2 ,...,т

вида:

У,'

где — произвольная последовательность символов алфавита, т. е. у- е VI +, VI — множество ненулевых последовательностей символов алфавита VI.

Аксиома 1. Для математического описания теории динамических систем существует неполная контекстно-свободная грамматика (} 1' = {VI, Р1} . При этом символы грамматики с обозначают понятия теории, а правила грамматики . — отношения между понятиями в виде формул.

Определение 2. Неполная функциональная контекстно-свободная грамматика — это совокупность:

С' = рТ0, V, Р),

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

состоящая из терминального базисного множества (алфавита) символов:

Уто={Ьг)> г=\ 2, ... , п0; множества объединенного множества (алфавита) символов:

К = {£!,.}, г = 1,2,..., и,; множества базисных унарных и бинарных функций:

Р0={/01}, г=\, 2, ... , к0

вида:

= КХ1, х2) = ххЬ}х2, /0{ = /{хх) = Ь}хх или /0{ = /{хх) = ххЬ}; множества общих функций:

^ = /=1,2 ,...,к

вида:

/:=/(х1, х2, ... , хр) = ет(х1, х2, ... , хр, Д, /02,.. , Д); множества правил:

Р = {Р}, 7 = 1,2 ,...,тп

вида:

а:> <Р> Ш,

где £ V — произвольная последовательность символов объединенного алфавита, являющаяся совокупностью фактических параметров ар-

гументов хх, х2, ... , х функции ^ .

Аксиома 2. Математическое описание теории динамических систем в виде неполной контекстно-свободной грамматики 0\' = {VI, Р1} может быть преобразовано в неполную функциональную контекстно-свободную грамматику (7 = {Уго. V, Рп, Р. Р} за счет выделения из множества VI подмножества Vтo, Уго 'о V = VI. элементам которого соответствуют базисные функции ДД. через которые выражаются функции^, описывающие предметную логику правил Ру

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

Определение 3. (Полная) функциональная контекстно-свободная грамматика - это совокупность:

0 = № V V Р Р Р

V ТО' Г' N ? О' ' '

состоящая из множества (алфавита) базисных терминальных символов:

^та — {^гоЛ' I ... , П0,

множества (алфавита) терминальных символов:

VT={VTi}, 1=1,2,...,^; множества (алфавита) нетерминальных символов:

начального нетерминального символа (аксиомы):

множества базисных унарных и бинарных функций:

^={/0,.}, г=\,2,...,к0

вида:

= КХ1, х2) = ххЬ}х2, fOi = /{хх) = Ь}хх или fOi = /{хх) = ххЬ}; множества общих функций:

^ = 1 = 1, 2,..., к

вида:

/;=/(х1, х2, ... , хр) = сг(х1, х2, ... , хр, Д, /02,.. , Д); множества правил:

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

Р = {Р.}, 7 = 1,2

вида:

я, ш,

где ф- е К — произвольная последовательность символов объединенного алфавита, являющаяся совокупностью фактических параметров х15 х2, ... , хр функции _/;.

Аксиома 3. Задача математического моделирования динамической системы Ж = {К, 2), О) может быть представлена в виде полной функциональной контекстно-свободной грамматики (} = {Утп, Ут. Ух. Р0, Р. Р, Л'} за счет выделения из обобщенного ал-

фавита V неполной функциональной контекстно-свободной грамматики (У = {Утп. V, Ра. Р, Р) алфавита терминальных символов Ут. обозначающих понятия входных переменных Д и выбора из оставшегося множества нетерминальных символов У\ (Ут и Уы = У) аксиомы обозначающей понятие выходной переменной

Теорема. Если задача математического моделирования динамической системы Ж = {К, 2), О) представлена в виде полной функциональной контекстно-свободной грамматики (г = {Уто, Ут, Ух. Р, Р, Л'} и для указанной задачи существует решение, то логико-математическая модель может быть построена в виде суперпозиции функций сг = сг(х;, Х2, ... , Хр, ^//(2)5 ••• 5 .//(д)Х где

х1, ••• > Хр е 5 1(Гу 1{2)' ■■■ '/(д) е ^

При этом функции ... выступают в качестве элементар-

ных операторов последовательно-параллельной декомпозиции Ву, а суперпозиция функций о- имеет смысл оператора вывода решения В.

Доказательство. Задача математического моделирования Ж = {К, 2), О) имеет решение лишь в том случае, если цель моделирования в виде выходных переменных может быть выражена через входные переменные Х> в виде оператора В. Т. е., согласно аксиоме 3, задача математического моделирования имеет решение, если с помощью применения правил может быть построен полный вывод:

^ -> <Рп -> Ч>У2 -> - -> <^(И-1) Ч>Т,

где фуХ, (ру2, ... , Щ-п, , (руп е (Уг и Ух) - последовательности, содержащие как терминальные, так и нетерминальные символы; <рт е Уг — последовательность терминальных символов.

Каждому применению правила

« > % !./'!• 7 = 1, 2, ... , п соответствует функция:

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

/АХ1? Х2> ••• ' Хр^->

где / — номер произвольной функции грамматики, 1 < ¡ <к\

Pi — количество аргументов функции^.

Первому непосредственному выводу £ —» соответствует функция:

/цГ)(Х1' Х2' ••• > ХрЦ1))•

Второму непосредственному выводу <р1—> <р1 -2 соответствует функция:

1ц2)(Х ¡п(1)+1' ХрЦ1)+2' ■■■ ' ХР1(1)+Р1(2)) ■

Тогда вывод —» щ.2 описывается суперпозицией:

fi(2)iXpi(l)+1' Xpi(l)+2? ••• 'Х pi(l)+ pi(2)-l ' fi(l)(Xl> X2> ••• > Xpi(l)))

~ fi(2)(Xl> X2' ••• ' X pi(l)+ pi(2)-l ' fi(l))-

В общем случае выводу S —> щ соответствует суперпозиция функций:

fiU)(X» Х2' ••• ' Xpi(l)+pi(2)+...+pi(j)-j+l' fi(l)> fi(2)> ••• ' fi(j-l)) ■

Тогда полный вывод описывается суперпозицией функций:

fi(n+l)(Xl> Х2> ••• > Xpi(l)+pi(2)+...+pi(n+l)-n' f,(lp fi(2)> ••• ' fi(n))-

— СГ(Х;, X2, ... , Xpi(l)+pi(2)+...+pi(„+l).„-> fi(l)-' fi(2) ' ••• ' fi(n+\))~

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

= <j(xi, X2, ... , xp, fi{1), /¿(2)5 ••• 5 fi(q))-

где p = Pi(1)+ Pi(2)+ + Pi(n+i)'n — количество аргументов суперпозиции, q = n +1 — количество функций в суперпозиции.

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

S -> <Рп -> <PV2 -> - ^ (Pvin-V) Ч>Т,

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

<y(Xj, Х2, ... , хр, fi(ï), fi(2), ••• , fi(q))

Теорема доказана.

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

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

Для примера приведем лямбда-функции для построения полной функциональной грамматики G = {Vrn, VT. VN, Fg, F, P, 5"} на основе задачи моделирования динамических систем W = {К, D, Q} . Используем при этом принципы чистого лямбда-исчисления, которые приведены, например, в [3] и [4].

Тг = Лх.Лу.х — логическое значение true;

Fl = Ах.Ау.у — логическое значение false;

If = уIр.Лх.Лу.р х у — функция условного оператора;

Nu = Я/./ (Ях.Я у./'У) — функция проверки пустого списка;

N1 = ЛхТг — пустой список;

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

Cs = Ах.А V.A.V..S' х у — функция-конструктор списка;

Сг = Л t.t Тг — функция-селектор первого элемента списка;

Cd = Al J Fl — функция-селектор хвоста списка.

Функции построения базы знаний в виде неполной функциональной

грамматики:

О' = [Xx.Xy.Xz.Xp.Xq.Cs х(( \ у (С* г(Сх р (Г.у q №))))] Уто V !■'„ /•' Р;

К = [Хх.х]0'.

Функция построения списка задачи моделирования:

Ж = [Xx.Xy.Xz.Cs х(С? у (Су г М))]ДГ £> £>.

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

Уп = У[Хf-Xp.Xq.If (Ж р) N1 (I/ (Уп1 q (Сг р)) (/ (Сё р д))

(Сп (Сг р) (/(СУ/О <?)))];

Уп1 = У[ХfXp.Xq.If (Ыи г) Ш (I/ (= (Сг г) 0 Тг (/ (Сё г) 0)];

(¡1 = Хх.Сп (Сг (Сг х)) (Сп (Сг (Сс! (Сг х))) (Сп (Уп (Сг (Сс1 (Сг х))) (Сг (Сй х))) (Сп (Сг (Сй (Сй (Сй (Сг х))))) (Сп (Сг (Сй (Сй (Сй (Сй (Сг х)))))} (Сп (Сг (Сй (Сй (Сй (Сй (Сй (Сг х))))))} М))))));

02 = У\Л fXx.Xy.If (Ыи у) N1 (Сп (Сг х) (Сп (Сг (Сё х)) (Сп (Сг (Сй (Сй х))) (Сп (Сг (Сй (Сй (Сй х)))) (Сп (Сг (Сй (Сй (Сй (Сй х)))))(Сп (Сг (Сй (Сй (Сй (Сй (Сй х)))))) (Сп(Сгу) ^х(Сёу)))))))т 0 = [Хх.02 (01 х) (Сг (Сй(Сс1 х)))] Ж

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

Заключение

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

Литература

1. Кравченко В. А., Могнонов П. Б., Чимитов Д. Н. Представление знаний в функциональных грамматиках // Вестник Сибирского государственного аэрокосмического университета им. М. Ф. Решетнева. 2011. №5(38). С. 55-61.

2. Кравченко В. А. Моделирование поиска решения с помощью функциональных грамматик // Вестник Бурятского государственного универ-

ситета. 2012. №9. С. 33-41.

3. Барендрегт X. Ламбда-исчисление. Его синтаксис и семантика: пер. с англ. М.: Мир, 1985. 606 с.

4. Кубенский А. А. Функциональное программирование.М.: Юрайт, 2017. 348 с.

FORMAL DESCRIPTION OF FUNCTIONAL LOGICAL-MATHEMATICAL MODELING OF DYNAMIC SYSTEMS

Vyacheslav A. Kravchenko Senior Lecturer,

East Siberian State University of Technology and Management 40v Klyuchevskaya St., Russia, Ulan-Ude 670013, Russia E-mail: krawyach@mail.ru

Dashadondok Sh. Shirapov Dr. Sci. (Phys. and Math.), Prof.,

East Siberian State University of Technology and Management 40v Klyuchevskaya St., Russia, Ulan-Ude 670013, Russia E-mail: shirapov.dashadondok@yandex.ru

Dorzhi N. Chimitov

Cand. Sci. (Phys. and Math.), A/Prof.,

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

East Siberian State University of Technology and Management 40v Klyuchevskaya St., Russia, Ulan-Ude 670013, Russia E-mail: doiji2009@mail.ru

The article presents a formal description of the principles of building logical-mathematical models for dynamic systems using the apparatus of functional grammars. Lambda calculus, which is the theoretical basis of functional grammars and functional programming languages, has been used as a logical system.

Keywords: mathematical modeling; modeling problem; knowledge base; functional grammars; lambda calculus.