Темой моего дипломного проекта является «Технологическая среда разработки больших экономических моделей: компоненты поддержки работы эксперта - экономиста при формировании и отладке (в расчетном режиме) структурного текста модели». Дипломный проект входит в большой проект, разрабатываемый в Российском НИИ искусственного интеллекта: «Создание системы моделирования макроэкономики на основе аппарата недоопределенных вычислений». Данная система позволит экономистам создавать и исследовать модели макроэкономики РФ и составляющих ее регионов. Соответственно, пользователями программы являются две группы экономистов: экономисты - разработчики, которые занимаются непосредственной разработкой моделей, выявляют и описывают взаимосвязи компонентов макроэкономики и экономисты - пользователи, занимающиеся исследованием макроэкономики на основе моделей, построенными экономистами-разработчиками. Мой проект посвящен начальной стадии разработки экономической модели - обеспечение условий для формирования структурного текста модели и его представление в виде, «понятного» вычислительному ядру системы.
Модель макроэкономики представляет собой сложную структуру содержащую, в общем случае, систему экономических параметров (например, статей бюджета) и систему подмоделей, каждая из которой представляет собой законченную экономическую модель (примером может служить экономика отдельного региона). Кроме того, в модель входит так называемая система ограничений - это система уравнений, неравенств, описывающая взаимосвязи экономических параметров. Система ограничений пишется на языке вычислителя в виде совокупности выражений, включающих переменные, константы, стандартные математические функции, пользовательские функции. Язык вычислителя максимально приближен к общепринятой математической нотации. Экономический параметр представляет собой массив, значениями которого являются величина данного параметра в определенном году или определенном квартале определенного года. Значения годов и кварталов входят в модель в виде индексов.
Структура системы представлена на листе 1: в нее входит база данных, содержащая модель макроэкономики, вычислительное ядро UniCalc, конвертеры данных и комплекс панелей графического интерфейса. На этом же листе дана структура моей программы.
База данных системы представлена на листе 2. Здесь показаны объекты, которые присутствуют в базе. Объекты связаны следующим образом: экономический параметр всегда зависит от одного или нескольких индексов, а один и тот же индекс, в свою очередь, может присутствовать в нескольких параметрах; экономическая модель имеет одну или несколько версий расчета, но версия расчета всегда имеет только одну экономическую модель; совокупность экономического параметра и версии расчета модели образуют значение этого параметра. Вся эта информация является основанием для организации файловой структуры базы данных, которая также представлена на листе 2.
Наиболее сложной и интересной частью в моем проекте являются конвертеры данных - это транслятор данных из базы данных в формат вычислительного ядра (алгоритм его работы показан на листе 3) и транслятор системы ограничений в формат вычислителя. Транслятор системы ограничений нужен для распознавания и работы с моделями, разработанных в макете, т.е. системе - предшественнике. Он построен на основе грамматики, описание которой приведено на листе 4 и реализован методом рекурсивного спуска, суть которого в том, что каждый блок грамматики представляется в виде отдельной подпрограммы. Алгоритмы работы блоков транслятора представлены на листах 5, 6 и 7.
Технологическая часть моего проекта содержит описание разработки программ в среде быстрой разработки приложений Borland Delphi.
Организационно-экономическая часть содержит расчет затрат на разработку системы моделирования макроэкономики (лист 8). В результате расчета наибольшие затраты были на эксплуатацию реализующей ЭВМ, кроме того, очень высокий процент непосредственных затрат на разработку программы. Это может объясняться тем, что еще не отработана технология создания подобного рода систем.
В разделе “Производственно - экологическая безопасность” были рассмотрены вопросы эргономики, возникающие при организации рабочего места программиста. Описаны различные вредные факторы и выработаны рекомендации по их устранению. Также проведен расчет освещенности рабочего места программиста.
На данный момент система находится в «разобранном» состоянии, т.е. ее отдельные блоки разрабатываются и отлаживаются несколькими программистами. В самое ближайшее время будет произведена стыковка ее компонентов.
Спасибо за внимание.