мальных управлений - четыре. При использовании кусочно-постоянных управлений система совершает больший маневр (траектория имеет большую амплитуду отклонений от целевого состояния).
В заключение следует отметить, что рассматриваемый в работе метод приближенного решения двухточечной задачи управления (1)-(2) был реализован в параллельном ПК МоШпР1ап^235. Комплекс испытан на двух прикладных задачах (задача о качении шара по плоскости и задача управления машиной с двумя прицепами). В случаях, когда граничные условия не были слишком далеки, комплекс успешно решал поставленную задачу управления. При далеких граничных условиях алгоритм не сходился, что соответствует теоретическому обоснованию метода (нильпотентная аппроксимация является локальным приближением исходной системы). В будущем планируется расширить функционал ПК для решения глобаль-
ной задачи управления путем ее сведения к последовательности локальных задач. В настоящее время ПК MotionPlaning235 является удобным и надежным средством решения локальной задачи (1)-(2).
Литература
1. Аграчев А.А., Сачков Ю.Л. Геометрическая теория управления. М.: Физматлит, 2005. 391 с.
2. Bellaiche A. The tangent space in sub-Riemannian geometry // Sub-Riemannian Geometry, A. Bellaiche and J.J. Risler, Eds. Basel, Swizerland: Birkh auser, 1996, pp. 1-78.
3. Laferriere G., Sussmann H.J. A differential geometric approach to motion planning // Nonholonomic Motion Planning, Zexiang Li and J.F. Canny Eds. Basel, Swizerland: Kluwer, 1992.
4. Сачков Ю.Л. Полное описание стратов Максвелла в обобщенной задаче Дидоны // Мат. сб. 2006. Т. 197. № 6. С. 111-160.
5. Laumond J.P. Lecture Notes in Control and Information Science. Springer. 1998. № 229. 343 с.
6. Murray R.M., Sastry S.S. Steering controllable systems, Proc. 29th IEEE Conf. Dec. and Control. Honolulu, Hawaii, 1990, pp. 408-412.
УДК 004.942
МОДЕЛИРОВАНИЕ РАСТВОРЕНИЯ ТВЕРДЫХ ТЕЛ С ПОМОЩЬЮ КЛЕТОЧНЫ1Х АВТОМАТОВ
(Работа выполнена при поддержке Министерства образования и науки РФ, ГК № 16.552.11.7046)
Н.В. Меньшутина, д.т.н.; С.И. Иванов; Д.Д. Шипилова (Российский химико-технологический университет им. Д.И. Менделеева, г. Москва,
Статья посвящена моделированию растворения твердых тел с помощью вероятностных клеточных автоматов. Приведено описание математической модели растворения и рассмотрен алгоритм работы клеточного автомата, реализующего модель. Проведено сравнение экспериментальных (кинетика растворения таблетки аскорбиновой кислоты) и расчетных данных.
Ключевые слова: клеточные автоматы, растворение, моделирование, параллельные вычисления, фармацевтическая промышленность, многокомпонентные смеси, диффузия.
Высокие темпы развития пищевой, фармацевтической и косметической промышленности в мире обусловливают необходимость решения разнообразных задач моделирования процессов в этих предметных областях. Одним из важных является процесс растворения твердых тел в различных растворителях при разных условиях.
При растворении твердых тел стоит учитывать ряд факторов, которые могут повлиять на ход процесса растворения, например: твердое тело может состоять из нескольких компонентов, имеющих разную растворимость; оно может быть покрыто оболочкой, затрудняющей растворение, а также иметь несимметричную форму; в состав твердого тела могут входить вещества, способные увеличивать растворимость других входящих в него веществ.
На текущий момент уже существуют разнообразные математические модели растворения твер-
дых тел на основе дифференциальных уравнений ^еШи11, Hixon-Crowell, Korsemeyer-Peppas и т.д.).
Данная статья посвящена описанию модели растворения твердых тел на основе вероятностного клеточного автомата. При работе над моделью авторы попытались учесть все факторы, перечисленные выше.
Описание модели клеточного автомата
В основе модели лежит вероятностный клеточный автомат [1]. Клетки автомата образуют прямоугольное поле размером ЫхЫ клеток. Модель имеет следующие допущения:
- система представляется в виде поля, состоящего из квадратных клеток;
- каждая клетка имеет четыре соседние клетки;
- поле может быть замкнутым или открытым;
- клеточный автомат является синхронным, то есть считается, что все изменения за одну итерацию происходят в одно и то же время;
- клетка описывается тремя характеристиками - типом вещества, его количеством, находящимся в данной клетке, и агрегатным состоянием («жидкость» или «твердое вещество»);
- в каждой клетке может находиться только одно вещество;
- состояние клетки зависит только от соседних клеток;
- при снижении количества вещества в клетке до уровня, соответствующего концентрации насыщенного раствора этого вещества, состояние клетки переходит в «жидкость»;
- при увеличении количества вещества в клетке до уровня, превышающего концентрацию насыщенного раствора этого вещества, состояние клетки переходит в «твердое вещество»;
- диффузия может происходить только между клетками, имеющими состояние «жидкость».
Клеточный автомат работает итеративно. В начале итерации рассчитываются новые значения клеток, которые принимают значения «раствор вещества» и «твердое вещество». Начиная с клетки с индексом (0, 0), последовательно происходит проверка значения, которое содержится в клетке.
Если значение от 0 до Снасыщ., значит, клетка имеет состояние «раствор вещества». Для клеток такого типа действуют следующие правила.
Каждая соседняя клетка с состоянием «растворитель» уменьшает значение в клетке на Ср1 (зависящее от коэффициента диффузии, линейного размера клетки и времени одной итерации) за одну итерацию, при этом клетка с состоянием «растворитель» переходит в состояние «раствор вещества» со значением С^1.
Каждая соседняя клетка с состоянием «твердое вещество» увеличивает значение в клетке на Ст1 (зависящее от коэффициента растворения, линейного размера клетки и времени одной итерации) за одну итерацию, при этом значение в клетке с состоянием «твердое вещество» уменьшается на Ст1. При достижении значения, большего Снасыщ., состояние клетки принимается как «твердое вещество».
Если значение в клетке от Снасыщ. до Стах, значит, клетка имеет состояние «твердое вещество». Для клеток такого типа действует следующее правило.
Каждая соседняя клетка с состоянием «растворитель» уменьшает значение в клетке на Ср2 (зависящее от коэффициента растворения, линейного размера клетки и времени одной итерации) за одну итерацию, при этом клетка с состоянием «растворитель» переходит в состояние «раствор вещества» со значением Ср2 При достижении значения, меньшего или равного Снасыщ., состояние клетки
принимается как «раствор вещества».
Таким образом, суммарные значения по каждому из веществ в клетках с состоянием «твердое вещество» и «раствор вещества» в процессе расчета не изменяются. Коэффициенты Снасыщ., Ст1, СД Ср2 определяются исходя из физико-химических величин (коэффициенты диффузии и растворения) и параметров клеточного автомата (линейный размер клетки, время одной итерации). Растворение в данной клеточно-автоматной модели по физическому смыслу схоже с дифферинциальным уравнением растворения
твердого тела: ^ = -кр{Снасьщ. - С), где М -
изменение массы твердого вещества; k -коэффициент растворения; ^ - поверхность растворения; Снасыщ. - концентрация насыщенного раствора.
После окончания расчета значений для клеток с состоянием «твердое вещество» и «раствор вещества» начинается расчет диффузии. Происходит случайный выбор р процентов пар клеток «раствор вещества»-«растворитель», и в каждой паре значения клеток меняются местами. Таким образом, этап расчета диффузии позволяет предотвратить ситуацию, когда вокруг клеток «твердого вещества» образуется пограничная зона с клетками «раствора вещества».
После расчета диффузии начинается следующая итерация. Количество итераций определяет пользователь в начальных настройках. На рисунке 1, где изображена часть поля клеточного автомата, показано изменение состояния автомата через одну итерацию. Как видно из рисунка, клетки с координатами (2, 3) и (3, 3) имели состояние «твердое вещество» (Т) и перешли в состояние «раствор вещества» (Н) (изменение произошло при расчете растворения), а клетки (0, 1) и (0, 2) поменяли свои состояния (расчет диффузии).
Как было показано в допущениях к модели, для
Рис. 1. Изменение состояния клеток автомата
данного клеточного автомата предусмотрена работа в режимах с открытыми и замкнутыми границами. При работе в режиме открытых границ в конце каждой итерации границы клеточного автомата (те клетки, которые имеют координату X или координату Y, равную 0 или Ы) принимают значение «растворитель». Это позволяет моделировать систему растворения твердого тела в объеме жид-
Рис. 2. Блок-схема алгоритма работы клеточного автомата
кости, многократно превышающем объем тела. При работе автомата в режиме замкнутых границ соседней клеткой с клеткой границы считается клетка на противоположной границе поля автомата, то есть для клеток (А, 0) и (0, В) соседними являются (А, N-1) и (N-1, В) соответственно.
На рисунке 2 приведена блок-схема алгоритма работы программы, реализующей описанный выше клеточный автомат.
Результаты расчета
После разработки клеточного автомата были выполнены расчеты с различными коэффициента-
ми Сн.
С 1 С 1 С ■
-насыщ., Р для сравнения с экспе-
риментальными данными.
В качестве экспериментальных данных взяты значения концентраций в различное время при растворении таблетки аскорбиновой кислоты. В двух различных экспериментах были выбраны разные обороты лопастной мешалки. На рисунке 3 показаны результаты расчета программы в графическом виде. На фоне растворителя черным цветом отображены ячейки, содержащие нераство-
ренную аскорбиновую кислоту, серым - раствор аскорбиновой кислоты.
После расчетов было проведено сравнение расчетных и экспериментальных данных. На рисунке 4 приведены расчетные графики и экспериментальные точки. Как видно из результатов, клеточно-автоматная модель хорошо описывает растворение твердого тела в растворителе. Отклонение расчетных данных от экспериментальных составляет не более 5 %.
Программная реализация
Клеточный автомат реализован на языке программирования C# 4.0 на платформе Microsoft .NET Framework 4.0. В программе использованы алгоритмы распараллеливания расчетов Microsoft Parallel [2], что позволяет оптимально использовать всю суммарную вычислительную мощность центральных процессоров компьютера, на котором производится расчет. Кроме реализации клеточного автомата, была разработана программа, позволяющая пользователям задавать параметры с помощью графического интерфейса. На данный момент максимальный размер линейного поля клеточного автомата составляет 1 500 клеток при расчете на компьютере с объемом оперативной памяти 4 GB.
Дальнейшие работы. Как уже отмечалось, существуют такие проблемы, как многокомпо-нентность, различные покрытия твердого тела и др. Данная модель позволяет учитывать все вышеперечисленные факторы путем введения новых состояний клеток и, соответственно, новых правил для этих состояний. В ходе дальнейших исследований предполагается провести ряд экспериментов и представить результаты моделирования растворения для различных твердых тел. Кроме того, планируется реализация данного клеточного автомата на языке программирования C/C++ с использованием технологии nVidia CUDA, что позволит
Рис. 3. Графические результаты расчета программы
0 10 20 30 40 50
-Расчетные данные 50 грт
Расчетные данные 100 грт ▲ Экспериментальные данные 50 rpm ■ Экспериментальные данные 100 rpm
Рис. 4. Сравнение расчетных и экспериментальных данных
проводить параллельные вычисления с использованием ядер графического адаптера компьютера. Применение технологии nVidia CUDA значительно увеличит скорость расчета и даст возможность проводить расчеты полей линейным размером бо-
лее 10 000 клеток. Применение данной технологии распараллеливания позволит перейти от двухмерной модели к трехмерной, что дает возможность моделировать растворение тел с любой формой.
В заключение отметим, что в данной статье представлены клеточно-автоматная модель растворения твердых тел на примере растворения таблетки аскорбиновой кислоты и ее программная реализация. Отмечено, что процесс растворения твердого тела зависит от многих параметров, в частности, от состава твердого тела, наличия покрытия, среды растворения, температуры среды и других. Рассмотренная клеточно-автоматная модель позволяет учесть при расчете все данные параметры, но с увеличением их количества скорость расчета по представленной модели уменьшается.
Литература
1. Тоффоли Т., Марголус Н. Машины клеточных автоматов; [пер. с англ.]. М.: Мир, 1991. 280 с.
2. URL: http://msdn.microsoft.com/en-us/library/dd460693. aspx (дата обращения: 17.09.2011).
УДК 371.693.4
ОБОСНОВАНИЕ ПРИМЕНЕНИЯ ЭЛЕКТРОННЫХ ТРЕНАЖЕРОВ ДЛЯ ОБУЧЕНИЯ ОПЕРАТОРОВ
Ю.И. Арепин, д.т.н. (НИИ «Центрпрограммсистем», г. Тверь, [email protected])
Рассматривается подход к обоснованию применения различных средств обучения для операторов сложных технических систем.
Ключевые слова: сложная техническая система, оператор, автоматизированное рабочее место, обучающие системы.
В современных сложных технических системах (СТС) в настоящее время ряд функций по управлению технологическими процессами, контролю и слежению за ними осуществляют операторы, которых можно отнести к операторам сен-сомоторного вида деятельности, заключающейся в самом общем виде в просмотре (контроле, слежении за показаниями) средств отображения информации (сенсорная составляющая деятельности), принятии определенных решений (в соответствии с алгоритмом работы) и воздействии на органы управления на рабочем месте (моторная составляющая деятельности) для реализации функций управления (контроля или слежения).
Подготовка операторов такого типа обычно сопряжена с необходимостью первоначального профессионального отбора для выявления психофизиологических исходных данных каждого из них и последующего обучения будущей специальности с учетом квалификационных требований к ней. Профессиональному отбору посвящено много
публикаций и методических материалов, однако каждая специальность оператора предъявляет свои требования к кандидатам на обучение. Не останавливаясь на процессе профессионального отбора, рассмотрим этап обучения уже отобранных операторов.
Будущие операторы СТС последовательно проходят теоретическое обучение, обучение на тренажерах и на реальном рабочем месте.
Формализация научной задачи выглядит следующим образом:
Wo6y4. (V / A , Собуч., Тобуч.) Fen > max при Собуч<Свьщ, Тобуч<Твыд., где Жобуч. - эффективность обучения оператора; V ={nb n2, ..., nk} - варианты обучения оператора; A ={аь а2, ..., ае} -сложность алгоритмов работы оператора, зависящая от назначения СТС и распределения функций между оператором и средствами автоматизации СТС; Собуч. - необходимые затраты на обучение оператора для конкретной СТС; Свыд. - выделен-