УДК 512.8
МОДЕЛИРОВАНИЕ 3Б ГРАФИКОВ ПОВЕРХНОСТЕЙ БИЛИНЕЙНЫХ ОКРЕСТНОСТНЫХ СИСТЕМ
© А.М. Шмырин, С.С. Роенко
Ключевые слова: геометрическое моделирование; график поверхности; билинейная окрестностная система. Рассматривается алгоритм построения графиков поверхностей билинейных окрестностных систем, раскрываются новые возможности в изучении поведения билинейных окрестностных систем с помощью графиков поверхностей, приводится пример построения 3D графика поверхности и анализа поведения системы на основе графика ее поверхности.
Введение. Геометрическое моделирование - это математическое моделирование объектов, заданных в пространстве своими формой, составом и размерами [1].
Построение графиков поверхностей билинейных окрестностных систем и изучение на их основе поведения таких систем является новым направлением в работе с этим видом сложных систем.
Для построения графиков поверхностей билинейных окрестностных систем применяется аналитическое описание модели - аналитические выражения - функции - для каждого из узлов системы.
Построение моделей производится в системе компьютерной алгебры класса систем автоматизированного проектирования Mathcad.
1. Алгоритм построения графиков поверхностей билинейных окрестностных систем. Билинейная ок-рестностная система:
^ [а, а]х[а] + ^ wv [а, р] +
сє°х[а] рЄ(%[а]
I- ^ ^Н„[а,а,РМР, 1]х[а]] +... +
(1)
ає°х[а] Рє,°>[а|
+ wmxv[а, а, РМР, ш]х[а]] = 0,
где у[а] е Ят - вход в узле а системы; х[а] е Я" -состояние в узле а системы; ^х [а, а], wv [а,Р] , w1xv [а, а, Р], wmxv[а, а,Р] - некоторые матрицы-параметры; 0„[а], Ох[а] - окрестности по входу и состоянию [2], является поверхностью второго порядка, и для ее описания используются криволинейноповерхностные аналитические модели в виде уравнений второй степени.
При построении графика поверхности для узла системы необходимо учитывать окрестности узла.
Матрицы инцидентностей, описывающие окрестности, имеют вид:
О [«] =
а [а] =
все элементы которых в случае четких окрестностей равны единице, в случае нечетких - дробным положительным числам.
Матрицы-параметры wx, и имеют следующий
вид:
А =
А =
wr
w„
w„
w„
wr
w„
w„
w„
А. =
w,
w„
wr
х1( п+ш)
wr
Для того чтобы произвести учет окрестностей, необходимо поэлементно умножить соответствующие коэффициенты матриц-параметров wx, и wxv на ко-
эффициенты из матриц окрестностей 0„[а], 0х[а] и таким образом получить результирующие уравнения для каждого узла. Пример получения результирующего вида по состоянию приведен в (2):
X
X
п1
5
5
V
V
її
1п
5
5
V
п1
п 1
11
11
(п+ш)1
(п+ш)(п+ш)
Mo =
w„
wx
xn1 xn1
w„
sx wx
nn nn
(2)
Используя полученные после учета окрестностей результирующие уравнения для каждого из узлов системы, составляем систему уравнений билинейной окре-стностной системы, которая далее будет использоваться для построения графиков поверхностей.
График поверхности системы и исходные данные (состояния и управления) зависят от рассматриваемой точки.
Наборы значений состояний и управлений задаются либо в виде определенных значений, либо с помощью итерационных формул, с конкретным шагом изменения на каждой итерации. Если имеются уже полученные экспериментально наборы таких значений, то целесообразно задавать эти наборы в виде имеющихся значений. Иначе задаются максимальные и минимальные значения состояния и управления и их итерационные формулы.
Итак, алгоритм построения графика поверхности билинейной окрестностной системы имеет следующий вид.
1. Получить билинейную окрестностную систему в виде уравнений для каждого узла - систему уравнений.
2. Произвести учет окрестностей с помощью умножения соответствующих коэффициентов матриц инцидентностей, описывающих окрестности, на соответствующие коэффициенты матриц-параметров.
3. Построение графика поверхности для узла: Составить для узла функцию вида z = f (х1г-,..., xmi,v1j,...,vnj) от количества аргументов n + m, равного количеству состояний n и управлений m.
Построение графика поверхности для системы в целом: Составить для каждого узла системы функцию вида z = f (x1i,...,xmi,v1 j,...,vnj) от количества аргументов n + m, равного количеству состояний n и управлений m. (При необходимости произвести свертку функций. Получить функцию для системы).
4. Задать количество наборов данных (итераций) N состояний и управлений.
5. Задать наборы значений состояний и управлений или задать максимальные и минимальные значения состояния и управления и их итерационные формулы.
6. Инициализировать полученные данные в специальном блоке 3D-Plot меню Graph в системе компьютерной алгебры класса систем автоматизированного проектирования Mathcad.
Блок-схема алгоритма построения графиков поверхностей билинейной окрестностной системы представлена на рис. 1.
2. Пример построения графика поверхности билинейной окрестностной системы. Рассмотрим пример создания графика поверхности скалярной билинейной окрестностной системы с четкими окрестностями.
Итак, требуется получить график поверхности билинейной окрестностной системы, состоящей из двух узлов, для первого узла.
Окрестности по состоянию и управлению:
Ox И ] = a2 }; Ox [a2 ] = {a1 > a2 };
Ov [a2 ] = {a2}.
Матрицы инцидентностей, описывающие окрестно-
Ox [a1> a2] =
Ov [a1> a2] =
1 1 1 1^
1 0' 0 1
Уравнение билинейной окрестностной системы для каждого из узлов имеет следующий вид.
Для узла а1:
Wx [1,1]х[1] + Wx [1,2]х[2] + Wv [1,1М1] + Wv [1,2М2] +
+ Wxv [1,1,1]х[1М1] + Wxv[1,1,2]x[1]v[2] +
+ Wxv [1,2,1]х[2М1] + Wxv [1,2,2]х[2М2] = 0.
Для узла а2:
Wx [ 2,1]х[1] + Wx [2,2]х[2] + Wv [2,1]v[1] + Wv [2,2]v[2] + + Wxv [2,1,1]х[1М1] + Wxv [2,1,2]х[1М2] +
+ Wxv [2,2,1]x[2]v[1] + Wxv [2,2,2]x[2]v[2] = 0.
В первом уравнении системы Wx[1,1] = 5; Wx[1,2] = -3; Wv[1,1] = 7,8;
Wv[1,2] = 0; Wxv [1,1,1] = 3,6; WxV[1,1,2] = 0;
Wxv [1,2,1] = 8; Wxv [1,2,2] = 0.
Во втором уравнении системы Wx [ 2,1] = -4; Wx [2,2] = 6; Wv [2,1] = 0;
Wv [2,2] = -2; Wxv [2,1,1] = 0; Wxv[2,1,2] = 3,4;
Wxv [2,2,1] = 0; Wxv[2,2,2] = -5.
Теперь произведем учет окрестностей и составим функцию вида 2 = /(х1,...,хт,v1,...,vn) от количества аргументов п + т, равного количеству состояний и управлений.
Получаем для узла а{.
/] (х, х2, ) = 1' 5х -1' 3х2 +1 • 7,8У] +
+1 • 1 • 3,6х1У1 +1 • 1 • 8х2у1 .
11 -41
Рис. 1. Алгоритм построения графиков поверхностей билинейных окрестностных систем
Получаем для узла а2:
/2 (х, х2, У], у2 ) = 1 • (-4)х -1 • 6х2 +1 • (-2)у2 +
+1 • 1 • 3,4x1 v2 +1 1 • (—5) x2v2.
Итак, рассмотрим случай, когда состояния и управления заданы с определенным шагом изменения.
Пусть количество итераций N = 20. Зададим набор значений состояний и управлений на каждой итерации для обоих узлов системы. Определим минимальные и максимальные значения состояний и управлений для узлов, а также итерационные формулы определения возможных состояний и управлений в окрестности узлов. Таким образом, задаются узловые точки, в которых будут определены значения функции г:
xmin 5; vmin 5; Xmax 5; vmax 5;
! i Л 1
x2 = 1 + xmin +~ і v2j = 1 + vmin +~
Наборы значений состояний и управлений на каждой итерации представлены на рис. 2.
Проинициализируем данные в блоке 3D-Plot меню Graph в системе компьютерной алгебры класса систем автоматизированного проектирования Mathcad.
График поверхности для первого узла рассматриваемой системы выглядит следующим образом (рис. 3).
Итак, построен график поверхности системы с точки зрения управления первым узлом системы.
Для построения графика поверхности всей системы в целом в рамках данного подхода необходимо (как возможный вариант) получить отдельную функцию всей системы из функций узлов системы.
3. Возможности в изучении поведения билинейных окрестностных систем на основе графиков их поверхностей. Визуализация билинейных окрестност-ных систем дает новые возможности анализа и прогнозирования процессов, описываемых с помощью таких систем.
Рассмотрим график поверхности из предыдущего примера более подробно.
Осуществим проецирование на оси i и j. С помощью проекций на оси можно определить, на каких итерациях график поверхности близок к нулю, т. е. значение невязок между левой и правой частями уравнения,
Х1
0
0 -5
1 -4,5
2 -4
3 -3,5
4 -3
5 -2,5
6 -2
7 -1,5
8 -1
9 -0,5
10 0
11 0,5
12 1
13 1,5
14 2
15 2,5
16 3
17 3,5
18 4
19 4,5
20 5
Х2
0
0 -4
1 -3,5
2 -3
3 -2,5
4 -2
5 -1,5
6 -1
7 -0,5
8 0
9 0,5
10 1
11 1,5
12 2
13 2,5
14 3
15 3,5
16 4
17 4,5
18 5
19 5,5
20 6
V!
0
0 -5
1 -4,5
2 -4
3 -3,5
4 -3
5 -2,5
6 -2
7 -1,5
8 -1
9 -0,5
10 0
11 0,5
12 1
13 1,5
14 2
15 2,5
16 3
17 3,5
18 4
19 4,5
20 5
0
0 -4
1 -3,5
2 -3
3 -2,5
4 -2
5 -1,5
6 -1
7 -0,5
8 0
9 0,5
10 1
11 1,5
12 2
13 2,5
14 3
15 3,5
16 4
17 4,5
18 5
19 5,5
20 6
Рис. 2. Наборы значений состояний и управлений на каждой итерации
Рис. 3. Г рафик поверхности для первого узла системы
описывающего функцию /ь будут минимальными для заданных состояний и управлений.
Как видно из рис. 4 и 5, график поверхности проходит близко к нулю при наборах значений состояний и управлений с шестого по одиннадцатый.
Это значит, что при подстановке этих наборов значений состояний и управлений в уравнение функции для первого узла значения функции
/1(х1, x2,v1, v2) = 5х1 - 3х2 + 7,8^ + 3,6х^ + 8х2^
будут близки к нулю.
Рис. 4. Проекция графика поверхности на ось і
Рис. 5. Проекция графика поверхности на ось j
Действительно, подставив значения состояний и управлений в функцию для данного узла, видим, что при наборах значений с шестого по одиннадцатый значения функции /1(х1, х2, v1, V2) близки к нулю, и наиболее близкое к нулю значение достигается на десятом наборе.
Значения функции /1(х1, х2, v1, V2) на наборах значений состояний и управлений с шестого по одиннадцатый представлены в табл. 1.
На этих наборах исходных значений состояний и управлений наиболее близкое к нулю значение функции /1( х1, х2, V!, V2) составляет -3 при х1 = 0, х2 = 1,
VI = 0, у2 = 1.
Итак, функция /1 принимает наиболее близкое к нулю значение на десятой итерации. График поверхности можно рассматривать и как изменение процесса при разных наборах исходных данных. При осуществлении смешанного управлении стоит задача получить такие состояния и управления, при которых значение невязок между левой и правой частями уравнения, описываю-
щего функцию /ь будут минимальными для заданных состояний и управлений. И свое минимальное значение функция / может принять при значениях состояний и управлений из разных наборов возможных состояний и управлений. Функционал геометрического моделирования позволяет скомпилировать значения функции / при разных исходных наборах. Поэтому рассмотрим оси I и ] в этом случае как номера наборов исходных состояний и управлений соответственно. Получим значения функции / для комбинаций всех имеющихся наборов. Фрагмент значений функции/ представлен на рис. 6.
Как видно на рис. 6, нулевое значение функция / принимает при значениях состояний и управлений при I = 13 и ] = 10, что соответствует 13-му набору состояний и 10-му набору управлений.
Итак, функция /1(х1,х2,у1,у2) = 5х1 -3х2 +
+7,8у1 + 3,6х1У1 + 8х2у1 принимает нулевое значение при значениях х1 = 1,5, х2 = 2,5, V! = 0, у2 = 1.
Таблица 1
Значения функции /
Номер набора исходных данных Х1 *2 у\ У2
6 -2 -1 -2 -1 7,8
7 -1,5 -0,5 -1,5 -0,5 -3,6
8 -1 0 -1 0 -9,2
9 -0,5 0,5 -0,5 0,5 -9
10 0 1 0 1 -3
11 0,5 1,5 0,5 1,5 8,8
Рис. 6. Фрагмент значений функции /1
Таким образом, исходя из полученной информации, можно делать выводы о дальнейшем управлении системой, т. е. какие входные воздействия из возможных следует задавать для достижения определенной цели.
Геометрическое моделирование билинейных окре-стностных систем позволяет решать несколько задач, а именно, осуществлять визуальный анализ процесса, описываемый с помощью билинейной окрестностной системы, осуществлять управление системой, используя наиболее подходящие значения состояний и управлений, которые могут быть установлены или поданы на вход системы.
Заключение. Рассмотрен алгоритм построения графиков поверхностей билинейных окрестностных систем. Использование 3Б моделирования графиков поверхностей билинейных окрестностных систем показывает хорошие результаты в прогнозировании процессов, описываемых с помощью окрестностных систем, и открывает дополнительные возможности в управлении такими системами.
ЛИТЕРАТУРА
1. Косников Ю.Н. Поверхностные модели в системах трехмерной компьютерной графики. Пенза, 2007. С. 4.
2. Блюмин С.Л., Шмырин А.М., Шмырина О.А. Билинейные окрест-ностные системы. Липецк, 2006. С. 64.
БЛАГОДАРНОСТИ: Работа выполнена при поддержке Российского фонда фундаментальных исследований (код проекта 11-08-97525 р-центр_а).
Поступила в редакцию 19 апреля 2013 г.
Shmyrin A.M., Roenko S.S. MODELING OF 3D GRAPHICS OF SURFACES OF BILINEAR BORDER SYSTEMS
An algorithm for construction of surfaces bilinear border systems is considered; new possibilities for studying the behavior of bilinear neighborhood systems with plots of surfaces is opened; an example of building 3D graphics surface, and behavior analysis system based on the schedule of its surface is given.
Key words: geometric modeling; surface plot; bilinear border systems.