Научная статья на тему 'КВАДРАТИЧНАЯ ЗАДАЧА МАТЕМАТИЧЕСКОЙ ДИАГНОСТИКИ'

КВАДРАТИЧНАЯ ЗАДАЧА МАТЕМАТИЧЕСКОЙ ДИАГНОСТИКИ Текст научной статьи по специальности «Математика»

CC BY
49
7
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
МАТЕМАТИЧЕСКАЯ ДИАГНОСТИКА / МАШИННОЕ ОБУЧЕНИЕ / МОДИФИЦИРОВАННЫЙ СИМПЛЕКС-МЕТОД / КВАДРАТИЧНОЕ ПРОГРАММИРОВАНИЕ

Аннотация научной статьи по математике, автор научной работы — Котелина Н. О., Певный А. Б.

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

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

QUADRATIC PROBLEM OF MATHEMATICAL DIAGNOSTICS

Let m points be given in n-dimensional space, and G is the convex hull of these points. In the simplest problem of mathematical diagnostics, it is checked whether a point p belongs to the set G. In other words, if the coordinates of the points are signs of some disease, it is necessary to determine whether a new patient has a disease by the similarity of its signs in him and in patients with a confirmed diagnosis. In this paper, we attach its epsilon neighborhood to G and check whether p belongs to an extended set. To do this, we solve a quadratic programming problem in which we need to find the point of the set G closest to the point p in the Euclidean norm. In the article, we write out the necessary minimum conditions, obtaining a problem that can be solved using a modified simplex method with an additional condition for the bases.

Текст научной работы на тему «КВАДРАТИЧНАЯ ЗАДАЧА МАТЕМАТИЧЕСКОЙ ДИАГНОСТИКИ»

Вестник Сыктывкарского университета.

Серия 1: Математика. Механика. Информатика. 2022.

Выпуск 1 (42)

Bulletin of Syktyvkar University.

Series 1: Mathematics. Mechanics. Informatics. 2022; 1 (42)

ПРИКЛАДНАЯ МАТЕМАТИКА И МЕХАНИКА

Научная статья УДК 519.8

https://doi.org/10.34130/1992-2752_2022_1_15

КВАДРАТИЧНАЯ ЗАДАЧА МАТЕМАТИЧЕСКОЙ

ДИАГНОСТИКИ

Надежда Олеговна Котелина1, Александр Борисович Певный2

1,2Сыктывкарский государственный университет им. Питирима Сорокина, 1nkotelina@gmail.com, 2pevnyi@syktsu.ru

Аннотация. Пусть в n-мерном пространстве даны m точек, а G - выпуклая оболочка этих точек. В простейшей задаче математической диагностики проверяется, принадлежит ли точка p множеству G. Иначе говоря, если координаты точек - признаки некоторой болезни, необходимо определить, есть ли у нового пациента болезнь по степени схожести ее признаков у него и у пациентов с подтвержденным диагнозом. В настоящей статье мы присоединяем к G его эпсилон-окрестность и проверяем, принадлежит ли p расширенному множеству. Для этого решаем задачу квадратичного программирования, в которой требуется найти точку множества G, ближайшую к точке p в евклидовой норме. Мы выписываем необходимые условия минимума, получая задачу, которую можно решать при помощи модифицированного симплекс-метода с дополнительным условием для базисов.

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

Для цитирования: Котелина Н. О., Певный А. Б. Квадратичная задача математической диагностики // Вестник Сыктывкарского университета. Сер. 1: Математика. Механика. Информатика. 2022. Вып. 1 (42). C. 15-22. https://doi.org/10.34130/1992-2752_2022_1_15

© Котелина Н. О., Певный А. Б., 2022.

Applied mathematics and mechanics

Original article

Quadratic problem of mathematical diagnostics Nadezhda O. Kotelina, Aleksandr B. Pevnyi

1,2Pitirim Sorokin Syktyvkar State University, 1nkotelina@gmail.com, 2pevnyi@syktsu.ru

Abstract. Let m points be given in n-dimensional space, and G is the convex hull of these points. In the simplest problem of mathematical diagnostics, it is checked whether a point p belongs to the set G. In other words, if the coordinates of the points are signs of some disease, it is necessary to determine whether a new patient has a disease by the similarity of its signs in him and in patients with a confirmed diagnosis. In this paper, we attach its epsilon neighborhood to G and check whether p belongs to an extended set. To do this, we solve a quadratic programming problem in which we need to find the point of the set G closest to the point p in the Euclidean norm. In the article, we write out the necessary minimum conditions, obtaining a problem that can be solved using a modified simplex method with an additional condition for the bases.

Keywords: mathematical diagnostics, machine learning, modified simplex-method, quadratic programming

For citation: Kotelina N. O., Pevnyi A. B. Quadratic problem of mathematical diagnostics. Bulletin of Syktyvkar University, Series 1: Mathematics. Mechanics. Informatics, 2022, No. 1 (42), pp. 15-22. https://doi.org/10.34130/1992-2752_2022_1_15

Введение

Пусть в пространстве задано конечное множество точек {pj }1J=1. Каждый вектор pj состоит из n компонент - это признаки (факторы) некоторой болезни у больных с подтвержденным диагнозом. Есть ещё точка p. Есть ли у этого нового пациента болезнь, определяется по степени похожести признаков точки p и признаков точек {pj}.

В простейшей задаче математической диагностики [1] вводится выпуклая оболочка G = co {p1,... ,pm} точек {pj} и проверяется включение p Е G.

Было бы интересно присоединить к О точки, у которых расстояние до О мало. Зададим е > 0. Найдём расстояние от р до О:

р = тт ||р - (1)

где ||р — г|| - евклидова норма р — г. Если р < е, то считаем, что диагноз (тест) положительный.

Данная статья посвящена численному решению задачи (1).

Материалы и методы

Введём векторы aj = pj — p и выпуклую оболочку этих векторов:

M = co (ai,..., am}. Требуется найти расстояние от многогранника M до начала координат:

р = min |Ы|. (2)

геи

Здесь и далее используется евклидова норма ||z|| = \J(z, z) и обычное скалярное произведение (z, y) векторов z, y G

Множество M состоит из векторов z = Y1 m ■ i Xj a j, где Xj > 0, x1 + ■ ■ ■ + xm = 1. Поэтому задача (2) эквивалентна задаче квадратичного программирования

f (x) = 1 (Dx, x) ^ min,

Xi +-----+ xm =1, (3)

xj > 0, j G 1 : m,

где D - матрица с элементами dj = (a^, aj), i, j G 1 : m.

Запишем необходимые условия минимума в задаче (3) - условия Куна-Таккера. Градиент f '(x) равен Dx, а градиент g(x) = x1 + ■ ■ ■ + xm есть g'(x) = I - вектор из m единиц. Пусть (Dx)i - i-я компонента вектора Dx. В точке минимума x* существует Л, такое, что

(Dx*)j + Л > 0, i G 1 : m, (4)

((Dx*)j + Л) ■ x* = 0, i G 1 : m. (5)

Смысл условия дополняющей нежёсткости (5) состоит в том, что если x* > 0, то (Dx*)i + Л = 0. Условия (4) - (5) являются и достаточными условиями минимума, так как матрица D неотрицательно определена.

Чтобы найти х*, введём дополнительные переменные Уг = (Дх), + Л. Тогда получим систему

(Дх)г + Л — Уг = 0, г € 1 : т,

Ж1 +-----+ !т = 1, (6)

угхг = 0, > 0, хг > 0, г € 1 : т.

Несмотря на нелинейное ограничение v^ = 0, здесь можно применить идеи линейного программирования. В первое уравнение добавим искусственную переменную u со знаком минус. Придём к задаче:

u ^ min,

Dx + Л ■ I - v - eiu = O,

+ ...+ = (7)

x1 + + xm — 1,

vixi = 0, vi > 0, xi > 0, i E 1 : m; u > 0.

Здесь ei = (1, 0,..., 0)T, I = (1,1,..., 1)T.

Задача (7) решается модифицированным симплекс-методом с дополнительным условием: если xi входит в базис, то vi нельзя вводить в базис, и наоборот. Использовать только базисы с таким свойством дополнительности предложил П. Вулф [3]. Алгоритм с этой старой идеей описан в статье [2]. Некоторая сложность возникает при определении начального базиса.

В задаче (6) переменная Л принимает значения любого знака. Поэтому представим Л в виде Л = Л1 — Л2, где Л1 > 0, Л2 > 0. Для наглядности выпишем систему уравнений при m = 4:

d11x1 + d12x2 + d13x3 + d14x4 + Л1 — Л2 — v1 — u= 0, d2iXi + ^22x2 + ^23x3 + ^24x4 + Л1 — Л2 — V2 =0, ¿31x1 + ^32x2 + ^33x3 + ^34x4 + Л1 — Л2 — V3 =0,

d41x1 + d42x2 + d43x3 + d44x4 + Л1 — Л2 — v4 =0, x1 + x2 + x3 + x4 = 1.

В первом столбце матрицы D найдём наименьший элемент

di01 = min dü.

iG1:m

Если i0 = 1, то (ai, ai) > (ai, ai), а тогда (z, ai) > (ai, ai) (z — ai, ai) > 0 для всех z G M. Отсюда

и

I ai + (z — ai)|2

+ 2(z — ai, ai) + ||z — ai|2 > ||ai|

Значит, а1 - ближайшая точка, z* = а1, р = Ца^ и задача (2) решена.

В дальнейшем считаем ¿0 > 1. Укажем начальный базисный план. Идею построения покажем для частного случая ¿0 = 3. Базисными переменными будут

u

dii — di0i, V2 = d2i — di0i, Л = — di0i, = d4i — di0i, xi = 1

Если > 0, то берём Л2 = ^01, иначе Л1 = —^01 = |^01|. При ^01 > 0 базисная матрица А и обратная базисная матрица В = А-1 будут иметь вид

A =

—10 —10 du 0 —1 —10 d2i

0

0 —10 di0i 0 —1 —1 d4i

000

0

1

=

—1 0 0 0

01 —1 1 0 —1 01

0 dii — di0i

0 d2i — di0i 0 di0i — 1 d4i — di0i

000

0

1

Легко проверить, что AB = E.

Если же di0i < 0, то в матрице A вместо столбца —I будет столбец +I, а в матрице B у элементов bi0i0 и bi0,m+i меняются знаки.

В компьютерной программе матрица A не нужна, а будет использоваться только матрица B. Отметим также, что элементы (m + 1)-го столбца B - это значения базисных переменных. Столбец X базисных значений получается из уравнения AX = em+i = (0, 0,... , 0,1)T. Отсюда X = Bem+i - последний столбец матрицы B.

Чтобы обеспечить выполнение условия xivi = 0 введём булевский массив xv[1..m], где xv[i] = true, если xi или vi входят в базис.

Если xv[i] = /a/se, то xi и vi не входят в базис и тогда вычисляем оценки

A(xi) = y[k] ■ 4i + y [m + 1]

fc=i

A(vi) = —y[i],

(9)

:iq)

2

2

2

z

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

0

где у - двойственный вектор. На всех итерациях строка с из коэффициентов целевой функции при базисных переменных имеет вид с = (1, 0,..., 0). Поэтому у = с В - это первая строка матрицы В. Массив у можно не вводить.

Если А1 и Л2 не входят в базис, то вычисляем оценку

т

Д(Л1;2) = ± ^ В[1,к]. к=1

На нулевой итерации в базис можно вводить только х^0 или . Первая строка матрицы В указана в формуле (8). По формуле (10) получаем Д(^г0) = —В[1, г0] = —1. А по формуле (9)

Д(хг0) = —^1г0 + ^г0г0 + (^11 — ^¿01) =

= ||аг0 ||2 — 2(аг0, а1) + ||а1|2 = 1 аг0 — а1|2.

Если йг0 = а1, то Хад вводится в базис. Если же а^0 = а1, то и процесс заканчивается (нет положительных оценок). При этом

и = ¿ц — ^г01 = (а1, а1) — (а1, йг0) = 0.

Условия (6) выполняются.

Остальные шаги модифицированного симплекс-метода подробно описаны в докладе [1].

Результаты

В 2017 году в Сыктывкарском государственном университете имени Питирима Сорокина была выполнена дипломная работа, где описанный метод реализован на С+—+. В работе был, в частности, такой пример: т = п = 100, а] = в], ] Е 1 : п. Ближайшей к началу координат точкой многогранника М будет г * = (., .,..., п). Программа выдала г* = (0.01, 0.01,..., 0.01) на 99-й итерации.

Обсуждение

Решение простейшей задачи математической диагностики при помощи модифицированного симплекс-метода обсуждалось в докладе В. Н. Малозёмова и Е. К. Чернэуцану на семинаре по оптимизации, машинному обучению и искусственному интеллекту [1]. Данная статья развивает идею этого доклада, при этом для решения полученной зада-

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

симплекс-метод, идея которого восходит к статье П. Вулфа [3].

Список источников

1. Малозёмов В. Н., Чернэуцану Е. К. Простейшая задача математической диагностики // Семинар «O & ML». Избранные доклады. 9 февраля 2022 г. URL: http://www.apmath.spbu/oml/reps22.shtml#0209 (дата обращения: 04.04.2022).

2. Певный А. Б. Нахождение точки многогранника, ближайшей к началу координат // Оптимизация. Новосибирск, 1972. Вып. 10 (4).

3. Wolfe P. The simplex method for quadratic programming // Econometrics. 1959. Vol. 27. Pp. 382-398.

References

1. Malozemov V. N., Cherneutsanu E. K. The simplest problem of mathematical diagnostics. Seminar «O & ML». Izbrannye doklady [Seminar «O & ML». Selected papers]. 2022-02-09. Available: http://www.apmath.spbu/oml/reps22.shtml#0209 (accessed: 04.04.2022).

2. Pevnyi A. B. Finding the point of polyhedron closest to the origin (in Russian). Optimizaciya [Optimization]. Issue 10 (4). Novosibirsk, 1972.

3. Wolfe P. The simplex method for quadratic programming. Econometrics. 1959. Vol. 27. Pp. 382-398.

Сведения об авторах / Information about authors Надежда Олеговна Котелина / Nadezhda O. Kotelina к.ф.-м.н., доцент кафедры прикладной математики и информационных технологий в образовании / Ph.D. in Physics and Mathematics, Associate Professor of Department of Applied Mathematics and Computer Science Сыктывкарский государственный университет им. Питирима Сорокина / Pitirim Sorokin Syktyvkar State University

167001, Россия, г. Сыктывкар, Октябрьский пр., 55 / 167001, Russia, Syktyvkar, Oktyabrsky Ave., 55

Александр Борисович Певный / Aleksandr B. Pevnyi д.ф.-м.н., профессор, кафедра прикладной математики и информационных технологий в образовании / Doctor of physical and mathematical sciences, professor, Professor of Department of Applied Mathematics and Computer Science

Сыктывкарский государственный университет им. Питирима Сорокина / Pitirim Sorokin Syktyvkar State University

167001, Россия, г. Сыктывкар, Октябрьский пр., 55 / 167001, Russia, Syktyvkar, Oktyabrsky Ave., 55

Статья поступила в редакцию / The article was submitted 01.03.2022 Одобрено после рецензирования / Approved after reviewing 11.03.2022 Принято к публикации / Accepted for publication 15.03.2022

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