Проектирование программного сервиса для оптимизации информационной системы виртуального предприятия
Выбор программных средств. Применение метода сравнения онтологий, реализация компьютерной программы для создания виртуального предприятия. Оптимизации выполнения распределенной задачи в рамках вычислительной системы с помощью онтологического подхода.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | дипломная работа |
Язык | русский |
Дата добавления | 10.12.2019 |
Размер файла | 1,7 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Пермский филиал федерального государственного автономного образовательного учреждения высшего образования Факультет экономики, менеджмента и бизнес-информатики |
|
Шеломова Кристина Денисовна Проектирование программного сервиса для оптимизации информационной системы виртуального предпрития Выпускная квалификационная работа по направлению подготовки 38.04.05 «Бизнес-информатика» образовательная программа Рецензент к.т.н., доцент кафедры программного обеспечения вычислительной техники и автоматизированных систем Греков А.В. Руководитель д.п.н, профессор кафедры информационных технологий в бизнесе НИУ ВШЭ - Пермь Плотникова Е.Г. |
Проектирование программного сервиса для оптимизации информационной системы виртуального предприятия
Пермь, 2019 год
Аннотация
программный компьютерный виртуальный предприятие
В данной выпускной квалификационной работе предпринята попытка оптимизации выполнения распределенной задачи в рамках вычислительной системы. для решения задачи оптимизации использован онтологический подход. Выпускная работа состоит из 65 страниц и содержит 3 таблицы, 20 иллюстраций и 1 приложение.
Работа включает три главы.
В главе 1 содержатся теоретические аспекты статической балансировки и пошагово охарактеризован и обоснован выбор программных средств для реализации задач, поставленных в рамках данной работы.
Глава 2 содержит теоретическую информацию о методе сравнения двух онтологий, а также представлена реализация компьютерной программы для автоматического подсчета коэффициента близости онтологий.
В главе 3 представлено проектирование онтологий и их сравнение посредством описанного в главе 2 метода. Также был проведен эксперимент, который заключался в выполнении операций над онтологиями. Результаты эксперимента показали, что исследуемый алгоритм определения эквивалентности онтологий действительно отражает степень их близости и может быть использован для оптимизации выполнения распределенных задач, которые решаются виртуальным предприятием.
Автор: Шеломова Кристина Денисовна.
Научный руководитель: Плотникова Е.Г.
Оглавление
- Оглавление 3
- Введение 3
- Глава 1. Характеристика теоретических аспектов для проектирования программного сервиса 8
- 1.1. Описание существующих решений 8
- 1.2. Описание распределенных информационных вычислительных систем 10
- 1.3. Балансировка нагрузки в распределенных системах 17
- 1.4. Сравнительный анализ языков описания онтологий 20
- 1.5. Выбор инструментального средства обработки онтологий 27
- Глава 2. Вычисление меры близости онтологий 30
- 2.1. Мера близости онтологий 30
- 2.2. Программная реализация инструмента для вычисления меры близости онтологий 35
- Глава 3. Проектирование онтологий 37
- 3.1. Проектирование онтологии виртуального предприятия 37
- 3.2. Проектирование онтологии задачи 41
- 3.3. Вычисление меры близости двух онтологий 43
- Библиографический список 54
- Приложение А. Программный код 57
Введение
На сегодняшний день, информационные технологии находятся в непрерывном развитии и охватывают все сферы деятельности человека, а также способствуют эффективному функционированию каждой из них. Следовательно, происходит формирование единого мирового информационного пространства на основе сети Интернет, где Интернет становится не только способом получения и передачи информации, но и все больше выступает инструментом ведения бизнеса. Активное стремление к сохранению или повышению конкурентоспособности заставляет организации подстраиваться под современный темп. Таким образом, развитие информационных технологий позволяет и мотивирует организации к видоизменению типа организации, к созданию виртуальной информационной системы и виртуального предприятия.
Существует множество определений виртуального предприятия, в общем виде, виртуальное предприятие представляет собой организацию, существующую в форме корпоративного, некоммерческого или иного объединения, не имеющего географического центра и функционирующего через телекоммуникационные средства [1]. Виртуальное предприятие (далее ВП) представляет собой трансформирующееся предприятие, участники которого объединяются для выполнения общей задачи и отделяются, расформировываются по достижению цели. Особенностью такого предприятия является его функционирование в удаленном режиме, то есть составляющие его элементы находятся на расстоянии друг от друга. Для таких предприятий существует сложность оптимального и наиболее эффективного выполнения задач, так как предприятие не имеет единого центра и разобщенно.
Если рассматривать виртуальное предприятие как распределенную вычислительную информационную систему (далее РВИС), в которой под отдельными вычислительными узлами рассматриваются вычислительные средства отдельных организаций, то необходимость выполнения распределенных задач (задачи выполняются различными подразделениями виртуального предприятия) приводит к необходимости планировать распределение нагрузки, оптимизируя решение задач в рамках такой системы. Иными словами, для выполнения задач необходимо наиболее эффективно расположить источники данных и используемые сервисы информационной системы (далее ИС), чтобы избежать коммуникационных затрат и обеспечить надежность, а также, безопасность распределенных вычислений, характерных для предприятий подобного рода. Решение задачи в рамках виртуального предприятия позволяет оптимизировать её время выполнения, однако гетерогенность виртуального предприятия, а именно, загруженность одних узлов и простой других, могут свести к минимуму пользу от использования вычислительных средств нескольких организаций. Таким образом, необходимо решить задачу так, чтобы её выполнение характеризовалось высоким качеством, надежностью при одновременном сокращении временных затратах на выполнение задачи. Ввиду того, что современные распределенные задачи отличаются повышенной сложностью и требуют большего внимания к скорости и надежности их выполнения в рамках распределенной системы, то тема данной работы актуальна. Стоит отметить, что уже много лет изучается и исследуется вопрос оптимизации последовательных программ с помощью онтологий такими авторами, как: И.Л. Артемьева, М.А. Князева, О.А. Купневич [2,3], поэтому можно говорить о привлекательности данной темы для изучения.
Отметим еще раз, что сложность современных вычислительных задач делает необходимым использование распределенных систем, состоящих из отдельных вычислительных узлов, активно взаимодействующих между собой. И это особенно актуально для виртуальных предприятий. Разработка и эксплуатация этих систем является крайне непростым процессом, требующим организованной работы множества узко специализированных лиц или организаций. В рамках данной работы виртуальное предприятие (далее ВП) рассматривается как распределенная вычислительная сеть, в рамках которой реализуется распределенное приложение, в котором функционируют процессы, реализующие распределенные алгоритмы.
Для эффективной работы этих алгоритмов необходимо знать характеристики распределенной системы, в том числе, и структурные (топологические) характеристики. Распределенный алгоритм зачастую реализуется взаимодействующими процессами, которые располагаются на различных вычислительных узлах, связанных между собой линиями связи. Эффективная работа распределенного алгоритма зависит от мощности вычислительных узлов и пропускной способности линий связи. Таким образом, важно, чтобы процессы, которые выполняют сложные вычисления, располагались на вычислительных узлах с мощными процессорами, а взаимодействующие процессы, которые требуют частых обменов сообщениями друг с другом, следует разместить на вычислительных узлах, связанных линиями связи с высокой пропускной способностью. Если структуру вычислительной системы представить графом G (V, E) (V- множество вычислительных узлов, E - множество линий связей между узлами), а взаимодействующие процессы, реализующие распределенный алгоритм некоторой распределенной задачи, в виде графа G1 (V1, E1) (V1 - множество процессов, E1- множество cвязей между взаимодействующими процессами) [4], то для решения распределенной задачи необходимо выполнить отображение F: G1G. Для того, чтобы получить эффективную (по скорости) работу распределенного алгоритма, необходимо добиться изоморфизма графов G1 и G (за счет снижения издержек на коммуникации).
Таким образом, для реализации эффективных распределенных задач ИС виртуального предприятия необходимы знания о структурных характеристиках предприятия и структурных характеристиках распределенных алгоритмов, реализующих эти задачи. В работе предпринята попытка хранить эти знания в онтологиях (онтология вычислительной системы и онтология задачи). Если эти онтологии будут эквивалентными (аналогично тому, как изоморфны графы G и G1), то можно сделать предположение, что распределенная задача будет выполняться достаточно эффективно.
Объектом исследования в данной работе является усовершенствование информационной системы виртуального предприятия. Предметом исследования выступает программный компонент для улучшения характеристик информационной системы виртуального предприятия.
Целью данной работы является выполнение проектирования программного компонента для оптимизации информационной системы виртуального предприятия. Для того, чтобы достичь этой цели необходимо выполнить следующие задачи:
· Охарактеризовать существующие решения, теоретические аспекты для реализации задачи.
· Выбрать инструменты для проектирования.
· Изучить метод сравнения онтологий и автоматизировать вычисления.
· Выполнить проектирование и рассчитать коэффициент близости онтологий.
· Сделать выводы на основе полученных данных.
С целью достижения результата, в рамках работы используются такие методы исследования, как:
· Методы теории графов
· Методы искусственного интеллекта (онтологический подход к решению задачи)
· Методы математического моделирования
· Методы распределенных вычислений.
Глава 1. Характеристика теоретических аспектов для проектирования программного сервиса
Глава 1. Характеристика теоретических аспектов для проектирования программного сервиса
С целью эффективного выполнения задачи в рамках вычислительной системы необходимо добиться изоморфизма графов. Как результат, необходимо рассмотреть смежные работы данной тематики, охарактеризовать распределенные системы и необходимость балансировки нагрузки в них. Как уже было сказано, в рамках данной работы, осуществляется попытка хранить знания о структурных характеристиках в виде онтологий, поскольку с помощью онтологий возможно построение интеллектуальных моделей. Следовательно, необходимо рассмотреть основные методы и инструменты построения онтологий и выбрать наиболее подходящий.
1.1 Описание существующих решений
Как уже было сказано, существует достаточное количество систем для оптимизации решения задач в различных предметных областях. Одним из классов таких систем являются системы, основанные на знаниях. Онтология определяется при создании системы, которая основана на знаниях, то множество классов задач, которые решаются системой, определяются также при ее создании. Как результат, системы, которые основаны на знаниях, дают возможность изменять знания, но не саму онтологию предметно области, хотя существуют предметные области, в которых изменяется, а и система знаний, так и сама онтология, что говорит и о изменении задач. На сегодняшний день, существует достаточное количество средств для представления как моделей, так и самих онтологий. Представление многоуровневых моделей предметных областей активно используется для оптимизации программ, что приводит к постоянному усовершенствованию и преобразованию имеющихся знаний, как результат, данный вопрос активно привлекает внимание специалистов и находит свое отражение в их научных трудах.
Например, И.Л. Артемьева, М.А. Князева, О.А. Купневич изучают вопрос оптимизации последовательных программ с помощью онтологий [2,3]. Ввиду повышения уровня исходного языка в области программирования существует задача повышения эффективности программ, путем выполнения некоторых преобразований, что называется задачей оптимизации программ. На сегодняшний день, существует множество языков программирования и, как результат, это приводит к формулировке результатов в области оптимизации в терминах абстрактных математических моделей программ, которые к тому же никак не зависят от того или иного языка программирования. Как результат, преобразования для оптимизации описываются в терминах различных моделей, что затрудняет их изучение и практическое применение. Так, вышеупомянутые специалисты предложили унифицировать и систематизировать знания об оптимизационных преобразованиях программ и представить в единой терминологии, что намного облегчит процесс их изучения [2].
Авторы предлагают описание предметной области «Оптимизация программ», где объектом оптимизации выступает некоторая программа, свойства которой, как и язык, на котором эта программа написана, описываются в терминах математической модели. Термины данной предметной области разбиваются на 2 группы. Сама модель онтологии состоит из модуля, содержащего определения для описания объекта оптимизации, где характеризуются термины для описания программы, а второй модуль содержит термины, необходимые для описания процесса автоматизации. В данном случае, объект оптимизации представляет собой некоторую программу, свойства которой описываются в терминах математической модели конкретной программы, а свойства языка (характеристика программы) в терминах математической модели этого языка. Как результат, выделяется две группы для описания объекта оптимизации, а именно: термины, описывающие модели языка и термины, описывающие модели конкретной программы [3]. Для оптимизации программы необходимо изначально определять язык, которому она принадлежит. Таким образом, термины для описания модели языка представляют собой параметры модели онтологии, а термины, описывающие модель программы - неизвестные модели онтологий. Как результат, модель языка задается указанием значений параметров, а модель конкретной программы - указанием значений неизвестных. Таким образом авторами предлагается модель онтологии объекта оптимизации программ, а также модель онтологии объекта оптимизации программ. Представленная модель дает возможность изменять модель языка оптимизируемых программ для выполнения оптимизирующих преобразований для различных языков программирования.
В рамках данной работы планируется оптимизировать выполнение программы в раках распределенной вычислительной системы, задача схожа с задачей балансировки нагрузки, применение которой сейчас достаточно популярно для распределенных систем. Таким образом, необходимо дать определение распределенной системе и отобразить виртуальное предприятие как распределенную систему.
1.2 Описание распределенных информационных вычислительных систем
Как уже было сказано, современные программные продукты характеризуются высокой сложностью исполнения, это объясняется тем, что к ним предъявляются всё большие требования, такие как: масштабируемость, надежность или устойчивость от ошибок и программных сбоев и так далее. Как результат, ужесточаются требования к программным продуктам, что приводит к росту и популярности использования распределенных систем.
Под РВИС понимается система, для которой значительное влияние имеет отношение местоположений элементов, как с точки зрения функционирования система, так и с точки зрения анализа и синтеза [5]. В таких системах функции, ресурсы распределяются между большим количеством элементов (узлов), а единый управляющий центр отсутствует, что позволяет продолжать системе работать и не останавливаться полностью при выходе из строя какого-либо из узлов. Самым популярным примером распределенной системы является Интернет. Другое определение характеризует распределенную систему набор автономных компьютеров, процессов или процессоров, которые представляют собой узлы системы, оборудованные собственным аппаратом управления. В рамках данной работы под распределенной системой рассматривается совокупность взаимодействующих друг с другом программных компонент, каждая из которых рассматривается как конкретный программный модуль, который выполняется в рамках какого-либо отдельного процесса. Иными словами, под распределенной системой понимается любая ИС, которая позволяет организовывать взаимодействие независимых, связанных территориально распределенных компьютеров.
Существуют различные классификации РИС. Например, по степени неоднородности различают следующие [6]:
· Полностью неоднородные РИС. Системы, состоящия из различных ЭВМ, в основе которых различные архитектуры и их функционирование осуществляется посредством различных ОС.
· Частично неоднородные РИС. Системы, состоящие из однотипных ЭВМ, которые работают через различные ОС или систем, состоящих из различных ЭВМ, функционирующих через одинаковую ОС,
· Однородные РИС. Системы, состоящие их однотипных ЭВМ, находящихся под управлением одинаковых ОС.
По архитектурным особенностям РИС классифицируются на [6]:
· РИС на основе систем телеобработки. Такие системы не имеют полного, симметричного, а также независимого взаимодействия процессов.
· РИС на основе сетевой технологии. Сетевая технология позволяет взаимодействовать ЭВМ таким образом, что любой из процессов одной ЭВМ имеет возможность устанавливать логическую связь с любым процессом других вычислительных машин по своей инициативе.
По степени распределенности с точки зрения пользователя, системы подразделяются на [6]:
· Региональные. Характеризуются неограниченной географической распределенностью, произвольная топология, широкий диапазон скоростей передачи и так далее.
· Локальные. Характеризуется ограниченной географичесой распределенностью, высокая скорость обмена, ограниченность топологий и так далее.
Более того, РИС должна отвечать следующим требованиям, а именно [5]:
· Прозрачность. Данное требование включает в себя прозрачность доступа, местоположения, переноса, параллельного доступа, отказов и так далее. Стоит отметить, что не все типы прозрачности могут быть реализованы в одной системе, так как обеспечение прозрачности непосредственно влияет на производительность системы.
· Открытость. Распределенные системы должны быть способны к взаимодействию, переносу и одной системы в другую, не изменяя при этом интерфейс.
· Гибкость. Система должна отличаться простотой конфигурирования.
· Масштабируемость. Система должна иметь возможность расширения. Стоит отметить, что масштабируемость системы влияет на её производительность.
Таким образом, характеристика РИС позволяет выдвинуть предположение о том, что в качестве такой системы можно рассматривать виртуальное предприятие, где под конкретными вычислительными узлами рассматриваются отдельные организации. Для того, чтобы доказать эту точку зрения, охарактеризуем виртуальное предприятие.
Как уже было сказано, в последнее десятилетие стремительное развитие информационных технологий оказывает значительное влияние и вносит кардинальные изменения в функционирование предприятия, меняя их образ, в целом. Стабильная организационная структура, которая раньше была основным достоинством предприятия сейчас становится существенным недостатком поскольку не позволяет мгновенно реагировать на изменения требований постоянно развивающегося рынка. Более того, принцип взаимодействия между продавцом и потребителем видоизменяется и, как результат, осуществляется трансформация предприятия в виртуальную организацию, что позволяет организациям как развиваться, так и оставаться конкурентоспособными на рынке.
Стоит отметить еще раз, что определение «Виртуальное предприятие» появилось сравнительно недавно и подвержено изучению и исследованию со стороны специалистов различных областей и, как результат, на сегодняшний день существует множестве различных трактовок данного понятия, однако нет четкого определения, которое в полной мере описывает виртуальное предприятие. Ввиду того, что трактовка виртуального предприятия подразумевает отдельные бизнес-процессы и отдельные предприятия, а зачастую приводятся противоречивые некорректные трактовки, рассмотрим определения, которые представлены в свободном доступе и проанализируем каждое из них. Феномен виртуального предприятия изучали и исследовали многие зарубежные специалисты, такие как: Грениер (Genier), Голдмен(Goldman), Данбар (Dunbar), Уорнер. М., Витцель М., и другие. Также проблема развития виртуальных организаций исследуется в отечественных трудах Мильнера Б.З., Латфуллина Г.Р., Ткачевой Е.Н., Масловой А.В., Сюрдюка В.А. и так далее [7,8].
Одним из первых дал определение виртуальному предприятию американский ученый, Дж. Холланд профессор электротехники и информатики [8]. Он рассматривал понятие виртуальной организации с подхода к географическим распределенным ресурсам, по аналогии с понятием виртуальной машины, в которой ни один процесс не может монопольно применять какой-либо ресурс, и все системные ресурсы потенциально предназначены для совместного функционирования.
В экономической сфере, первыми из специалистов, кто исследовал данный термин, были У. Давидоу (Davidow) и М. Мэлоун (Malone) [9]. В 1992 году они рассматривали термин «Виртуальная корпорация» как любую новую организационную форму, в основе которой лежат информационные технологии, а жизненный цикл ограничен временными рамками [9]. Более того, они считали, что новый тип организации позволяет преодолеть инерционность, одну из основных проблем традиционных предприятий.
В 1993 Бурне (Byrn J.A.) предложил иную трактовку определения [10]. По его мнению, «Виртуальная корпорация» представляет набор электронных телекоммуникационных связей между эфемерными образованиями, которые жертвуют уровнем своей компетенции во славу эффективного взаимного сотрудничества [10].
В 1996 году в своей работе Мартин (Martin) рассмотрел определение «кибернетическая корпорация», где в основе лежат высокоскоростные каналы связи, которые заложены в сетях Интернет и Интранет [11].
Ванкатраман (Vankatraman) и Хендерсон (Henderson) в 1997 году рассмотрели виртуальную организацию как объединение, которое не характеризуется какими-либо новыми экономическими параметрами, а виртуальность определяется «способностью стабильно осуществлять и координировать работу организации в критических условиях» [12].
В научной работе «Информационная эпоха» М. Кастельс утверждает о том, что виртуальное предприятие представляет собой наиболее передовую форму организации предприятия[13].
Далее, специалисты Плескач В.Л. и Затонацкая Т.Г. характеризовали виртуальное предприятие как постоянную или временную совокупность географически разделенных групп, людей, организационных единиц, которые объединены для решения определенных задач, достижения определенной цели на основе принципов разделения труда, обязанностей и сетевой структуры, а общая деятельность осуществляется благодаря информационно-коммуникационным технологиям [8].
В экономическом словаре «Виртуальное предприятие» - это группа географически разделенных работников, которые в процессе труда взаимодействуют исключительно электронными средствами при минимальном или полностью отсутствующем личном контакте [14].
Таким образом, выделяют два подхода к определению виртуальной организации[8]:
1. Первый подход рассматривает виртуальную организацию как предприятие, которое использует информационные технологии для совместной работы географически удаленных друг от друга людей групп или отдельных людей. Стоит отметить, что может сохраняться традиционный тип организации, при централизованной системе управления, где из-за особенностей бизнес-процессов сотрудники удалены, а взаимодействие осуществляется через интернет-технологии. Даная форма организации дает возможность привлекать ресурсы аутсорсинга, что позволяет экономить на издержках.
2. Согласно второму подходу, виртуальное предприятие - это предприятие, которое создано на основе сетевой организации, и характеризуется гибкой структурой, которая состоит из проектных команд, формирующихся мгновенно, с целью реализации того или иного проекта и мгновенно распускающиеся при его завершении (проекта). Следовательно, виртуальное предприятие обладает динамичной структурой, которая может варьироваться, для того, чтобы приспосабливаться к конкретным задачам.
Проанализировав определения, которые дают специалисты, становится возможным выделить основные черты и особенности, свойственные виртуальному предприятию и отличающие его от других форм организации предприятия, а именно [15]:
1. Отсутствие границ. Для виртуального предприятия незначительную роль играет местоположение, большую важность приобретает использование коммуникаций, а не физические активы и физическое расположение. Люди, группы могут быть объединены и выполнять один проект, находясь в разных концах земли, что является одной из основных особенностей такого рода предприятий.
2. Использование информационных технологий. Как уже было сказано, в основном, именно информационные технологии позволяют осуществлять коммуникацию между удаленными друг от друга людьми и, как результат, эффективно функционировать виртуальным предприятиям. В то время, как в традиционных предприятиях, основой являются физические здания, структуру виртуальных организаций составляет коммуникационная сеть.
3. Вовлечение клиентов. Виртуальные предприятия могут включать в производственный процесс непосредственно потребителей товаров, создавая системы, в которых производитель и потребитель находятся в тесной связи и создание товара требует непосредственного участия обеих сторон.
4. Непостоянный характер функционирования. Виртуальные предприятия могут быть организованы для различных целей и на различные сроки. Например, для реализации одной бизнес-цели, по достижению которой следует роспуск предприятия
5. Разнородные группы участников. Виртуальные организации являются по большей части агентами для совместной работы, которые объединяют основные компетенции, ресурсы и возможности работы с потребителями. Виртуальная организация может объединять компании и бизнес-элементы, которые не связаны какими-либо структурными ограничениями и которые работают совместно только для достижения взаимовыгодных целей.
Как уже было сказано ранее, процесс трансформации традиционных организаций в виртуальные и появление виртуальных предприятий происходит благодаря быстрому развитию информационных, коммуникационных технологий, стремительному появлению инноваций, а также благодаря тому, что происходит рост значимости знаний, и индивидуализация сознания людей. Таким образом, традиционные предприятия, трансформируются, приобретают новый характер развития и, в целом, изменяются. На трансформацию организаций большое влияние оказывают не только технологические, экономические факторы, но и социальные, поскольку видоизменяется отношение к человеку, поскольку он становится основным ресурсом и конкурентным преимуществом [15]. В таблице 1.1. представлены основные отличи традиционного предприятия от виртуального.
Таблица 1.1. Сравнительная таблица традиционных и виртуальных предприятий
Признак |
Традиционное предприятие |
Виртуальное предприятие |
|
Характер функционирования |
Постоянный |
Непостоянный, может быть открыта для одного проекта и закрыта, после его выполнения. |
|
Гибкость и адаптивность |
Низкая степень гибкости |
Высокая степень гибкости |
|
Влияние |
В соответствии с иерархическим уровнем |
В соответствии со знаниями и умениями |
|
Отношение между работниками и администрацией |
Отношения подчинения |
Договорные, отношения и упразднение отношения подчинения. |
|
Положение сотрудников |
Заменимость и зависимость. |
Лояльность, информированность, независимость. |
|
Механизм осуществления управленческих действий |
Использование традиционных средств связи, например, телефон, почта и так далее. |
Использование информационных систем. |
|
Ориентация в организации |
На предприятие |
На собственный интерес, предприятие, коллектив. |
|
Важнейшая цель |
Максимизация выпуска |
Оптимизация выгоды |
Виртуальные организации, ввиду своих особенностей от привычных предприятий, нуждаются в видоизменении системы управления, следовательно, существуют особенности управления, а именно [15]:
1. Виртуальные предприятия характеризуются проектным характером работ. Иными словами, в основе определенные задачи, которые необходимо выполнить в установленный срок, с установленным бюджетом. Следовательно, основными функциями управления является определение задач, планирование сроков, привлечение участников, управление взаимодействием и осуществление контроля.
2. Виртуальное предприятие характеризуется наличием отдельного лидера для каждой группы, где каждая в свою очередь имеет самостоятельную организационную структуру, а лидеры групп, имеющие локальное влияние в рамках группы, получают расширенные полномочия на разных этапах реализации.
3. Основополагающим фактором для эффективной реализации проекта и функционирования виртуальной организации, в целом, является качественная координация, которая включает в себя сокращение материальных и временных затрат. Для того, чтобы координация была эффективной необходимы вложения в технологии и обучение сотрудников.
4. Планирование между удаленными группами-участниками требует особого внимания, так как каждый отдельный компонент имеет свои цели и стратегии, несмотря на наличие общей цели. Планирование осуществляется координаторами, однако в децентрализованных группах координирующий орган может быть размыто, что мешает комплексному стратегическому развитию.
Необходимо отметить, что проведенный выше анализ позволяет сформулировать собственное определение виртуального предприятия. Итак, виртуальное предприятие - это гибкая структура, динамично подстраивающаяся и адаптирующаяся для решения конкретной задачи, включающей в себя временное или постоянное объединение географически разобщенных людей, групп или организаций, функционирование которых осуществляется за счет применения информационных технологий с использованием коммуникационных средств. Таким образом, исходя из того, что под РИС, в общем виде, понимается любая ИС, которая позволяет организовывать взаимодействие независимых, связанных территориально распределенных компьютеров, можно сделать вывод, что в рамках данной работы целесообразно рассматривать виртуальное предприятие как распределенную систему, где под вычислительными узлами понимаются отдельные организации.
Известно, что в рамках распределенных систем существует проблема оптимальной нагрузки вычислительных узлов. Данная проблема достаточно актуальна и приводит к необходимости использования балансировки нагрузки. Балансировка нагрузки применяется для равномерной загрузки вычислительных узлов в системе, а также для переноса вычислений с более загруженных узлов на менее загруженные. Для того, чтобы иметь представление о балансировке и в дальнейшем применить принцип её выполнения в рамках данной работы, необходимо рассмотреть основополагающие аспекты балансировки нагрузки на вычислительных узлах распределенной системы.
1.3 Балансировка нагрузки в распределенных системах
Балансировка нагрузки применяется для оптимизации выполнения распределенных вычислений с помощью распределенной вычислительной системы. В основе метода лежит идея распределения вычислений по процессам так, чтобы суммарная вычислительная и коммуникационная загрузки процессов были примерно одинаковы. Балансировка подразумевает равномерное распределение нагрузки на вычислительных узлах [16]. В случае возникновения новых задач, программное обеспечение, которое реализует балансировку, принимает решение, на каком вычислительном узле выполнять вычисления, связанные с новым заданием, а также балансировка применяется, с целью переноса части вычислений с наиболее загруженных вычислительных узлов на менее загруженные.
Стоит отметить, что различают декомпозицию задач и проблему отображения задач на вычислительную среду. Декомпозиция применяется для разделения приложения на задачи, которые выполняются на отдельных процессорах, в результате чего формируется набор задач, независимых или связанных друг с другом через обмен данными. Распределение задач, другими словами, «отображение» - отдельный этап, который позволяет распределять задания между процессами [17].
Под распределенным приложением понимается совокупность логических процессов, взаимодействующих друг с другом через отправку сообщений друг другу. Логические процессы распределяются по различным вычислительным узлам и могут функционировать параллельно. В случае распределения логических процессов по вычислительным узлам необходимо распределять их (процессы) таким образом, чтобы обеспечивать равномерную загрузку вычислительных узлов [18]. Стоит отметить, что при выполнении распределенного приложения возникает конфликт между сбалансированным распределением объектов по процессам и низкой скоростью обмена сообщениями между процессами. Когда логические процессы распределены между процессорами так, что издержки на коммуникацию сравнимы с 0, то некоторые процессоры будут простаивать, а другие наоборот будут перегружены [19]. Стоит отметить, что в случае хорошо сбалансированной системы будет проблема высоких затрат на коммуникацию. Как результат, балансировка должна быть такой, чтобы вычислительные узлы были загружены равномерно, без перегруженной коммуникационной среды.
Проблема балансировки нагрузки вычислительной сети возникает ввиду некоторых причин, а именно [4]:
· Новые задания имеют различную степень сложности, следовательно, необходимо определить количество ресурсов, которое будет достаточно для их выполнения.
· Неоднородная структура вычислительной сети, узлы могут обладать разной производительностью.
· Неоднородная структура взаимодействия между узлами, ввиду того, что вычислительные узлы могут быть географически распределены, могут образовываться различные задержки.
Выделяют следующие типы балансировки [4]:
1. Статистическая. При статической балансировке наилучшим результатом считается нахождение подграфа G NG , изоморфного графу - модели M. Такой тип балансировки выполняется до начала выполнения распределенного приложения. При распределении объектов по вычислительным узлам применяются какие-либо правила, анализируется структура приложения или используется опыт предыдущих запусков, где наибольшее значение имеют следующие характеристики:
· Мощность всех доступных вычислительных узлов.
· Пропускная способность линий связи между вычислительными узлами.
· Потребность объектов в вычислительных ресурсах.
· Пропускная способность линий связи между вычислительными узлами.
2. Динамическая. В алгоритме автоматической динамической балансировки [4] Ba графы G и M рассматриваются как нагруженные. Вершинам первого графа приписывается параметр - производительность, а его ребрам - скорость передачи данных. Во втором графе вершины характеризуются временной сложностью вычислений, а ребра - интенсивностью потоков сообщений (выходных событий). Веса вершин и ребер графа NG считаются известными. Соответствующие параметры графа M должны определяться во время имитационного прогона. Такой тип балансировки выполняет перераспределение вычислительной нагрузки на узлы в процессе выполнения распределенного приложения. Программное обеспечение собирает данные, на основании которых принимает решение о переносе логических процессов с одного узла на другой, а именно:
· Описание узлов вычислительной сети.
· Описание методов тестирования вычислителей.
· Статистика по загруженности узлов вычислительной сети.
· Статистика по прохождению задач пользователя.
· Параметры настройки и результаты задач прогнозирования.
· Состояние сети.
· Производительность операций ввода/вывода и т.д.
Таким образом, при балансировки нагрузки, эффективная работа распределенного алгоритма зависит от мощности вычислительных узлов и пропускной способности линий связи. Таким образом, важно, чтобы процессы, которые выполняют сложные вычисления, располагались на вычислительных узлах с мощными процессорами, а взаимодействующие процессы, которые требуют частых обменов сообщениями друг с другом, следует разместить на вычислительных узлах, связанных линиями связи с высокой пропускной способностью. Если структуру вычислительной системы представить графом G (V, E) (V- множество вычислительных узлов, E - множество линий связей между узлами), а взаимодействующие процессы, реализующие распределенный алгоритм некоторой распределенной задачи, в виде графа G1 (V1, E1) (V1 - множество процессов, E1- множество cвязей между взаимодействующими процессами), то для решения распределенной задачи необходимо выполнить отображение F: G1G. Ели графы будут изоморфны, то распределенное приложение будет работать эффективно.
Как уже было сказано, в рамках данной работы, структурные характеристики вычислительной сети и распределенной задачи будут рассматриваться в виде онтологий, следовательно, для корректного проектирования онтологий, необходимо рассмотреть основные методы их построения.
1.4 Сравнительный анализ языков описания онтологий
На сегодняшний день, существует достаточное количество определений понятия «Онтология», зависщие от целей и характера его использования [21]:
1. Онтология - раздел философии, который изучает науку о бытии, проблемы бытия.
2. Онтология - это целостная структурированная спецификация, формализованное представление предметной области, включающее словарь указателей на термины предметной области и логические выражения, описывающие их соотношение друг с другом.
3. Онтология - это система, которая состоит из набора понятий и утверждений об этих понятиях, благодаря которым строятся классы, объекты, отношения, функции и теории. Онтологические системы базируются на следующих принципах [21]:
· Формализация - описание элементов действительности в единых, определенных образцах, например, терминах, моделях.
· Использование ограниченного набора базовых терминов, с помощью которого формируются остальные понятия.
· Внутренняя полнота и логическая непротиворечивость.
На сегодняшний день классифицировать онтологии можно по-разному, в зависимости от их назначения, типа, цели.
Онтологии, классифицируются по цели создания на [22]:
1. Онтологии представления - это концептуализация формализмов представления знаний.
2. Онтологии верхнего уровня - это онтологии, описывающие общие концепты, независимые от определенной проблемы, области. Такие онтологии могут повторно использоваться в разных предметных областях. Например, проект онтология CYC, представляет собой базу знаний, которая состоит из все общих понятий окружающего мира. Такую онтологию можно применять для различных программных средств.
3. Онтологии, ориентированные на предметную область. Онтологии, которые разрабатываются во многих сферах, дисциплинах, могут использоваться экспертами по предметным областям, с целью совместного использования информации в своей области. К примеру, в медицинской сфере используется структурированный словарь SNOMED. Также, объединение сил ООН и американской компании Dun&Bradstreet направлено на создание онтологии UNSPSC, в которой представлена терминология товаров и услуг.
4. Прикладные онтологии. Онтологии, описывающие концепты, зависимые от онтологии задачи и онтологии домена. Иными словами, онтология направлена на описание модели конкретной задачи или приложения. Для таких онтологий отсутствует возможность повторного использования, поскольку они содержат специфичную информацию. Примером может быть онтология для автомобилей строительных материалов и так далее.
По содержимому онтологии могут классифицироваться следующим образом []:
1. Метаонтологии. Онтологии, которые содержат общие понятия, не зависящие от предметной области.
2. Предметные онтологии. Онтологии, описывающие понятия из конкретной предметной области.
3. Онтологии задач. Онтологии задач, или, ориентированные на задачу - это онтологии, которые используются определенной прикладной программой и содержат термины, использующиеся при разработке ПО, которое выполняет конкретную задачу. В общем случае, данный вид онтологий отражает специфику приложения и может быть построена для самых разнообразных задач: составление учебного расписания, диагностика, продажа и так далее [12,13].
Известно, что построение онтологии должно подчиняться некоторым критериям, а именно:
1. Прозрачность характеризуется эффективной передачей подразумеваемого значения конкретного термина.
2. Связность характеризуется возможностью делать выводы, согласующиеся с исходными определениями понятий.
3. Расширяемость характеризуется возможностью использования разделяемого и пополняемого словаря.
4. Минимальный базис при высокой выразительности характеризуется наличием минимального базового набора понятий.
5. Независимость от синтаксиса характеризуется концептуализацией, которая должна быть специфицирована на уровне знаний, независимо от представления понятий на уровне символов.
Другой набор требований выделяется в исследованиях С. Ниренбурга и В. Раскина, а именно[14]:
1. Ясность характеризуется легкостью передаваемого смысла и объективностью онтологии.
2. Последовательность характеризуется непротиворечивостью утверждений, наличием иерархии понятий, отношений, экземпляров.
3. Расширяемость.
4. Минимальная степень специализации характеризуется возможностью применения онтологий для решения спектра задач, а не конкретной задачи.
Далее, рассмотрим основные методы построения онтологий. В упрощенном варианте для построения онтологий необходимо перечислить категории, которые обозначают сущности/явления в конкретной области моделирования. Далее, выбранные категории связываются конкретными отношениями. В заключении, конкретные экземпляры соотносятся с категориями.
Другой подход, именуемый как экономный подход, основывается на создании небольшого количества семантически простых концептов, благодаря которым возможно объяснить значение намного более сложных понятий. Такой способ позволят находить связанность понятий, определять умозаключения, но в тоже время достаточно сложно составлять сложные значения.
Неэкономный подход предполагает создание любого количества индивидуальных сущностей от 10 до 10 000 и больше. В пример можно привести создателей WordNet, поскольку трудно определить связанность понятий, а также работать с умозаключениями. При данном подходе нет необходимости составлять сложные значения.
В случае, когда построение онтологии неочевидно, возникают трудности сбора понятий и выделение дифференциальных признаков, появляется возможность сбора элементов онтологии напрямую. Данный подход характеризуется первоначально сбором и классификацией понятий, подбором слов, а далее проводится соответствие меду понятиями и лексиконом. При таком подходе появляется проблема близкого, но не идентичного пересечения значений в словах разных языков.
Следующий подход основан на применении микротеорий. Для такого подхода характерно первоначальное понимание явления, где далее формируются примитивы теории, элементы лексикона определяются с точки зрения примитивов, после лексикон усложняется. Основной проблемой при данном методе является выбор микротерии и необходимость отдельной теории для каждого комплекса значений.
С целью иллюстрации двух последних методик, приведем пример с использованием нескольких подходов к трактовке понятия «цвет» и различных обозначений цветов, который был предложен Э. Хови [26]. Существует возможность напрямую собрать слова, которые обозначают цвет и попробовать их классифицировать. Также, можно использовать подход, основанный на микротеориях, чтобы понять, что за явление «цвет». Если рассматривать с точки зрения физики, то цвет задается длиной волны и интенсивностью - эти два параметра помогут определить конкретные значения цвета.
Таким образом, в основе онтологии лежат понятия, но не совсем понятно, как определяются понятия, в процессе построения онтологии. Зачастую, именно категория значения является связующим звеном. Слова существуют в рамках одного языка, а значения независимы от конкретного языка. Таким образом, Э. Хови предложил подход, с помощью которого можно выявлять понятия через совокупность слов, в данном подходе осуществляется переход от слова к значению, а далее к понятию. Данный алгоритм состоит из следующих шагов [25]:
1. Инициализация. Для конкретного слова создается несколько десятков предложений, в которых оно используется
2. Значения слова располагается в схожих группах.
3. Дифференциация. Происходит построение дерева, где выделенные группы располагаются в корне дерева.
4. Среди всех групп выбирается группа, которая наиболее сильно отличается от других.
5. В структуре создаются две ветви, под 1 ветвью располагается новая группа, под второй - остальные группы.
6. Отдельно под каждой ветвью изучается группа, действия повторятся, начиная с 4 шага.
7. Формирование понятий. При завершении ветвления, результат представляет собой дерево с отличительными признаками, где каждый лист представляет собой отдельное понятие, которое не делится. Отличия должны быть формализованы в виде аксиом, срабатывающих для ветви, с которой ассоциируется.
8. Добавление понятия. Понятие добавляется в онтологию, путем прохода с вершины до каждого узла с ветвлением.
Нахождение новых понятий также возможно с помощью существующих онтологий, списков, словарей и тезаурусов.
Другой подход к построению онтологий предложен в исследовании Е.Ной и Д. МакГиннес, в котором разработка онтологии подчиняется следующим правилам [26]:
1. Нет единственного правильного способа разработки, всегда есть приемлемые альтернативы.
2. В процессе разработки онтологии необходимо неоднократно проходить по ней, для того, чтобы уточнять, добавлять изменения.
3. Необходимо, чтобы элементы онтологии были близки к объектами отношениям.
Наряду с вышеописанными способами построения онтологий, есть полуавтоматические и автоматические методы, как для обновления онтологий, так и для создания. На сегодняшний день, нет совершенного автоматического способа построения онтологий, но есть общие требования, которые предъявляются к системам:
1. Минимальный контроль, который характеризуется сведение к минимуму или полное исключение участия человека.
2. Универсальность, характеризуется возможностью применения к различным источникам, вне зависимости от размера, области знания и так далее.
3. Точность, характеризуется извлечением информации, которая содержит минимальное число ошибок.
Стоит отметить, что для построения онтологий необходимо выбрать наиболее удобный язык описания онтологий.
Реализация онтологий предусматривает обязательное использование языков их представления. Таким образом, в проектировании онтологий основным моментом является выбор соответствующего языка спецификации онтологий. Язык описания онтологий - это формальный язык, который используется для кодирования онтологии.
На сегодняшний день, онтологический подход для представления данных оказывает содействие при создании различных языков представления онтологии и инструментальных средств, которые предназначены для их редактирования. Рассмотрим современные и наиболее популярные языки описания онтологий.
1. RDF - язык представления метаданных, которые связаны с ресурсами Сети [27]. Цель данного языка: представить утверждения в таком виде, чтобы они хорошо воспринимались и человеком, и машиной. Базовая структурная единица этого языка - триплет, состоящий из субъекта, предиката и объекта. Таким образом, множество утверждений образуют ориентированный граф, в котором вершины-субъекты и объекты, а ребра - отношения. Пример RDF-графа представлен на рисунке 1.1.
Рисунок 1.1. Представление RDF-графа
2. DAML+OIL -семантический язык разметки, расширяющий RDF [27]. Язык обеспечивает набор конструкций для создания онтологии и разметки информации, чтобы их мог читать как человек, так и машина и содержит заголовки, элементы классов, элементы свойств и экземпляры.
3. OWL- язык для описания Веб онтологий, который создан для представления в виде словарей значения терминов и отношения между этими терминами [15]. Язык OWL совместим с RDF, но характеризуется использованием более высокого уровня абстракции, что позволяет использовать дополнительный терминологический словарь. Базовое понятие - это класс, свойство, экземпляр класса и так далее. В языке также имеются 2 предопределенных класса:
· Класс owl: Thing (сущность) обозначает множество индивидов.
· Класс owl: Nothing (ничто) обозначает пустое множество
В таблице 1.2. представлена сравнительная таблица языков.
Таблица 1.2. Сравнительная характеристика языков описания онтологий
Наименование языка |
Особенности |
Достоинства |
Недостатки |
|
RDF |
Не является стандартом метаданных, только фиксирует утверждения о ресурсах, их свойствах и значениях свойств. |
-aМожет осуществлять автоматическую обработку Web-ресурсов. - Модель данных не привязана к закрытым технологиям хранения и представления данных. |
-aОткрытость и расширяемость. -aВозможность создания бессмысленных, несогласующихся с другими, утверждений. -aВся ответственность за проверку лежит на конечных пользователях. -aВысокая сложность описания понятий. |
|
DAML+OIL |
В сравнении с RDF имеет больший набор синтаксических конструкций. |
-vПозволяет задавать различные свойства объектов и характеристики свойств (эквивалентность, однозначность). - Предоставляет большой набор конструкций для создания онтологии и разметки информации. |
-aЯвляется основой для создания языка OWL и, как результат, не может считаться наиболее удобным языком. -aОграничения конструкций. |
|
OWL |
Основан на более ранних языках, например DAML+OIL. Данный язык пригоден для описания как веб-страниц, так и любых объектов действительности. |
-fОткрытость, т.е. описание ресурса не ограничено единственным файлом. -aРасширяет набор терминов, определенных RDF. -aУлучшает возможность автоматической интерпретации содержимого интернета. |
-aОтсутствие возможности естественного определения свойств у свойств. ... |
Подобные документы
Создание образа диска с помощью программного продукта Nero для резервного копирования, распространения программного обеспечения, виртуальных дисков, тиражирования однотипных систем. Возможности Alcohol 120%, Daemon Tools для эмуляции виртуального привода.
курсовая работа [188,9 K], добавлен 07.12.2009Анализ существующих программных средств для автоматического отображения онтологий, их практического применения в зависимости от поставленной задачи и сложности входных онтологий. Отображение сложных онтологий с помощью алгоритма повышенной точности.
дипломная работа [1,5 M], добавлен 14.06.2012Цель создания информационной системы. Автоматизированная информационная система "Строительное предприятие". Использование вычислительной техники и программного обеспечения для создания автоматизированной информационной системы управления на предприятии.
курсовая работа [2,5 M], добавлен 04.01.2011Анализ виртуального пространства и реальности. Особенности информационной культуры субъектов виртуального пространства. Телевидение, кабинные симуляторы, системы "расширенной" реальности и телеприсутствия. Настольные ВР-системы, социальные сети.
презентация [6,0 M], добавлен 15.11.2017Применение вычислительной техники и локальных сетей для автоматизации документооборота, создания массивов информации. Структура информационной системы предприятия и средства управления. Формирование топологии сети и расчет ее экономической эффективности.
курсовая работа [72,7 K], добавлен 16.11.2009Анализ предметной области. Разработка генетического алгоритма для оптимизации инвестиций. Спецификация требований и прецедентов. Проектирование пользовательского интерфейса информационной системы. Модели данных, используемые в системе и их взаимодействие.
дипломная работа [2,1 M], добавлен 24.08.2017Основные определения, необходимые для разработки алгоритма распределения программных модулей по вычислительным модулям вычислительной сети. Распределение операторов вычислительной системы с распределенной памятью для информационно-логической граф-схемы.
курсовая работа [2,1 M], добавлен 08.01.2016Функционирование систем массового обслуживания с разными типами заявок. Построение математической модели, постановка задачи оптимизации среднего времени ожидания. Решение задачи оптимизации системы. Разработка программного кода для оптимизации системы.
дипломная работа [581,7 K], добавлен 27.10.2017Логическая и физическая схема действующей компьютерной сети. Проблемы, решение которых актуально для предприятия. Базы данных задач и работ бизнес-процессов. Структура информационной системы. Проектирование подсистемы "Управление основным производством".
курсовая работа [4,8 M], добавлен 17.12.2011Создание виртуального бизнес-центра в виде портала "Proffis". Реализация потребности вести единые списки объектов бизнеса у множества компаний. Проектирование архитектуры подсистемы WebList. Типы пользователей системы: администратор, лидеры и операторы.
дипломная работа [2,0 M], добавлен 23.03.2012Проектирование программы для предприятия ООО "Чудо свечи" в среде программирования Borland Delphi. Произведение расчета системы методом аддитивной оптимизации. Требования к функциям, выполняемым системой, к программному и аппаратному обеспечению.
курсовая работа [2,8 M], добавлен 27.02.2015Установка структурированной кабельной системы в одноэтажном офисном здании. Расчет количества информационных розеток. Администрирование компьютерной сети и выбор топологии. Основные задачи оптимизации локальных сетей. Проектирование аппаратной станции.
курсовая работа [950,8 K], добавлен 25.03.2015Проектирование информационной системы предприятия "Ниссан-Авто" с помощью табличного процессора Excel. Условия для выполнения расчетной части. Макросы, используемые в программе. Создание проекта по разделам: база данных, сводная таблица, график.
контрольная работа [3,6 M], добавлен 16.01.2011Разработка конфигурации службы. Исследование вычислительной эффективности алгоритма оптимизации. Программная реализация клиент-серверного приложения. Алгоритм решения непрерывной задачи загрузки рюкзака. Подключение веб-сервиса к клиентскому приложению.
курсовая работа [1,4 M], добавлен 21.01.2017Понятие электронных курсов. Описание программных и языковых средств разработки. Технология создания компьютерной обучающей системы, пакета вопросов в редакторе Excel. Разработка интерфейса ЭС. Организация диалога пользователя с экспертной системой.
дипломная работа [10,8 M], добавлен 20.06.2014Теоретические основы метода оптимизации. Разработка компьютерной системы для решения задач многомерной безусловной оптимизации методом Хука-Дживса с минимизацией по направлению. Описание структуры программы и результаты ее отладки на контрольных примерах.
курсовая работа [595,4 K], добавлен 13.01.2014Развитие информационного бизнеса, электронной коммерции на основе Интернет. Описание предметной области, процессов и типичного хода событий при создании информационной системы виртуального предприятия. Калькуляция разработки электронной торговли.
курсовая работа [872,8 K], добавлен 22.05.2015Понятие алгоритма, его свойства и способы описания. Схемы алгоритмических конструкций: линейная, разветвляющаяся, циклическая. Особенности и применение электронных таблиц Excel. Задачи, решаемые с помощью системы Mathcad. История создания языка Pascal.
курсовая работа [601,9 K], добавлен 20.11.2010Анализ современного рынка программных продуктов. Понятие виртуального тура и возможности его применения. Изучение программного обеспечения и технологии создания виртуальных туров. Панорамный снимок и виртуальная брошюра. Настройка параметров панорамы.
курсовая работа [3,5 M], добавлен 22.03.2016Проектирование информационной системы "Учёт работы поликлиники": анализ программных продуктов, описание диаграмм бизнес–процесса, описание IDEF0, DFD, IDEF3 диаграмм потоков данных и документирования процессов посредством AllFusion Process Modeler r7.3.
курсовая работа [2,5 M], добавлен 20.08.2012