2.2. МОДИФИКАЦИЯ ГЕОМЕТРИЧЕСКОГО АЛГОРИТМА ХАРАКТЕРИЗАЦИИ ПОРОГОВЫХ fr-ЗНАЧНЫХ ФУНКЦИЙ
Бурделёв Александр Владимирович, ст. преподаватель кафедры математического моделирования и анализа данных факультета прикладной математики и информатики. Белорусский государственный университет. E-mail: [email protected]
Аннотация. В статье изучены известные подходы к характеризации '-значных пороговых функций. Предложен новый алгоритм характеризации '-значных пороговых функций, являющийся модификацией геометрического алгоритма, и доказана его сходимость на конечном шаге. Приведены результаты экспериментального сравнения модификации геометрического алгоритма с исходным алгоритмом и с алгоритмом Обрадовича.
Ключевые слова: пороговая функция, '-значная логика, геометрический алгоритм характеризации пороговых функций, доказательство сходимости.
2.2. MODIFICATION OF A GEOMETRICAL ALGORITHM OF CHARACTERIZATION fr-VALUED THRESHOLD FUNCTIONS
Burdeliov Alexander V., Senior Lecturer at the Department of Mathematical Modeling and Data Analysis at the Faculty of Applied Mathematics and Computer Science, Belarusian State University. E-mail: aburd2011@ mail.ru
Abstract. The article provides an overview of the known approaches to the characterization (learning) A-valued threshold functions. Proposed a new algorithm characterization of A-valued threshold functions, which based on a known geometrical algorithm. For this new algorithm proved it's convergence. Also we give the results of experimental comparisons between new algorithm and a known geometrical algorithm of characterization and Obradovic learning algorithm.
Index terms: threshold function, A-valued logic, geometrical algorithm characterization of threshold functions, prove of convergence.
1. Введение
Определение 1. [2-4, 13] Функция к-значной логики f (х1, ... , хп), для которой существует линейная форма
Цхг,... , хп) = а1х1 + а2х2 +... + апхп, х е (0, 1, ... , к - 1)
с вещественными коэффициентами и набор вещественных порогов Ь0 < Ь1 < ... < Ьктакие, что для всех / е Ък выполняется условие
f (x1, ... , xn) = i О b < L(x1, ... , xn) < b. + 1
(1)
называется пороговой к-значной функцией. Не ограничивая общность определения, можем положить здесь и далее Ьо = — и Ьк =
Замечание 1. В силу неоднозначности задания пороговой функции будем полагать возможным использование порогов, удовлетворяющих нестрогому неравенству
Ь < Ь < ... < Ь .
0 1 к
В случае равенства порогов Ь = Ь + 1, для некоторого / Е 0, к — 1, очевидно функция f(x1, ... , хп) не принимает
значения /. Также далее будем полагать строгое двухстороннее неравенство в определении пороговой к-значной функции:
f (х1, ... , хп) = / О Ь. < Цх1,... , хп) < Ь . + 1.
Этого всегда можно добиться небольшим изменением соответствующего порога или весов.
В работах [2-4] предложен геометрический алгоритм характеризации пороговых к-значных функций на базе коэффициентов роста и возрастания, доказана его сходимость, проделаны эксперименты по определению сложностных параметров, а также проведено экспериментальное сравнение с известным алгоритмом Обрадовича [13]. В работе [3] показано, что по сравниваемым параметрам трудоемкости геометрический алгоритм значительно эффективнее алгоритма Обрадовича; более того, некоторая доля пороговых к-значных функций не требует применения коррекции после нахождения первичной аппроксимации линейной формы с помощью коэффициентов роста и возрастания. Приведенное сравнение трудоемкостей сделано без детального рассмотрения трудоемкости выполнения одной итерации
f (, ..., x,_i, k-1, x,+i,
I
- X 0, .........xn )1.
Определение 3. [3, 4] Для функции к-значной логики f(x1, ..., хп) коэффициентом возрастания по переменной х называется величина
\ = k-2 k_1
Е 12 Е [/(
-,+1.....xn ) ^"k"1'=0 £='+1
_/(xi, ..., х,._1, l, x,+
, X,_i, £, X,+1, . * *, X" I
^ X"
min {a. s.
..., s„ ) = а + 1l 1 1
геометрического алгоритма в сравнении с алгоритмом Об-радовича. В данной работе будут детально рассмотрены аспекты, связанные с трудоемкостью, а также предложена модификация геометрического алгоритма, сближающая трудоемкости одной итерации сравниваемых алгоритмов, и приведены соответствующие результаты вычислительных экспериментов.
2. Сравнение итеративного шага алгоритма Обрадовича с геометрическим алгоритмом
Основной причиной изучения данного вопроса является различие трудоемкости одной итерации геометрического алгоритма и алгоритма Обрадовича. Приведем их в формализованном виде.
Алгоритм «к-значный метод коррекции ошибки»
(Алгоритм Обрадовича [3])
1. Инициализация:
(01,... , оп) = (0, 0, ... , 0), (Ь1,... , Ьк- 1) = (1, 1, ..., 1).
2. Для каждого х е Ъп вычислить
0(о1, ... , оп, Ь0, Ь1, ... , Ьк- 1)(х) = р
и, в случае f(x) * р, перейти к блоку «Коррекция» с параметрами (х, р).
3. В случае если для всех х е Ъпк
0(о1, ... , оп, Ь1, ... , Ьк- 1)(х) = f(x), векторы (о1,..., оп) и (Ь1, ... , Ьк- 1) являются выходом алгоритма.
Блок «Коррекция»
Входными параметрами блока являются (х, р).
1. Еслиf(х) > р, тогда Ьр + 1 = Ьр + 1 - 1, 5 = 1.
2. ЕслиЛх) < р, тогда Ьр = Ьр + 1, 5 = -1.
3. Для всех i е 1, п присвоить о. = о. + 5 • х..
Для изложения геометрического алгоритма потребуются следующие определения.
Определение 2. [3, 4] Для функции к-значной логики f(x1, ... , хп) коэффициентом роста по переменной х называется величина
А- = Е
("1.....1, •+1.....;
-1 ((
Если это выполняется, то границы Ь0, Ь , ... , Ьк можно определить, например, следующим способом:
f(i,
= 0, k _ 1;
f(
max {s,
... , E„ ) = k _1 1 1 1
В случае, когда функция f(x1, ... , хп) не принимает некоторых значений из множества 0, к — 1, необходимо следующим образом убрать из рассмотрения соответствующие области значений: пусть функция f(x1, ... , хп) принимает значения 0 < а0 < а1 < ... < а( < к, 0 < t < к. Тогда для всех i = 0, t — 1 необходимо проверить выполнение строгого неравенства
max
f(S1, •••, Sn) = ai
0, 8,
o„s„ }<
f(,
min
■■, Sn)=aij
{0,8,
-0„S„
Пороги в этом случае можно определить, например, по правилу: для всех значений а0, ... , аt присвоить значения
f(i,
min
{ai s,
далее, если функция принимает значение k - 1, то положить
f(
max {0,8,
... , 8„ ) = k _ll 1 1
1,
в противном случае положить Ьк = для оставшихся значений у е Ък/{а0, ... , а^ (которые не являются значениями функцииf(x1, ... , хп)) начиная со старшего присвоить соответствующему порогу значение Ь = Ь
Обозначим далее для всех i = 0, k _ 1
, хв)};
Xn ) = maX(F)},
Определение 4. [3, 4] Будем говорить, что линейная форма 1(хг, ... , хп) = о1х1 + о2х2 + ... + охп дает чистое разделение областей значений пороговой к-значной функции f(x1, ... , хп), принимающей все значения из множества Zk, если для любого а = 0, к — 2 выполняется строгое неравенство
F ={((.....x„ ) Znk\f (
max (F ) = (x1, ma,X)e f {L(x
Xmax (F ) = {(.....X„ ) Z^L^,
min(F )=(xi, mann )e F {L(.....x")};
xmin (Fbj^ ., xn)K\L(Xu ., Xn) = min(F
В случае если F = 0, положим max (F) = +~, min (F) = xmax(F) = (-1, ... , -1) и xmin(F) = (-1, ... , -1). Геометрический алгоритм характеризации k-значных пороговых функций представлен далее.
Геометрический алгоритм
характеризации пороговых k-значных функций
Пусть пороговая функция f(x±, ... , xn) принимает только значения 0 < а0 < а1 < ... < at < k, 0 < t < k.
1. Инициализация
Проинициализировать вектор коэффициентов линейной формы коэффициентами роста либо коэффициентами возрастания:
(о1,..., an) = (Д1, Д2, . , Дп), либо (a1, . , an) = (\, Л2, . , Л„).
2. Вычисление проверочной таблицы
Для всех i = 0, t, вычислить min (Fa ), max (Fa ).
3. Проверка чистого разделения областей значений функции
Для каждого i = 0, t_1 проверить выполнение неравенства
max (F ) > min (F _).
х Uj1 а1 + 1
В случае выполнения неравенства для некоторого i е {0, . , t- 1} перейти к блоку «Коррекция» с параметрами
b
k
(а, а/ + 1). В противном случае перейти к блоку «Вычисление порогов».
Блок «Коррекция»
Входным параметром блока является пара (а/, а + 1).
1. Выбор точек
Произвольным образом выбрать точки х е х (Ра) и у е х (Я _).
г т|пх а/ + 1'
2. Коррекция линейной формы
Для всех i = 0, t присвоить а. = а. - х. + у..
3. Возврат в основной цикл Вернуться в пункт 2 основного алгоритма
Блок «Вычисление порогов»
Для всех значений а0, ... , а( присвоить значения
f(
{Si
Если функция принимает значение k - 1, то положить
bk = max, , |°1 si +---+°nsnI + 1,
f (i.....s„ )=k-1
в противном случае положить bk = для оставшихся значений j е Ъ /{а0, ... , at} (которые не являются значениями функции f(x1, ... , xn)) начиная со старшего присвоить соответствующему порогу значение b = b. + r
Выход алгоритма: векторы (a1, ... , an), (b0, ... , bk).
Рассмотрим операции, выполняемые за одну итерацию алгоритма Обрадовича и геометрического алгоритма. Блок «Коррекции» алгоритмов имеет практически одинаковую трудоемкость. Различие трудоемкостей алгоритмов возникает в основном цикле. Алгоритм Обрадовича просматривает столбец значений функции до первого несовпадения f(x) * p, что составляет от 1 до kn операции вычисления значения пороговой k-значной функции. Геометрический алгоритм полностью просматривает столбец значений функции, что составляет kn операций обращения к функции f(x) и вычисляет соответствующие параметры минимальных и максимальных значений линейной формы. Таким образом, в худшем случае порядок увеличения затрат по трудоемкости составит kn. Приведенные результаты вычислительных экспериментов показывают, что даже грубое домножение полученных параметров сложности геометрического алгоритма на затраты просмотра таблицы (на kn) сохраняет явный выигрыш в сравнении с алгоритмом Обрадовича. Тем не менее, можно предложить модификацию геометрического алгоритма характеризации пороговых k-значных функций на базе коэффициентов роста и возрастания, устраняющую необходимость просмотра всей таблицы значений функции на каждом шаге алгоритма.
3. Модификация геометрического алгоритма
Условием обращения алгоритма Обрадовича к блоку «Коррекция» является первое встреченное несоответствие f(x) * p в процессе просмотра таблицы значений функции f. Условием обращения геометрического алгоритма к блоку «Коррекция» является первое встреченное несоответствие max (F ) > min (F + J ( i = 0, ind ) после просмотра всей таблицы значений функции f. В связи с этим, естественной модификацией геометрического алгоритма видится выявление такого несоответствия в процессе обновления значений max (F ) и min (F ), не дожидаясь окончания просмотра всей таблицы значений функции f. Таким образом, модификация геометрического алгоритма в формализованном виде будет следующей.
Модифицированный геометрический алгоритм
Инициализация
Проинициализировать вектор коэффициентов линейной формы коэффициентами роста либо коэффициентами возрастания:
(о1,..., an) = (Д1, Д2,..., Дп), либо (a1, ... , an) = (\, Х2,..., Xn).
1. Инициализация таблицы
Для всех i = 0, k — 1 присвоить min (F) = +~, max (F) =
2. Вычисление корректирующего преобразования
Для каждого x = (x1, ... , xn) е Ъnk вычислить L(x1, ... , xn) и сравнить со значением min [Ff(x)] и max [FfM].
2.1. Если L(x1,..., xn) < min [Ff(x)], то
2.1.1. присвоить min [Ff(x)]: = L(x1,..., xn), xmin(F): = x;
2.1.2. присвоить j: = f(x) - 1 и пока max (F) = и j > 0 уменьшать значение: j—;
2.1.3. если j > 0, то сравнить min [Ff(x)] и max (F.): если min [Ff(x)] < max (F.), то перейти к блоку «Коррекция» с параметрами {xmax(F.), xmin[Ff(x)]}.
2.2. Если L(x1, ... , xn) > max [Ff(x)], то
2.2.1. присвоить max [Ff(x)]: = L(x1, ... , xn), xmax[F]: = x;
2.2.2. присвоить j: = f(x) + 1 и пока min (F) = и j > 0 увеличивать значение j+ +;
2.2.3. если j < k, то сравнить max [Ff(x)] и min (F.): если max [Ff(x)] > min (F.), то перейти к блоку «Коррекция» с параметрами {xmax[Ff(x)], xmin(F.)}.
3. Вычисление порогов и выход алгоритма
Если на 2 шаге для всех x е Ъnk алгоритм ни разу не перешел к блоку «Коррекция» и перешёл на шаг 3, то это означает, что текущая линейная форма дает чистое разделение областей значений функции.
Для всех значений а0, ... , at, из множества значений функции f, присвоить значения
f(i,
{a, Si
Если функция принимает значение k - 1, то положить
bk = maX, , {°1g1 +••• + anen } +1
f(i.....S„ )=k -1
в противном случае положить bk = для оставшихся значений j е Ъk/{a0, ... , at} (которые не являются значениями функции f (x^ ... , xn)) начиная со старшего присвоить соответствующему порогу значение b. = b. + r
Блок «Коррекция»
Входным параметром блока является пара векторов (u, v) е Ъk2n. _
1. Для всех j е 1, n присвоить aj = a. - u. + v.
2. Вернуться на шаг 1 основного цикла программы.
Выход алгоритма: векторы (a±, ... , an), (b0, ... , bk).
Покажем сходимость модификацированного геометрического алгоритма.
Теорема 1. Модифицированный геометрический алгоритм характеризации пороговых k-значных функций на базе коэффициентов роста и возрастания сходится.
Доказател ьство
Пусть пороговая функция k-значной логики f(x1, ... , xn), задается линейной формой L(x±,..., xn) = a±x± + a2x2 + ... + anxn. Обозначим вектор L = (a1, a2, ... , an). Вокруг вектора L всегда можно построить конус допустимых решений Q такой, что любой вектор, лежащий в данном конусе, будет давать чистое разделение областей значений функции f(x , ... , xn) [9]. Напомним, что для конуса выполняются два свойства:
1) а е О ^ ка е О для всех к > 0;
2) а е О, в е О ^ (а + в) е О.
Конусом допустимых решений О назовем такой конус, в котором для любого а е О линейная форма, построенная по коэффициентам вектора а, дает чистое разделение областей значений функцииf(x1, ... , хп).
Обозначим угол раствора конуса 0 (0 > 0).
Докажем, что за конечное число шагов алгоритма вектор коэффициентов линейной формы окажется внутри конуса допустимых решений.
Очевидно, что в силу монотонности пороговой функции [8] вектор коэффициентов роста и коэффициентов возрастания лежат в одном ортанте с вектором L. Таким образом, алгоритм начинает работу с вектора А0, лежащего в одном ортанте с вектором L.
Рассмотрим операцию коррекции в алгоритме. Обозначим текущий вектор линейной формы А.;. На вход блока «Коррекция» поступает вектор А.;, после коррекции он переходит в вектор А. +1.
Алгоритм осуществляет коррекцию с помощью двух точек и. е х (Я ) и V. е х (Я ,) и тогда и только тогда, когда
. тах* ау' . т|п* ау + 1' " г-1 / г-1
одновременно выполняются два неравенства:
1) А.V < А.и. так как задействован блок «Коррекция» алгоритма;
2) при этом для неизвестного истинного вектора L выполнено противоположное неравенство Lv¡ > Lu¡ в силу определения 1.1.
Эти неравенства равносильны системе
( L(vl -
Ц ( -
и, )> 0;
-и, )< 0.
(2)
А +1 = А + С.
Рассмотрим плоскость, на которой лежат векторы L и А. (рис. 1). Обозначим См проекцию вектора С на плоскость, образованную векторами L и А . Перенесем начало этой проекции в конец вектора А1.
Рис. 1. Проекция вектора коррекции
В силу первого неравенства системы (2), конец вектора См должен быть ниже прямой д, в силу второго неравенства системы (2), конец вектора См должен быть выше прямой р, то есть лежать в заштрихованной области на рис. 1. Таким образом, вектор См направлен к вектору L.
Рассмотрим конус К, образованный вращением вектора А; вокруг вектора L. Видно, что вектор С, приложенный
к окончанию вектора А., заходит внутрь конуса К.. Для каждого шага алгоритма возможны два случая: вектор С лежит внутри конуса К целиком, или вектор С выходит за пределы конуса К, то есть «прокалывает» конус, как на рис. 2.
Вектор коррекции (V - и) = С прибавляется к текущему значению А. и получается новое значение А. +1:
Рис. 2. «Прокол конуса»
Далее покажем, что «прокол конуса» может произойти конечное число раз. Так как по Замечанию 1 для любых и, V е Ъ пк выполняется неравенство
L(vj - и) > 0,
то существует б > 0 такое, что для любых и, V е Ъ "к L(v. - и) > г.
Это означает, что часть заштрихованной области на рис. 1, заведомо содержащая конец вектора СА, лежит на расстоянии г/111 выше по нормали к плоскости р чем окончание вектора А.. Рассмотрим рис. 3, являющийся модификацией рис. 1, учитывающей вышеизложенное. Если рассмотреть проекцию на плоскость основания конуса К , то расстояние от конца проекции на эту плоскость вектора С до касательной к окружности конуса К в точке окончания вектора А будет не менее чем С.
^УЧХ / / / / /ХА а Р
г/\Ц
1 /X /
Рис. 3. Проекция вектора коррекции
Нижнюю границу для сС определяет тот факт, что угол между векторами А.; и L составляет не менее чем 0 (иначе алгоритм останавливает работу) и менее чем (п/2 - 0), и таким образом
Ь >|-ц tg 0 > 0.
Длина вектора С. ограничена сверху величиной (к — 1)у[п .
Рассмотрим проекцию на плоскость основания конуса К.. На рис. 4 изображены две окружности: окружность основания конуса К. вокруг вектора L и окружность радиусом (к — 1)у[п вокруг окончания вектора А.. К окружности основания конуса К проведена касательная в точке
окончания вектора A/. На расстоянии d от касательной проведена линия.
Согласно вышеизложенному, окончание проекции вектора C.| на данную плоскость должно лежать на расстоянии не менее чем d от касательной, на расстоянии не более (к — 1)-у/л от окончания вектора A| и по одну сторону с вектором L относительно касательной. Таким образом, окончание проекции вектора C. лежит в заштрихованной на рис. 4 области.
Можно легко заметить, что заштрихованная область не целиком лежит внутри окружности основания конуса К . Когда окончание проекции вектора С будет попадать в заштрихованную область вне окружности конуса К будет происходить «прокол конуса».
Покажем, что с ростом числа итераций / «прокол конуса» прекратится. Так как вектор C¡ всегда содержит вертикальную составляющую не менее г/11|, то высота конуса К растет с каждой итерацией алгоритма. Угол между векторами L и A.| больше 0 (в противном случае алгоритм останавливается и решение найдено). Таким образом, радиус основания конуса К увеличивается неограниченно.
С увеличением радиуса основания конуса К вся заштрихованная область попадет внутрь окружности основания конуса К, как показано на рис. 5, и «прокол конуса» прекращается.
Рис. 5. Проекция на плоскость основания конуса
Таким образом, «прокол конуса» может произойти конечное число раз, после чего вектор коррекции С целиком
будет попадать в конус K.. После чего окончание вектора коррекции будет всегда попадать внутрь круга фиксированного радиуса. С ростом числа итераций высота конуса K. будет расти неограниченно минимум на г/Щ с каждой итерацией (см. рис. 3). Вместе с высотой конуса будет расти радиус основания конуса допустимых решений Q. С каждой итерацией его радиус будет увеличиваться минимум на величину rtg 0/|L|.
Итак, начиная с некоторого конечного числа шагов алгоритма все векторы A. будут лежать в вертикальном цилиндре, расположенном внутри конуса допустимых решений, имеющего своей осью вектор L.
Конец доказательства.
Теорема 2. Геометрический алгоритм и модифицированный геометрический алгоритм всегда находят целочисленную реализацию пороговой к-значной функции.
Доказател ьство
Оба алгоритма начинают работу с целочисленного вектора инициализации так как коэффициенты роста и возрастания принимают целочисленные значения. В блоке «Коррекция» обоих алгоритмов осуществляются целочисленные изменения вектора линейной формы. Таким образом, найденная линейная форма разделяющей плоскости имеет целые коэффициенты. Пороги вычисляются по значениям целочисленной линейной формы с целыми аргументами. Таким образом, вычисляемая алгоритмами реализация пороговой к-значной функции является целочисленной.
Конец доказательства.
4. Сравнение алгоритмов по количеству итераций
Приведем результаты экспериментального сравнения параметров сложности рассматриваемых алгоритмов. Введем следующие обозначения:
• MI^™ (KV) - математическое ожидание числа итераций геометрического алгоритма на базе коэффициентов возрастания;
• MaxGeOm (KV) - максимальное число итераций геометрического алгоритма на базе коэффициентов возрастания;
• MaxMk (KV) - максимальное число итераций модифицированного геометрического алгоритма на базе коэффициентов возрастания;
• M/M°kd (KV) - математическое ожидание числа итераций модифицированного геометрического алгоритма на базе коэффициентов возрастания.
В табл. 1 приведены экспериментальные значения величин MIGT (KV), Max^T (KV), Max?0 (KV), MlM°kd (KV).
Экспериментальные данные показывают, что при осуществлении модификации геометрического алгоритма незначительно выросло математическое ожидание числа итераций алгоритма и максимальное количество итераций. При этом по-прежнему очевиден значительный разрыв в оценке трудоемкости геометрического алгоритма и его модификации по сравнением с алгоритмом Обрадовича.
Отметим также, что у алгоритма Обрадовича при увеличении значности к пороговой функции трудоемкость возрастает быстрее, чем при увеличении размерности n пороговой функции. У геометрического алгоритма и его модификации наоборот: на рост трудоемкости большее влияние оказывает размерность n чем значность к пороговой функции.
Таблица 1
Экспериментальное значение трудоемкости геометрического алгоритма на базе коэффициентов возрастания и модифицированного геометрического алгоритма на базе коэффициентов возрастания (на основании 100 000 экспериментов)
5. Сравнение алгоритмов
по количеству обращений к функции
Основная цель осуществления модификации геометрического алгоритма - уменьшение числа обращений к искомой пороговой к-значной функции. Такое стремление может быть оправдано условиями, налагаемыми вычислительной
средой. Сравним геометрический алгоритм, его модификацию и алгоритм Обрадовича между собой по данному параметру. Введем следующие обозначения:
• МахЯ°Ьг - максимальное число обращений к искомой пороговой к-значной функции алгоритма Обрадовича;
• МахЯ„еекот(КУ) - максимальное число обращений к искомой пороговой к-значной функции геометрического алгоритма на базе коэффициентов возрастания;
• МахЯ^О^КУ) - максимальное число обращений к искомой пороговой к-значной функции модифицированного геометрического алгоритма на базе коэффициентов возрастания;
• М^°ькг - математическое ожидание числа обращений к искомой пороговой к-значной функции алгоритма Обра-довича;
• ) - математическое ожидание числа обращений к искомой пороговой к-значной функции геометрического алгоритма;
• ) - математическое ожидание числа обращений к искомой пороговой к-значной функции модифицированного геометрического алгоритма.
В табл. 2 приведены экспериментальные данные значения величин МахЯ„0Ь/ , Мах^™(КУ), MaxFnMod(KV), М^0ьк', М^„Секот(^) и ).
Замечание. Количество обращений к искомой пороговой к-значной функции для геометрического (не модифицированного) алгоритма может быть вычислено по формуле
) = М!^Г (^) кп.
Это следует из свойства геометрического алгоритма, согласно которому на каждом шаге алгоритма необходимо полностью вычислять таблицу минимумов и максимумов линейной формы в областях значений искомой пороговой к-значной функции, что осуществляется за один полный просмотр таблицы значений искомой функции (то есть за кп обращений к искомой пороговой к-значной функции).
Результаты вычислительных экспериментов показывают подавляющее преимущество как модифицированного так и не модифицированного геометрического алгоритма над алгоритмом Обрадовича по числу обращений к искомой пороговой к-значной функции (что происходит за счет значительного преимущества по числу итераций).
Математическое ожидание числа обращений к искомой пороговой к-значной функции при модификации геометрического алгоритма сокращается примерно на треть, что имеет большое практическое значение в случае, если в среде реализации алгоритма характеризации обращение к функции оказывается трудоемким. Сравнение этих алгоритмов по максимальному числу обращений к искомой пороговой к-значной функции, потребовавшихся для характеризации одной пороговой к-значной функции, демонстрирует такой же разрыв. Как и в случае с математическим ожиданием числа итераций, размерность п пороговой функции и значность к пороговой функции по-разному влияют на рост числа обращений. Для алгоритма Обрадовича с ростом значности к пороговой функции число обращений растет быстрее, чем с ростом размерности п пороговой функции. Для геометрического алгоритма и его модификации наоборот: на рост числа обращений большее влияние оказывает размерность п чем значности к пороговой функции.
к п Геометрический алгоритм на базе коэффициентов возрастания Модифицированный геометрический алгоритм на базе коэффициентов возрастания
МСГ (^) Мах°Т (М) М1МХ (М) Мах™" (XV)
2 2 0 0 0 0
2 3 0 0 0 0
2 4 0,04 1 0,04 1
2 5 0,22 2 0,22 2
2 6 0,48 8 0,50 8
2 7 0,69 18 0,73 18
2 8 1,29 33 1,40 28
2 9 2,48 42 2,86 81
2 10 4,85 79 3,96 303
2 11 9,27 199 12,2 7147
2 12 17,3 269 24,4 2141
3 2 0,00 0 0 0
3 3 0,23 5 0,23 7
3 4 0,59 14 0,60 14
3 5 1,94 43 2,11 62
3 6 6,24 256 7,40 223
3 7 18,2 569 24,5 780
4 2 0,14 3 0,14 3
4 3 0,58 13 0,59 24
4 4 3,19 69 3,53 83
4 5 13,6 637 17 3784
5 2 0,16 5 0,16 5
6 2 0,28 10 0,28 10
7 2 0,51 16 0,53 20
8 2 0,88 24 0,95 31
9 2 1,38 37 1,53 45
10 2 2,05 46 1,53 67
11 2 3,02 67 3,42 95
12 2 4,79 122 5,42 168
Таблица 2
Среднее и максимальное количество обращений к искомой пороговой Л-значной функции трех рассматриваемых алгоритмов (на основании 100 000 экспериментов)
k n Геометрический алгоритм на базе коэффициентов возрастания Модифицированный геометрический алгоритм на базе коэффициентов возрастания Алгоритм Обрадовича
MIF^r (KV) MaxF„Ge;m (KV) MIF™? (KV) MaxF„M°d (KV) mifOX Ma><b/
2 2 0 0 0 0 15 24
2 3 0 0 0 0 44 96
2 4 0,32 16 0,57 16 137 608
2 5 7,04 64 5,61 64 465 3712
2 6 30,7 512 21,4 458 1706 27 008
2 7 88,3 2304 59,9 1917 6766 119 424
2 8 330 8448 223 4833 28 553 764 928
2 9 1269 21 504 873 27 691 127 011 6 982 656
3 2 0 0 0,00 0 125 648
3 3 6,21 135 4,69 154 1103 29 619
3 4 48 1134 31 990 11 137 693 522
3 5 447 10 449 303 10 403 128 965 12 371 130
3 6 4549 186 624 2770 57 488 1 754 364 233 543 169
4 2 2,24 48 1,70 45 873 34 928
4 3 37 832 24 857 19 924 2 317 248
4 4 817 17 664 493 16 429 524 206 182 245 376
5 2 4 125 2,84 96 5364 308 625
6 2 10 360 7,0 280 26 416 2 787 120
7 2 25 784 16 690 106 760 9 989 238
8 2 56 1536 38 1200 352 764 56 235 840
9 2 112 2997 73 2396 1 050 334 1 77 129 423
10 2 205 4600 131 3126 2 847 667 480 455 000
11 2 365 8107 228 6322 7 107 562 1597 076 701
6. Выводы
В работе предложен модифированный геометрический алгоритм характеризации пороговых к-значных функций на базе коэффициентов роста и возрастания и доказана его сходимость. Появление рассматриваемой модификации позволяет при практическом применений алгоритма характеризации пороговых к-значных функций разумно маневрировать между общим количеством итераций (при модификации увеличивается) и трудоемкостью отдельной итерации (при модификации уменьшается) в зависимости от конкретных характеристик среды реализации алгоритма и условий доступа к значениям искомой пороговой к-значной функции. В случаях, когда трудоемкость обращения к значению искомой пороговой к-значной функции достаточно большая, для сокращения времени выполнения поиска целесообразным видится применение модифицированного геометрического алгоритма характеризации пороговых к-значных функций на базе коэффициентов роста и возрастания.
Литература
1. Беляков-Бодин В.И., Розенблит С.И. Исследование некоторых вопросов синтеза пороговых функций. М.: Институт теоретической и экспериментальной физики Гос. Комитета по использованию атомной энергии СССР, 1972.
2. Бурделёв А.В. О сходимости алгоритма характеризации '-знач-ных пороговых функций // Прикладная дискретная математика. Статья принята к печати.
3. Бурделёв А.В., Никонов В.Г. О новом алгоритме характеризации '-значных пороговых функций // Computational nanotechnology. Вып. № 1 // 2017, с. 7-14.
4. Бурделёв А.В., Никонов В.Г. О построении аналитического задания '-значной пороговой функции // Computational nanotechnology. Вып. № 2 / 2015.
5. Бутаков Е.А. Методы синтеза релейных устройств из пороговых элементов. М.: Энергия, 1970.
6. Дертоузос М. Пороговая логика. М.: Мир, 1967.
7. Золотых Н.Ю. Расшифровка пороговых и близких к ним функций. Диссерт. докт. физ.-мат. наук. ФГБУН Институт математики им. С.Л. Соболева СО РАН. М., 2013.
8. Никонов В.Г. Особенности пороговых представлений k-значных функций // Труды по дискретной математике. 2008. Т. 11. С. 60-85.
9. Минский М., Паперт С. Персептроны. М.: Мир, 1971.
10. Anthony M. Learning Multivalued Multithreshold Functions. CDAM Research Report LSE-CDAM-2003-03, January 2003.
11. Moraga C. Multiple-valued threshold logic. In: Optical Computing. Digital and Symbolic (R. Arrathoon, Ed.), 161-183. Marcel Dekker Inc., N.Y., 1989.
12. Ngom A., Synthesis of Multiple-Valued Logic Functions by Neural Networks, Ph.D. Thesis Dissertation, Computer Science Department, University of Ottawa, Ontario, October 1998.
13. Obradovic Z. Learning with Discrete Multi-Valued Neurons, Machine Learning // Proc. 7th Int'l. Conf., 1990 / ed. B.W. Porter and R.J. Mooney. Austin, TX, Morgan-Kaufmann. Pp. 392-399.