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

Программный комплекс для формирования базы экспериментальных данных по ре зультатам имитационного моделирования Текст научной статьи по специальности «Компьютерные и информационные науки»

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

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Макарова Елена Анатольевна

Разработан программный комплекс, обеспечивающий автоматическое выполнение серии имитационных экспериментов в соответствии с планом и формирование базы экспериментальных данных о динамике поведения макроэкономической системы. Предложенная процедура формирования базы экспериментальных данных реализована в средах

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

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Макарова Елена Анатольевна

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

MATLAB и MS SQL ServerSoftware-based complex automatically making simulation experiment series in concordance with the plan, forming base of experimental data on macroeconomic system behaviour dynamics is developed. Suggested procedure of experimental data base formation is realized in MATLAB и MS SQL Server software environment.

Текст научной работы на тему «Программный комплекс для формирования базы экспериментальных данных по ре зультатам имитационного моделирования»

I

Вычислительные машины и программное обеспечение^

СПИСОК ЛИТЕРАТУРЫ

1. Ботвинник М.М. Алгоритм игры в шахматы. М.: Наука. 1968.

2. Иванов С.В., Аньчков М.Г., Лысенко Е.С.

Программа для моделирования передвижения элементов массива в локальной сети и Internet. Свидетельство об официальной регистрации № 2007613965 14. 09. 2007. СПбГЭТУ.

3. Пузанков Д.В., Пантелеев М.Г., Денисов В.В., Колосов Г.Г. Организация и проектирование функционально-ориентированных процессоров аппаратной поддержки продукционных баз знаний // Изв. вузов. Приборостроение. Тем. вып.: Проектирование аппаратных и программных средств управляющих и

4. Ivanov S.V. New computer possibilities in laboratory diagnosis of human psychophysiological features // Pattern recognition and image analysis. 2005.

5. Feldmann R. Computer chess: Algorithms and heuristics for a deep look into the future // Proc. of the 24th Seminar on Current Trends in Theory and Practice

of Informatics (SOFSEM-97) LNCS Lecture Notes in Computer Science. 1997. Vol. 1338. P. 511-522.

6. Shannon C.E. Programming a Computer for Playing Chess Philosophical // Magazine. 1950. Vol. 41. P. 256-275.

7. Turing A.M. Digital Computers Applied to Games in B.V. Bowden: Faster than Thought // A Symposium on Digital Computing Machines. Pitman. 1953. P. 286-31.

8. Vuckovic V. The realization of the parallel chess system using UDP communication protocol // 8th Int. conf. on telecom, in mod. sat., cable and broadc. serv TELS1KS 2007. 26-28 Sept. 2007. Serbia: IEEE. 2007. P. 450-453.

9. http://en.wikipedia.oi^/wiki/lnternet_Chess_Server сайт Wikipedia, the free encyclopedia.

10. Иванов С.В. Программа для исследования взаимосвязи личностных и временных реактивных характеристик людей в процессе решения задач на восприятие и распознавание образа. Свидетельство об официальной регистрации программы для

УДК 681.3.06

ЕЛ. Макарова

ПРОГРАММНЫЙ КОМПЛЕКС ДЛЯ ФОРМИРОВАНИЯ БАЗЫ ЭКСПЕРИМЕНТАЛЬНЫХ ДАННЫХ ПО РЕЗУЛЬТАТАМ ИМИТАЦИОННОГО МОДЕЛИРОВАНИЯ

Имитационное моделирование как инструментарий для подготовки принятия решений при выработке стратегий на макроэкономическом уровне приобретает особую важность. Это обусловлено усилением влияния непредсказуемых факторов экономического, экологического и политического характера, связанных с развитием мирового экономического кризиса. Один из путей решения проблемы оценки последствий принимаемых решений заключается в многовариантном моделировании различных сценариев управления социально-экономической системой на основе имитационной модели [1].

Существующие программные средства имитационного моделирования (приложение Simulink среды MATLAB, GPSS, AnyLogic, Arena, PowerSim и др.) обладают широким спектром возможностей для разработки динамичес-

ких моделей и проведения имитационных экспериментов [2, 3]. Однако обработка данных о результатах большого количества имитационных экспериментов затруднена. Это обусловлено, в первую очередь, сложностями или даже отсутствием возможности создания базы эксперимен-тальныхданных (БЭД), которая необходимадля последующего анализа данных с целью извлечения закономерностей поведения системы с применением статистических и интеллектуальных методов.

В статье представлено решение этой задачи, выполненное при разработке информационно-аналитической системы имитационного моделирования (ИАСИМ) поведения макроэкономической системы (МЭС) в среде МАТЬАВ [4]. Структура ИАСИМ содержит следующие компоненты: имитационного моделирования (ИМ),

подготовки экспериментальных данных, нейро-сетевых технологий анализа данных. Компонент имитационного моделирования включает в себя динамические модели функционирования МЭС, реализованные с помощью как типовых блоков приложения Simulink, так и специальных блоков, логика работы которых написана на языке MATLAB. Компонент подготовки экспериментальных данных позволяет выполнять автоматическое формирование БЭД о результатах имитационных экспериментов. Компонент нейросетевых технологий анализаданных предполагает создание сценария анализа экспериментальных данных на основе нейронных сетей Кохонена и построения самоорганизующихся карт для контролируемых моментов времени с помощью аналитической платформы Deductor Studio. Далее рассматривается работа компонента подготовки экспериментальных данных.

План проведения экспериментов предполагает выполнение нескольких серий экспериментов, состоящих их множества групп. Формирование плана проведения одного эксперимента предполагает: задание начальных значений переменных модели; определение моментов времени подачи возмущений и принятия решений; определение моментов времени, в которые проводится анализ состояния МЭС, т. е. получение информации о состоянии МЭС и передачу в блок интеллектуального анализа данных.

В пределах одной группы эксперименты отличаются значениями переменных модели; в разных группах различными может быть и состав анализируемых переменных, и анализируемые моменты времени. Результаты экспериментов разных групп могут храниться в одном файле БЭД по желанию пользователя, если совпадают множества анализируемых признаков и моментов времени. Файл экспериментальных данных должен быть представлен в формате таблицы Excel, в которой полями являются: номер эксперимента iV; момент времени множество входных координат Д/,-), которое включает задающие, возмущающие и управляющие воздействия; множество выходных координат У(/,-) модели.

Проблемы, с которыми сталкивается исследователь при формировании файла экспериментальных данных, а также их решение заключаются в следующем. Первая проблема состоит в обеспечении записи требуемых значений входных и выходных переменных модели в рабочую

область МАТЬАВ в требуемые моменты времени Г= {?,.},/=!-£.

Если переменная модели имеет сигнальную природу, т. е. выступает связью между элементами структурной схемы динамической модели, представленной в приложении БтшНпк, то запись её значений в рабочую область удобно реализуется "схемным" путем — библиотечными средствами приложения БтшНпк. Для этого нужные выходы из подсистем выносятся на верхний уровень модели и дополняются специальными выходными элементами — портами. Отметим, что в этом случае двумерный массив уош, который автоматически формируется в рабочей области, будет содержать столбцы, соответствующие анализируемым переменным, указанным с помощью портов, и строки, соответствующие моментам времени. Шаг изменения времени — переменный, его расчёт осуществляется автоматически средой МАТЬАВ и определяется динамикой переходных процессов. Если переменная имеет параметрическую природу, то есть является параметром динамического блока на структурной схеме модели, то запись её значения в рабочую область выполняется программно. Для этого параметры блока обозначаются идентификаторами переменных, значения которых присваиваются в программе. Отметим, что параметрический характер корректировки присущ входным переменным, определяющим задающие, возмущающие и управляющие воздействия.

Организовать выборочную запись в рабочую область значений переменных в требуемые моменты времени Г можно как "схемным", так и программным путем. Первый способ приводит к существенной перегрузке структурной схемы модели вспомогательными элементами и, следовательно, к потере её наглядности. Реализация второго способа предполагает, что только после окончания моделирования можно создать двумерный массив в рабочей области, который формируется путем перезаписи из массива уош строк, соответствующих нужным моментам времени Т. Отметим, что в этот же массив целесообразно записывать и все входные переменные.

Вторая проблема — запись сформированного в соответствии с требованиями результирующего массива из рабочей области в файл. Это также реализуется программным способом.

Перечисленные выше проблемы могут быть решены только с привлечением средств

I

Вычислительные машины и программное обеспечение.

MATLAB. Для этого разработана программа AutSimModelling автоматизации процесса имитационного моделирования и подготовки данных. Функции этой программы: задание начальных значений входных переменных для моделирования; автоматический запуск процесса моделирования с помощью приложения Simulink с указанием имени /«¿//-файла, в котором хранится структурная схемадинамической модели; создание результирующего файла в рабочей области MATLAB и формирование файла с требуемыми результатами моделирования. Программа реализована на языке MATLAB и представлена /л-файлом.

Однако при работе только с этой программой в процессе проведения экспериментов остается нерешенной еще одна, третья, проблема Эта проблема состоит в необходимости многократной корректировки исходного текста программы AutSimModelling при переходе к очередному эксперименту. Если это эксперимент одной группы, то требуется изменить только номер эксперимента и начальных значений входных переменных модели. Если выполняются эксперименты другой группы, то необходимы значительные изменения текста программы. В этом случае дополнительной корректировке подвергаются: количество и состав входных переменных и анализируемых выходных переменных, количество моментов времени и их значения, а также имя файла, где хранится модель.

Для решения этой проблемы разработана управляющая программа DBSimControlling формирования БЭД на основе ИМ, которая позволяет: во-первых, автоматически генерировать текст программы AutSimModelling в соответствии с планом эксперимента; во-вторых, хранить результаты имитационных экспериментов всех групп и серий в базе данных; в-третьих, формировать по запросу выборку для последующего анализа данных. Программа обладает удобным для исследователя интерфейсом, разработана на языке С++ с использование средств СУБД MS SQL Server. Предложена процедура работы исследователя при проведении имитационных экспериментов с помощью разработанного программного комплекса, включающего программы DBSimControlling и AutSimModelling и функционирующего в средах MATLAB и MS SQL Server (см. рисунок).

Особенности выполнения некоторых этапов процедуры состоят в следующем. Первые три этапа предполагают представление исследователю возможности автоматической генерации всех воз-

программа подготовки данных на основс IIM DBSimControiiiny

MS SQL Server

Программа автоматизации моделирования

AutSiiiiMudeiiiny

MATLAB. Simulink

Управляющая программа подгоговгш данных на основс ИМ DBSimCoiitroiiiiiy

MS SOL Sene

/ Формирование множества входных переменных X и их возможных значений

а

2 Генерация всех комбинаций значений входных переменных

и

Выборка т требуемых комбинаций дня формирования группы экспериментов

л

4 Формирование множества выходных переменных Y

11

Vs Генерация исходного текста программы автоматизации моделирования АшБтМодеШгщ для т экспериментов

Л

6 Выполнение т имитационных экспериментов

u

7 Формирование файла результатов т экспериментов

11

« 8 Формирование базы экспериментальных данных

11

. 9 Формирование обучающей выборки по запросу пользователя в требуемом формате

Схема процедуры проведения имитационных экспериментов с помощью комплекса программ DBSimControlling и AutSimModelling

можных комбинаций значений входных переменных по заданным для каждой переменной вариантам значений. Реализованы два режима задания вариантов значений переменных—простым перечислением или интервалом с заданным шагом. Однако некоторые сочетания значений бывают либо невозможны по экономическому смыслу, либо не нужны для исследований. Поэтому пользователь может удалить ряд комбинаций, для которых не должны проводиться эксперименты. Для оставшихся т комбинаций на этапе 5 генерируется код программы AutSimModelling для т экспериментов.

На этапе 6 исследователь запускает программу AutSimModelling на выполнение, в результате которого последовательно, без вмешательства человека, выполняется т экспериментов с различными наборами значений входных переменных. На этапе 8 результирующий файл преобразуется в требуемый формат для хранения в БЭД. На этапе 9 в ответ на запрос пользователя формируется файл обучающей выборки в формате таблицы Excel для интеллектуального анализа.

Таким образом, разработанный программный комплекс обеспечивает поддержку пользователя при проведении многочисленных

имитационных экспериментов по различным сценариям управления поведением МЭС в соответствии с планом экспериментов; накопление экспериментальных данных о состоянии МЭС в динамике и формирование базы экспериментальных данных; формирование обучающей выборки для интеллектуального анализа данных.

Применение предложенной процедуры экспериментальных исследований с помощью программного комплекса возможно при проведении имитационных экспериментов с динамическими моделями сложных объектов различной физической природы, реализованными в среде МАТЬАВ.

СПИСОК ЛИТЕРАТУРЫ

1. Кузык Б.Н., Кушлин В.И., Яковец Ю.В. Программирование, стратегическое планирование и национальное программирование: Учебник 2-е изд., перераб. и доп. М.: ЗАО "Издательство Экономика", 2008. 575 с.

2. Смоленцев H. MATLAB: программирование на Visual С#, Borland JBuilder, VBA: Учеб. курс. M.: ДМК Пресс; СПб.: Питер. 2009. 464 с.

3. Карпов Ю. Имитационное моделирование систем. Введение в моделирование с АпуЬо§1с 5. СПб.: БХВ-Петербург. 2005. 400 с.

4. Ильясов Б.Г., Дегтярева И.В., Макарова Е.А., Габдуллина Э.Р. Моделирование динамики кругооборота финансовых потоков с учётом накопления финансовых ресурсов // Вестник компьютерных и информационных технологий. 2009. № 7 (61). С. 28—38.

УДК 004.451.23

М.В. Хлудова

СИНХРОНИЗАЦИЯ РАСПРЕДЕЛЁННЫХ ПРИЛОЖЕНИЙ РЕАЛЬНОГО ВРЕМЕНИ

Современное системное и прикладное программное обеспечение должно обладать важнейшим свойством: способностью к параллельному исполнению программных единиц работы, называемых заданиями. Термин "параллельное исполнение" заданий в информационных системах означает, что задания исполняются одновременно. Приложения реального времени являются параллельными по своему назначению, так как, с одной стороны, осуществляют обработку потока одновременно наступающих событий, а с другой — выработку управляющей реакции на эти события. В качестве примеров систем реального времени можно назвать системы управления технологическими процессами, контроллерные сети автомобиля и др.

Модель выделения ресурсов. Каждому заданию для выполнения предоставляется процессор и дополнительные ресурсы, перечень которых известен при проектировании приложений реального времени. Кроме того, заранее известны различные атрибуты заданий: предельный интер-

вал времени для завершения, максимальная длительность исполнения на процессоре, список заданий-предшественников, список ресурсов, которые используются заданием в монопольном или разделяемом режиме и длительности интервалов их использования. Если несколько заданий одновременно претендуют на использование процессора, то конфликт разрешается с помощью планировщика. В планировщике по заданной функции предпочтения и числовым значениям атрибутов задания осуществляется расчёт величины приоритета задания. Для обслуживания на процессоре назначается самое приоритетное из числа готовых к выполнению в данный момент задание. Обслуживание на процессоре может быть прервано при поступлении в систему более приоритетного задания, если в системе заложенадисциплина планирования с вытеснением менее приоритетного задания и дообслужи-ванием на процессоре.

Дополнительные ресурсы (структуры данных, буферы ввода-вывода) выделяются зада-

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