№ 5 (53) 2014
М. А. Марценюк, докт. физ.-мат. наук, профессор Пермского государственного национального исследовательского университета, [email protected]
В. Б. Поляков, доцент Пермского государственного национального исследовательского университета, [email protected]
И. П. Селетков, аспирант Пермского государственного национального исследовательского университета, [email protected]
Нечеткий алгоритм многофакторной оценки рейтинга студента
Рассматривается матричная реализация алгоритмов нечеткого вывода, позволяющая свести применение правил modus ponens к решению линейных алгебраических уравнений с обычными условиями существования решения. Приводится сравнение реализаций классического и предлагаемого подходов на микропроцессорной системе. В качестве содержательного приложения рассматривается нечеткий алгоритм формирования результирующей оценки успеваемости студента на основании большого количества разнообразных критериев и показывается эффективность метода для настройки автоматического учета мнения экспертов.
Ключевые слова: нечеткая логика, нечеткий вывод, предметная область, база знаний, оценка студента, рейтинг студента.
Введение
При определении итоговой оценки успеваемости студента или оценки на экзамене очень часто экзаменатору приходится учитывать большое количество факторов: знание предмета, знание литературы, умение обосновывать свои выводы. Кроме того, нужно принимать во внимание научную и внеучебную деятельность студента.
Официальные документы, регламентирующие процесс формирования оценки на экзамене, сформулированы в терминах «лингвистических» (нечетких) понятий. Это создает естественные предпосылки для использования аппарата нечеткой логики в целях формализации правил и построения системы поддержки принятия решений.
Нечеткая логика и ее методы нашли многочисленные применения в задачах моделирования и управления [1]. В большинстве случаев для реализации нечетких логи-
ческих операций над переменными используются предложенные Л. Заде нечеткая конъюнкция x^y = min (x, y) и дизъюнкция xvy = 1Г1ах (x, y) [2]. Такое определение удовлетворительно работает при вычислениях по заданным логическим формулам, что и используется в задачах моделирования и управления (см., например, обзор в книге А. Пегата [1]). Однако на практике большое значение имеют задачи нечеткого логического вывода. В этом случае неизвестная переменная фигурирует под знаком логической операции, и требуется ее найти. Например, для правила вывода modus ponens x ^ y = z предполагается, что нам известны нечеткие переменные x, z и требуется найти нечеткость переменной y. Решение этой задачи с помощью операций Л. Заде затруднительно.
В работе одного из авторов [3] для решения подобных задач предложен матричный аппарат. В нем используются модели логических операций, естественным об-
-n journal of applied informatics
No. 5 (53) 2014 ' -
разом обобщающие их «четкие» аналоги на область нечетких переменных и предикатов. Этот аппарат позволяет свести задачи нечеткого логического вывода к решению системы линейных алгебраических уравнений с известными условиями существования и единственности решений. Цель данной работы состоит в том, чтобы показать применимость этого подхода для решения задач нечеткого логического вывода в случае большого количества разнообразных исходных данных.
Матричное представление нечетких высказываний
В матричном представлении [3] для описания степени истинности высказывания А вводится двухмерный вектор х. Если определить базисные векторы е(0) и е(1), то вектор х может быть представлен в виде
(1)
где вектор у представляется как матричный столбец 1x2, составленный из его компо-
X = x0e(0) + x1e(1),
C (x) =
'1 V
V° Xi,
D (x) =
Xo0
VX1 1
I (x) =
x1 0 V Xo Ъ
(3)
С помощью этих матриц логические операции над нечеткими векторами могут быть представлены в виде
х а у = С (х) у, х v у = D (х) у,
х ^ у = I (х) • у, (4)
нент y =
чУ1У
а точка обозначает обычное
причем компоненты вектора х — числа х0, х1 — удовлетворяют условиям
0 < Хо, Х1 < 1, Хо + Х1 = 1. (2)
Сами базисные векторы е(0) и е(1) описывают высказывания со степенью уверенности 0 и 1 соответственно. Операции отрицания соответствует перестановка компонент вектора х: — х = х1е(0) + х0е(1).
Логические операции над векторами — конъюнкцию, дизъюнкцию и импликацию — можно представить в матричном виде. Составим из компонент вектора х конъюнктивную С (х), дизъюнктивную D (х) и имплика-тивную I (х) матрицы размером 2 х2 [3]:
матричное умножение. Результатом логических операций, сформулированных в таком виде, тоже будет нечеткий вектор. Детальное обоснование сделанного выбора матриц (3) представлено в работе [3].
Представление нечетких высказываний в векторном виде позволяет вычислять их неопределенность с помощью известной формулы теории информации
S(x) = -x0 log2 x0 - x1 log2 x1. (5)
Привлекательность матричного подхода обусловлена следующим:
1. Он естественным образом обобщает логические операции на область нечетких переменных (см. подробнее [3]) и адекватно моделирует нечеткие рассуждения.
2. Позволяет производить нечеткий логический вывод с использованием правил modus ponens, modus tollens и др. путем решения линейных алгебраических уравнений.
3. Позволяет количественно оценивать неопределенность нечетких высказываний S по формуле (5).
4. При выводах можно использовать нечеткое правило резолюции и вычислять его нечеткость (см. подробнее [3]).
Матричное представление нечеткого вывода
Нечеткий логический вывод, или приближенные рассуждения, — это процесс получения значений искомых нечетких переменных или предикатов по заданным значениям исходных переменных с использованием логических правил modus ponens вида «если ..., то ...», modus tollens и других. Предпосылки и выводы правил являются нечеткими понятиями. Совокупность всех правил представляет собой базу знаний, которая формируется человеком-экспертом
№ 5 (53) 2014
в данной предметной области. Общие этапы логического вывода, а также примеры реализаций в «классической» формулировке нечеткой логики по алгоритмам Мамдани, Ларсена и др. описаны во многих источниках (см., например, [1, 4, 5]). В этом подходе предлагается задавать правила в базе знаний с помощью отношений x ^ y = R, где матрица R должна быть эмпирически задана на множестве x х y (здесь знак «х» обозначает прямое произведение векторов x, y).
Наиболее точное обобщение правила modus ponens на нечеткую логику предложено в статье [3]. Оно имеет аналогичное четкому варианту поведение в особых точках и учитывает факт связи между предпосылкой, следствием и степенью выполнения правила.
Если известен нечеткий вектор x = (x0, x1)T, а также нечеткий вектор z, определяющий нечеткость правила x ^ y = z, то вывод о нечеткости вектора y можно сделать из соотношений (3), (4). Эта задача сводится к решению линейного алгебраического уравнения относительно неизвестного вектора y, которое в случае импликативной модели имеет вид I( x) • y = z:
Гх, 0 ^ Г У0 ^ rz ^ 0
V Х0 V V У1 7 V Z1)
или
Х1Уо = Z0 xo У о + У1 =
(6)
Как известно, линейная система имеет решение, если определитель матрицы коэффициентов не равен нулю. В данном случае мы должны потребовать, чтобы выполнялось условие
det(I( x)) = det
x 0
V xo
1
= x ф 0.
(7)
То есть компонента истинности х1 вектора х не должна быть равна нулю. Тогда компоненты неизвестного вектора у принимают значения
У0 = У1 = 1-£°.
x
x
(8)
Полученное решение имеет смысл, только если обе компоненты вектора у положи-
тельны. Поэтому кроме условия х1 ф 0, получаем дополнительно, что x1 > z0. Отметим, что при х1 = 1 и z1 = 1 из (8) имеем известный результат правила modus ponens в четкой логике: у0 = 0; у1 = 1. Таким образом, в отличие от других моделей импликации в этом подходе мы не только получаем нечеткий логический вывод, но и строго указываем область его выполнения. Аналогичным образом могут быть обобщены на область нечетких переменных и другие известные правила логического вывода [3].
Пример (задача о чаевых)
Рассмотрим задачу о вычислении размера p (в процентах от величины заказа, p е [0,30%]) чаевых в ресторане в зависимости от уровня обслуживания s и качества пищи f. Значения величин s и f клиент оценивает в баллах s, f е [1, 10]. Решение этой задачи легче всего найти с помощью алгоритма, построенного на основании нечетких правил оценки чаевых [6]. В результате дальнейшей дефазификации вычисляется результирующая функция p = p0(s,f).
Введем нечеткие «лингвистические» векторные переменные:
• «уровень обслуживания»
y(s) = {y(1) (s),y(2) (s),y (3)(s)},
• «качество пищи»
z(f) = {z(1) ((),z(2) ((),z(3) (()} и
• «уровень оплаты»
w(p) = {w(1)(p),w(2)(p),w(3)(p)}.
Здесь использованы нечеткие предикаты y(k\s),z(kXf),w(kXp),k = (1,2,3), которые задают по три значения соответствующих лингвистических переменных y, z, w — низкий (при k = 1), средний (при k = 2) и высокий (при k = 3) уровень обслуживания, качества пищи и оплаты соответственно. Истинностные координаты векторов y, z, w — y'k) (s) = ^k (s), Z((k )(f) = vk (f), k)(p) = ш k (p) определяют степени принадлежности элементов s, f, p универсумов нечетким множе-
43
No. 5 (53) 2014
journal of applied informatics
ствам «низкий» (к = 1), «средний» (к = 2) и «высокий» (к = 3). Роль универсумов играет интервал [1, 10] (для в и /) и [0, 30%] (для р). Функции (в), vk(/) и юк(р) для такого рода нечетких множеств выбираются на основе знаний эксперта. Обычно для этой цели подбираются параметры стандартного набора известных функций (гауссова функция, треугольная, трапецевидная и т. п.). Пример выбора этих функций показан на рис. 1.
Правила вывода формулируются в следующем виде.
1. Если сервис плохой или пища подгорелая, то размер чаевых низкий.
2. Если пища безвкусная, то размер чаевых средний.
3. Если сервис отличный или пища вкусная, то размер чаевых высокий.
На языке логических операций эти правила можно представить в виде логической формулы для расчета предпосылки правила (к = 1, 2, 3)
я(к\в0, д = у(к \в0) V г(к)(д, (9) и формулы для расчета следствия правила
полнения заказа и соответствующей оценки размера чаевых
Пусть клиент оценивает в баллах уровень обслуживания в = в0 и качество пищи f = f0. После вычислений по формулам (9) и (10) значений векторов д(к)(в0, /0) и ^в0, /0, р) находим окончательно процент чаевых с помощью процедуры возврата к четким переменным (процедура дефазификации) по формуле
Po =-
JP • t/Sofo,p)dp )_
3o ■
J t^Sofo,p)dp
f(во, /0, р) = ¿^(в,,/,) А ^(к)(р)}, (10)
причем все операции могут быть реализованы в матричном виде, как было указано. Введенные здесь нечеткие переменные q и t имеют смысл результирующей оценки вы-
Для проверки эффективности подхода в различных программно-аппаратных средах решение этой задачи было реализовано тремя способами: 1) в среде MathCAD, 2) на языке C++ в среде C++ Builder и 3) на языке С на микропроцессоре Silicon Laboratories Inc C8051F912.
Процессор C8051F912 имеет жестко ограниченные системные ресурсы, в частности память (доступный объем RAM составляет 768 байт и Flash — 16 Кбайт). С целью сравнения на нем был реализован алгоритм нечеткого вывода Мамдани с «классической» («по Заде»)и матричной реализациями логических операций. При реализации операций «по Заде» используются
3
2 3
Л '\
/ I 1
• I I \ i \ \ i 1 \i V
10 20
Размер чаевых p, %
4 6 8
Оценка s уровня сервиса, баллы б
10 20
Размер чаевых p, %
Рис. 1. Функции истинности нечетких термов: а — оценка пищи: 1 — пища подгорелая; 2 — пища безвкусная; 3 — пища вкусная; б — оценка сервиса: 1 — сервис плохой; 2 — сервис средний; 3 — сервис отличный; в — размер чаевых: 1 — чаевые низкие; 2 — чаевые средние; 3 — чаевые высокие
44
1,2
1,2
О 1
О 1
0
30
а
в
№ 5 (53) 2014
функции нахождения минимального и максимального значения, а при реализации матричного представления операций — функции нахождения истинностной компоненты матричных конъюнкции и дизъюнкции по приведенным выше формулам. Программный код, полученный после компиляции, для функций матричных конъюнкции и дизъюнкции занимает примерно на 10% меньше объема памяти, чем для функций нахождения максимального и минимального значений для алгоритма Заде. Учитывая, что рассматриваемые функции входят в основные программные циклы нечеткого логического вывода и выполняются многократно, выигрыш во времени исполнения программы будет тем большим, чем большее количество правил нечеткого вывода используется в алгоритме и чем больше количество точек, задающих функции принадлежности (в реализованных алгоритмах число итераций пропорционально каждому из этих параметров).
В целом реализация решения задачи показала, что матричный метод имеет более наглядный, компактный вид, удобен при разработке.
Многокритериальная оценка успеваемости студента
Рассмотрим более сложный пример, предназначенный для использования в учебной практике. Пусть требуется оценить в баллах [0, 100] текущую успеваемость (рейтинг) студента по результатам его учебной и внеучебной деятельности.
Уже при беглом анализе нормативных документов по порядку проведения контрольных мероприятий в различных вузах (см., например, [7]), можно заметить, что во всех формулировках используются лингвистические, нечеткие понятия, например:
• оценка «отлично»;
• «глубокое» знание;
• «полное знание»;
• «правильное, но не всегда точное»;
• «поверхностные» знания и т. п.
Это создает естественные предпосылки для использования в данной предметной области аппарата нечеткой логики.
Нужно оценить общую успеваемость (рейтинг) студента по предмету. В [7] для оценивания знаний предложен набор правил следующего вида.
«Оценка «отлично» ставится студенту, ответ которого содержит:
• глубокое знание программного материала, а также основного содержания и новаций лекционного курса по сравнению с учебной литературой;
• знание концептуально-понятийного аппарата всего курса;
• знание монографической литературы по курсу».
То есть экзаменатор должен оценить ответ студента в баллах по следующим критериям (параметрам алгоритма):
• знание программного материала;
• логика и структура ответа на экзамене;
• знание литературы по курсу.
Максимальное количество баллов выбирается экзаменатором по своему усмотрению и в свете алгоритма влияет только на построение функций истинности (рис. 2.).
Например, если число литературных источников по курсу 10, то удобнее оценивать знание студентом этой литературы в баллах е [0, 10]. Или, если число заданий в тесте на знание материала 15, то удобно оценивать результат теста в баллах е [0, 15]. Дальше в примере будем использовать оценки в баллах е [0, 10].
Обозначим параметры задачи следующим образом:
• т — знание программного материала е [0, 10];
• а — логика и структура ответа е [0, 10];
• I — знание литературы по курсу е [0, 10];
• результатом работы алгоритма будет р — оценка (успеваемость студента, результат экзамена) е [0, 100].
Все параметры имеют «четкие значения».
No. 5 (53) 2014
JOURNAL OF APPLiED iNFORMATiCS
Для того чтобы можно было осуществить нечеткий вывод, все параметры задачи нужно представить в виде нечетких переменных. Обозначим нечеткие переменные, необходимые для решения задачи, следующим образом:
• M•k](m) — знание программного материала;
• A(k)(a) — логика и структура ответа;
• ¿^(О — знание литературы по курсу;
• Р^ф) — оценка (результат экзамена).
Вспомогательные переменные:
• — степень уверенности в истинности правила;
• Q(k)(m, a, ^ — предпосылка ^го правила;
• R(k)(m, a,!, p) — степень реализации ^ го правила;
• V(m, a, l, p) — композиция результатов всех правил,
где k — номер правила из базы знаний (табл. 1).
Для нечеткого логического вывода необходима база знаний, которая в данном случае может быть получена формализацией нормативных правил и рекомендаций из положения [7]. По усмотрению экзаменатора или других ответственных лиц она может быть дополнена правилами для учета произвольного набора критериев.
Для обеспечения большей гибкости системы предлагается также задать вес каждого правила, который может интерпретироваться как «степень уверенности в истинности данного правила» ¿(К). Тогда в аналитической форме записи каждое правило будет выглядеть следующим образом:
Мл А а ¿Др. (12)
В процессе проведения контрольного мероприятия экзаменатор оценивает студента m = m0 = 10; a = a0 = 10; l = 0 = 10. Произведем нечеткий логический вывод оценки.
На этапе введения нечеткости:
— истинностным компонентам всех предикатов М )(m), А^^), ¿^(О присваиваются значения соответствующих функций истинности, при заданных значениях аргументов (входных параметров m0, a0, !0) (см. рис. 2);
— истинностные компоненты векторов ¿•^ задаются в соответствии с табл. 1;
— истинностные компоненты переменных Р^^) подставляются в процессе приведения к четкому виду (см. рис. 2).
Функции истинности нечетких переменных-термов являются экспертной моделью предметной области (см. подробнее [8]). Нередко они подбираются экспертами в ходе экспериментальной настройки системы с целью получения результатов, соответст-
Таблица 1
Формализованная база знаний для формирования оценки успеваемости студента
Номер правила, к ЕСЛИ (И) ТО
Знание программного материала, М м(т) Логика и структура ответа, А т(а) Знание литературы по курсу, L К(1) Оценка, P w(p) Истинность правила, Z
1 «Глубокое» «Логичный, четкий, аргументированный» «Знание монографий» «Отлично» 0,7
2 «Полное» «Правильный, но не всегда точный» «Знание рекомендованной литературы» «Хорошо» 0,6
3 «Поверхностное» «Стремление логически четко построить ответ» — «Удовлетворительно» 0,8
4 «Существенные пробелы» «Принципиальные ошибки» — «Плохо» 0,9
46
№ 5 (53) 2014
2 4 6 8 10
Оценка I знания литературы по курсу, баллы
Оценка р успеваемости студента, баллы по стобалльной шкале
Рис. 2. Функции истинности нечетких переменных, необходимых для решения задачи: а — знание программного материала: 1 — существенные пробелы в знании программного материала; 2 — знание материала поверхностное; 3 — знание материала полное; 4 — знание материала глубокое; б — логика и структура ответа: 1 — принципиальные ошибки в структуре ответа; 2 — стремление логически четко построить ответ; 3 — правильный, но не всегда точный ответ; 4 — логичный, четкий, аргументированный ответ; в — знание литературы по курсу: 1 — знание рекомендованной литературы; 2 — знание монографий по курсу; г — оценка: 1 — «плохо»; 2 — «удовлетворительно»; 3 -«хорошо»; 4 — «отлично»
,2
,2
0,5
0,5
0
0
0
50
00
0
в
г
вующих исходным данным. Например, в рассматриваемой задаче корректно подобранные функции истинности должны давать при наивысших значениях критериев оценивания (т0 = 10, а0 = 10, 10 = 10) максимальную оценку успеваемости — 100 баллов.
Мах(р) = 100. (13)
Пример подобранных функций истинности для переменных, необходимых для решения задачи, представлен на рис. 2.
В силу того что для получения четкого результата используется центроидный метод, для выполнения условия (13) необходимо, чтобы функция истинности переменной-терма «оценка отлично» имела центр масс в точке р = 100. Это также приводит к тому, что предел интегрирования в цен-троидном методе (17) необходимо расши-
рить так, чтобы он полностью охватывал функцию истинности переменной оценка «отлично».
Этапы собственно логического вывода и композиции для оценки успеваемости аналитически выражаются формулами (14) — (17).
Предпосылка к-го правила выражается следующей формулой:
0(к) (т, а, I) = С{С[М<к) (т)] • А(к) (а)} • ¡1к) (I). (14)
Степень реализации к-го правила выражается следующей формулой:
Я(к)(т, а, I, р) = = С{С[0(к) (т, а, I)] • Р(к) (р)} • г(к). (15)
Композиция результатов всех правил находится по формуле
No. 5 (53) 2014
JOURNAL OF APPLiED iNFQRMATiCS
V(m,a, l, p) = V R(k)(m,a,l, p). (16)
k=1
Все вычисления в (14)—(16) осуществляются в матричном виде.
Получение «четкого» значения «оценки» осуществляется с помощью центроидного метода:
120
| p • V1(m, a,!, p) dp p0 (m,a,l ) = -. (17)
| V1(m, a, l, p) dp
0
После всех вычислений получается результат
p0 (10,10,10) = 99,996.
Заключение
1 13
|3 га г
50
100
(18)
Нечеткий логический вывод можно применять для оценок успеваемости студентов, необходимую базу знаний легко получить из нормативных документов предметной области ввиду их лингвистических формулировок.
Использование матричного подхода позволяет свести решение задач нечеткой логики к решению системы линейных алгебраических уравнений, что дает возможность быстро и наглядно реализовывать сложные алгоритмы управления, требующие логического вывода.
Матричный аппарат легко реализуется на микропроцессорных устройствах в условиях ограниченных системных ресурсов, в частности оперативной памяти. В связи с этим есть возможность его применения в широком классе приборов на основе микропроцессоров.
Готовые программы и исходные коды можно найти на ресурсе [9].
В дальнейшем планируется встроить алгоритм в систему Moodle и реализовать в виде приложения для мобильных устройств в целях обеспечения преподавателям возможности пользоваться системой в не-
Оценка p успеваемости студента, баллы по стобалльной шкале
Рис. 3. График функции истинности нечеткой переменной «оценка успеваемости студента» V(m, a, l, p) в зависимости от «четкого» значения оценки p в баллах, где m = 10, a = 10, l = 10
оборудованных вычислительной техникой аудиториях.
Список литературы
1. ПегатА. Нечеткое моделирование и управление: пер. с англ. М.: Бином, 2009. — 798 с.
2. Zadeh L. A., Fuzzy Sets // Information and Control. 1965. Vol. 8. P. 338-353.
3. Марценюк М. А. Матричное представление нечеткой логики // Нечеткие системы и мягкие вычисления. Научный журнал Российской ассоциации нечетких систем и мягких вычислений. 2007. Т. 2. № 3. С. 7-35.
4. Konar A. Computational Intelligence: Principles, Techniques and Applications. Heidelberg: Springer, 2005. P. 71.
5. Круглов В. В., Дли М. И. Интеллектуальные информационные системы: компьютерная поддержка систем нечеткой логики и нечеткого вывода. М.: Физматлит, 2002. — 256 с.
6. Fuzzy Logic Toolbox User's Guide. URL: http://www. mathworks.com/.
7. Положение о проведении зачетов и экзаменов на юридическом факультете МГУ. URL: http:// www.law.msu.ru/teaching/documents/jurfak/ekz-zachet.
8. Марценюк М. А, Поляков В. Б., Селетков И. П. Матричная реализация алгоритмов нечеткого вывода // Научно-технические ведомости Санкт-Петербургского государственного политехнического университета. Информатика.
48
1,2
0,5
0
0
№ 5 (53) 2014
Телекоммуникации. Управление. 2o12. № 6 (162). С.133-141.
9. Проект «Матричная реализация нечеткой логики». URL: https: //sites.google.com/site/iseletkov/ projects/fuzzylogic.
References
1. Martsenyuk M. A. Matrix Representation of Fuzzy Logic // Fuzzy Systems and Soft Computing. Science Journal of Russian Association of Fuzzy Systems and Soft Computing, 2oo7, Vol. 2, Issue 3, pp. 7-35.
2. PiegatA. Fuzzy logic modeling and control. Heidelberg; N. Y.: Physica-Verl., 2oo1, p. 728.
3. Zadeh L. A. Fuzzy Sets // Information and Control. 1965. Vol. 8, pp. 338-353.
4. Konar A. Computational Intelligence: Principles, Techniques and Applications, Springer, 2oo5, p. 71.
5. Kruglov V. V., Dli M. I. Intelektualnie informacionnie sistemy: komputernaya podderjka system nechet-koi logiki I nechetkogo vivoda. Moscow: Publishing House of Physical & Mathematical Literature, 2002.
6. Fuzzy Logic Toolbox User's Guide. URL: http://www.mathworks.com/.
7. Pologenie o provedenii ekzaminov i zach-etov na uridicheskom fakultete MGU URL: http://www.law.msu.ru/teaching/documents/jurfak/ ekz-zachet.
8. Martsenyuk M. A, Polyakov V. B, Seletkov I. P. Matrix Implementation of Fuzzy Inference Algorithms. // St. Petersburg State Polytechnical University Journal. Computer Science, Telecommunication and Control Systems, Vol. 6, 2012, pp. 133-141.
9. Online Project «Matrix Realization of Fuzzy Logic» URL: https: //sites.google.com/site/iseletkov/proj-ects/fuzzylogic.
M. Martsenyuk, Dr of Physics & Mathematics, Professor, Perm State National Research University, [email protected] V. Polyakov, Associate Professor of Perm State National Research University, [email protected], I. Seletkov, Postgraduate of Perm State National Research University, [email protected]
Fuzzy inference alghoritm for multi-factor student assessment rating
Presently estimating students rating envolves a lot of different factors which have to be taken into account. The rating mark has to follow some regulating documents which enclose recommendations that are formulated as complex of inference rules that are formulated in wordy («linguistic») form like «if... then». It is evidently that in these conditions experts are needed for student estimation. As a result the mark is far from having a single meaning. To overcome this difficulty we propose to use the methods of fuzzy logic. It was found that for implementation of fuzzy inference algorithms the matrix representation of fuzzy variables [1] is most effective. In this representation the usage of logic rules like modus ponens is equivalent to solving of some system of linear equations with the usual existing conditions of their solution. The comparison of matrix and traditional approaches on different software and hardware platforms (including embedded and mobile systems) was also realized. Main advantages of matrix method for are low memory requirements, shorter and easier development. As a result the proposed algorithm enables automate the procedure of student rating estimation which sufficiently taking into account expert opinion. In other hand, it makes the student mark transparent in difficult cases.
Keywords Fuzzy logic, Fuzzy Inference algorithm, Subject area, Knowledge base, Student Assessment Rating.
4.....49