№ 5 (41) 2012
С. Н. Григорьев, докт. техн. наук, профессор, ректор МГТУ «Станкин», г. Москва А. В. Толок, докт. техн. наук, профессор, зав. кафедрой Инженерной графики МГТУ «Станкин», г. Москва,
Д. А. Силантьев, аспирант МГТУ «Станкин», г. Москва, Е. А. Лоторевич, аспирант МГТУ «Станкин», г. Москва, С. А. Пушкарёв, аспирант МГТУ «Станкин», г. Москва
Автоматизация графического способа решения некоторых математических задач
По мере развития производительных мощностей вычислительной техники появляются возможности решения известных задач новыми методами. Их примером может служить графический способ решения математических задач.
Введение
Развитие графических способов решения задач в различных областях науки всегда представляло интерес не только с точки зрения повышенной наглядности [1, 2, 3]. К достоинствам графических методов относится, в первую очередь, возможность получения результата без применения дополнительных формульных расчетов. Графический способ не позволяет получать «суперточные» значения, но упрощает алгоритм решения, обеспечивая наглядный контроль над правильностью хода выполнения задачи. Обратим внимание и на то, что при использовании графического способа не удается полностью избежать работы с формулами в силу формальной постановки задач. При этом требуется обеспечить корректное преобразование формульного описания постановки задачи в графическое. Этот процесс определим как процесс построения графического образа (ПГО).
Процесс ПГО самый ответственный и трудоемкий. Он должен не только графически правильно отображать математическую постановку задачи, но и максимально обеспечивать наглядность получения результата. Большим недостатком применения графических способов, основанных на руч-
ном процессе ПГО, является ограниченная размерность пространства решаемых задач: переносимая на плоскость трехмерная постановка задачи — это предел визуального восприятия человеком.
Цель работы — изложение основных наработанных принципов компьютерно-графического подхода для решения математических задач на примере решения систем линейных алгебраических уравнений (СЛАУ) и задач математического программирования (МП).
Идея переноса графического способа решения математических задач на компьютерную платформу обоснована серьезными доводами. Научив компьютер корректно отображать формульную информацию в графические образы и разработав методы их анализа, можно говорить о решении компьютерно-графическим способом математических задач в многомерном пространстве.
Графический способ решения СЛАУ
Решение математических задач одним из известных графических способов можно представить в виде четырех основных этапов:
1. Построение графических образов, моделирующих математическую постанов-
№ 5 (41) 2012
ку задачи (отображение формульного представления в графическое).
2. Анализ полученного графического представления математической задачи (введение в процесс зрительного восприятия и имеющихся навыков человека).
3. Синтез графического алгоритма определения результата (проведение дополнительных геометрических построений для нахождения требуемого решения).
4. Нахождение численных значений полученного результата.
На рисунке 1 дан пример четырех перечисленных этапов графического решения системы линейных уравнений вида:
'6x + 2 у + = 12;
<6x +12 у + 3 z = 24; (1)
3 x + 6 у + 12х = 24.
На первом этапе проводятся подготовительные расчеты, в результате которых находятся точки пересечения заданных плоскостей с осями координат. Далее строятся треугольные элементы, определяющие заданные плоскости в пространстве. На этом первый этап графической постановки задачи СЛАУ заканчивается.
Второй этап требует умозрительного изучения графической постановки задачи. Здесь можно определиться с тем, чем является конечный результат, и способом его графического определения. Например, результат — точка пересечения двух прямых, образуемых пересечением одной вы-
бранной плоскости с двумя другими плос- :Ц
костями. §
Третий этап устанавливает графическое
место точки решения посредством вспомо- ^
гательных графических построений. [£
Четвертый этап находит геометрическое <|
место точки решения посредством вспомо- £
гательных графических построений. Опре- ^
деляются ее координаты. и
На всех приведенных этапах рисунка <|
графические построения выделены жир- |
ной линией. §
^ со
Решением являются координаты точки ^
(А) и примерно равны (1,0; 1,2; 1,2). Реше- ^
ние системы (1) методом Гаусса приводит |
к результату (1,03; 1,2; 1,14). ^
со
Компьютерно-графический способ |
&
Процесс решения компьютерно-графи- |£ ческим способом также можно представить ^ в виде четырех основных этапов по анало- ^э гии с традиционными графическими методами:
1. Построение графических образов, моделирующих математическую постановку задачи (получение образов-моделей, сокращенно М-образов, характеризующих необходимые геометрические характеристики отображаемого формульного представления).
2. Организация методов анализа полученных М-образов как графического моделирования математической задачи (введение в процесс методов обработки графической информации).
Рис. 1. Этапы решения примера СЛАУ графическим способом
№ 5 (41) 2012
3. Синтез графического алгоритма определения результата с учетом выбранного метода обработки графической информации (применение дополнительных геометрических представлений для нахождения требуемого решения).
4. Нахождение численных значений полученного результата.
М-образное представление математической постановки
Особое внимание уделим первому этапу. Введение понятия М-образ (образ-модель) осуществлялось в работах [4, 5], где рассматривался метод исследования многомерных функций на основе синтеза графических образов локальных геометрических характеристик. Каждый такой образ отображает конкретную дифференциальную характеристику функции, тем самым являясь ее моделью (М-образ). Выделяются базовые М-образы локальных характе-» ристик, отображающие цветом значение ^ одного из компонентов нормали в каждой ^ точке на области определения функции. <5 Этих характеристик достаточно, чтобы пу-| тем несложной арифметики М-образов по-| лучить конечный ряд множества диффе-I ренциальных М-образов {С,} производных й функции в выбранном направлении от пер-^ вого до п-го порядка. Рисунок 2, представ-§ ленный в работе [4], демонстрирует при* мер синтеза растровых М-образов дву-| мерной функции до производных второго § порядка. При этом следует отметить, что ^ размерность М-образа всегда совпадает § с размерностью анализируемой функции. 5 Трехмерная функция, рассматриваемая да-| лее в примерах, требует синтеза воксель-<5 ных М-образов. Технология синтеза М-об-Л разов и работа с ними реализована в сис-^ теме РАНОК (Рекурсивный Анализ На Об-§ разных Компонентах) [5]. Ц Система РАНОК использует входной | проблемно-ориентированный язык FORTU, | на котором формульно описывается поставе новка задачи [6]. Далее примеры будут де-
монстрироваться с применением этой системы.
Оптимизационный принцип компьютерно-графического подхода
Для рассмотрения второго этапа следует конкретизировать рассматриваемую задачу. Для начала разработаем принцип компьютерного восприятия М-образов. В работе [7] излагается градиентный метод, базирующийся на применении М-образов как информационной основы. Этот метод в отличие от существующих градиентных методов не имеет расчетных действий на каждом шаге и использует только информацию локальных геометрических характеристик в точке М-образа для определения направления градиентного движения по его изображению. По сути, компьютер проводит экспертную проработку графической информации, двигаясь в оптимальном направлении подобно зрительной оценке рассматриваемой формы человеком. Рассмотрим для примера принцип решения задач математического программирования, отраженный в работах [4, 5].
Поскольку излагаемый принцип базируется на изучении геометрических форм аналитически представленного объекта, на третьем этапе следует определить с помощью приемов геометрической постановки задачи подход к дальнейшей математической формулировке. Формулировка оптимизационной задачи математического программирования на основе аппарата R-функций изложена в работе [5].
Логические операции на основе функций В. Л. Рвачева записываются как
Я0Л = х + у х2 + у2, Я0" = х + у + -у] х2 + у2,
где х, у — предикатные функции. В общем случае рассмотрим систему ограничений как множество предикатных функций w1,w2,...,wn для некоторого пространства Еп. Область допустимых решений w можно определить как пересечение предикатных
№ 5 (41) 2012
Э2_и_ дх2
д2 и дх ду
/ ! / I \ \ \
Аи / / Сди А* / Сди Вди / Сди
дх дх дх дх Эу Эу Эу эу
со !
I
со §
I
со <и
¡2 %
Я Л
со
I
эё со
Рис. 2. Структура разложения на М-образы функции вида и = х • sin(яy / а) + у2 • cos(яx / а), а = 1
47
№ 5 (41) 2012
<0
i to
I
I
SI
iT
Si £
I §
&
о u о
S3
Si <3
& I
s
В SI is
CO
функций w = n wl = w1 л w2 л... a wn. Целе-
i=1
вая функция Fw на области допустимых решений w с учетом обнуления положительных значений w0 = w -|w| запишется как одно из следующих выражений:
Fw = F + w0 ■ (1 + VF) ^ max Fw = F + |w0 ■ (1 +VF)| ^ min.
Возникает правомерный вопрос о дифференцировании возможных изломов функции Fw. Решить данную проблему можно, применив рекурсивный принцип получения дифференциальных образов-моделей в системе РАНОК. Этот принцип основан на дихотомическом разбиении области определения функции и всегда рассматривает «окрестность излома» в постоянном приближении. Погрешность решения при этом зависит от заданной глубины рекурсии.
Решение задачи математического программирования компьютерно-графическим способом
Четвертый этап заключается в непосредственном определении градиентным методом координат точки искомого решения и ее визуализация с числовым представлением координат.
Рассмотрим постановку задачи линейного программирования, представленной в работе [8], где целевая функция задается в виде
Z = 26x + 20у + 21z ^ max, при ограничениях
q1 = 2x + 7у - 76z + 222 > 0 q2 = -8x + 9у - 8z + 64 > 0 q3 = -8x +13у - 24z + 96 > 0 q4 = -x - 6у - z + 70 > 0 q5 = -2x - 7 у - 2z + 90 > 0 q6 = 33x + 3у + 22z -165 > 0
Результатом, полученным на основе применения принципов параллельных вычислений, изложенных в работе [8], является точка с координатами (17,8,0) и значением целевой функции 7 = 602.
Рассмотрим технологию решения такой задачи в системе РАНОК.
Описание линейной модели (2) производится в отдельных окнах системы, как показано на рис. 3.
Две косые линии применяются для включения комментариев, в которых указаны габариты задаваемого куба как области определения исследуемой функции. Дальнейшие шаги процесса вплоть до получения результатов в виде М-образов модели, которые служат основой для дальнейшего этапа решения, автоматизированы. Получение М-образов можно трактовать как обучение компьютера графической постановке задачи, которое сводится к следующему.
Получив необходимые сведения, компьютер ожидает дальнейшего запроса на проведение операций над исследуемой моделью. Градиентный метод в системе РАНОК, работая с воксельными графическими М-образами, позволяет задавать как одиночную траекторию градиента, так и множество траекторий. В данном случае градиентное движение к максимальному значению осуществляется из каждой точки созданной воксельной графической модели функции для определения всех экстремальных
(2)
и при условии x > 0,у > 0,z > 0.
Рис. 3. Пример описания задачи линейного программирования в системе РАНОК
48
№ 5 (41) 2012
а) б) Рис. 4. Результат решения примера в системе РАНОК при малом уточнении модели
точек. В результате находится массив точек остановки градиентного движения и выбирается точка с максимальным значением 7. На этом этапе выдается информация в табличном виде, результат представляется в первой строке, элементы которой отсортированы по возрастанию значения 7, как показано на рис. 4а.
На рисунке 4б результат решения задачи представлен наглядно и позволяет визуально оценить с разных точек наблюдения форму многогранника допустимых решений и положение результирующей точки, отмеченной кругом.
где ац = |д|| — нормированная величина коэффициентов системы линейных уравнений.
Для рассмотренного в начале работы графического примера постановку задачи можно представить в виде системы ограничений (1) и целевой функции (3). Технологию решения такой задачи в системе РАНОК иллюстрируют рис. 5 и 6: на рис. 5 дан пример описания рассматриваемого случая, а на рис. 6 выведен полученный результат, указанный стрелкой в таблице и отмеченный окружностью на изображении.
! I
CJ
t §
со <и ¡2
J
Sc
1
I
Решение задачи СЛАУ компьютерно-графическим способом
Обращение в первую очередь к принципу решения задач математического программирования было неслучайным, хотя начальная постановка касалась решения СЛАУ. Изменим постановку задачи математического программирования. Чтобы определить точку пересечения трех плоскостей, достаточно задать целевую функцию с возрастанием ее положительных значений в сторону искомой точки пересечения. Такой целевой функцией может являться функция плоскости общего вида:
n n
XX, £a-j ^ max, (3)
i =1 !=1
Заключение
В данной работе предлагается новый принцип разработки компьютерно-графического способа решения математических
1 IC я
О CS у DiB
Функция ограничения
ARGUMENT JC, У, Z; VAK1ABLE WI-.(6-X+a 130; VARIABLE VARIABLE W> 0-JWY+12'Z Sfy VARIABLE W4-X. VARIABLE W5-V, VARIABLE Wft-il; VARIABLE W'Wl&WlSiVri&W^&Wi&Wt. RETURN W, ARGUMENT XXZ; CONSTANT At-6i3QRrC«5; constant Bi-a/aQiir(<«5, CONSTANT CI-ЗВДКТДО, CONSTANT A2-&3QKTCl8i5r CONSTANT CONSTANT C2-3/3QRT(l8ty, CONSTANT A3-3rtiQRTClSP)r CONSTANT BXWSQRTOiSii, CO H ST AN T Ci-1 jASQ . VARIABLE WO(AJ tA2+A3)*X*<Bl-»B2*BJ» RETURN WC;
Рис. 5. Математическая постановка задачи
№ 5 (41) 2012
Рис. 6. Результат решения и его визуализация в системе РАНОК
задач. Он позволяет расширить класс математических задач, решаемых градиентным методом.
Главным достоинством разработанного принципа, применение которого обеспечивает получение оптимального результата, является универсальность подхода к решению различных математических задач.
Сущность реализации предложенного подхода состоит в обучении компьютера =5 образному представлению аналитических Ц выражений, результат которого обеспе-| чивает возможность поиска решений для «и различных математических постановок за-
I дач.
| Использование теории R-функций в по-
1 казанном компьютерно-графическом спосо-| бе представляет собой еще одно из направ-Е лений применения алгебры функций в зада-| чах геометрического моделирования. Такой § подход к взаимодействию графической ин-| формации с аналитическим описанием гео-¡1 метрической модели позволяет рассматривать шире процесс создания систем ана-
| литического проектирования в инженерных
2 технологиях.
§ Развитие такого подхода предусматрива-
| ет разработку алгоритмов компьютерного
Ц решения таких математических задач как:
¡¡^ математическое программирование, опти-
=| мизационное моделирование, задач эконо-
§ метрики, стереометрии [5] и других задач,
| алгоритм решения которых можно свести
Ь к оптимизации.
Список литературы
1. Калашников Н. П., Красин В. П. Графические методы решения задач по молекулярно-кинети-ческой теории и термодинамике идеальных газов. М.: Изд-во Московского государственного индустриального университета, 2008. — 215 с.
2. Калашников Н. П., Кошкин В. М. Графические методы решения задач по физике: Учебное пособие. М.: Изд-во Московского государственного индустриального университета, 2004. — 252 с.
3. Монахов В. М. Методы оптимизации. Применение математических методов в экономике / Пос. для учит. — М.: Просвещение, 1978. — 175 с.
4. Толок А. В. Графические образы-модели в информационных технологиях // Прикладная информатика. 2009. № 4. С. 31-40.
5. Толок А. В. Применение воксельных моделей в процессе автоматизации математического моделирования // Автоматика и телемеханика. 2009. № 6. С. 167-180.
6. Толок В. А., Киричевский В. В., Гоменюк С. И., Гребенюк С. Н, Бувайло Д. П. Метод конечных элементов: теория, алгоритмы, реализация. Киев: Наук. думка, 2003. — 316 с.
7. Толок А. В., Мыльцев А. М, Корогод В. Л. Алгоритм пространственного движения по градиенту на основе М-образов. Прикладная геометрия и инженерная графика. Киев: КНУСА, 2007. Вып. 77. С. 85-90.
8. Барский А. Б. Параллельные информационные технологии: учеб. пособие. М.: Интернет-Университет Информационных технологий; БИНОМ. Лаборатория знаний, 2007. — 503 с.