Диссертация (1148255), страница 2
Текст из файла (страница 2)
В операционных системах в этом качестве обычно предлагаются лишь функции обмена сообщениями (адресного, многоадресного или широковещательного) [9],остальной же функционал необходимо создавать прикладному программистусамостоятельно. Это вызывает определенные сложности, так как параллельное программирование, в особенности программирование многопроцессорныхпараллельных систем, требует специальных знаний (имеющихся лишь у немногих программистов [9, с. 590]), порождая отдельное направление в программировании со своими образовательными программами, исследованиями и литературой.Основная трудность в создании подобных механизмов обусловлена описанными выше свойствами агентов, которые позволяют сделать вывод о существовании неотделимой от понятия «агент» задачи гарантирования согласованностиили когерентности (англ.
coherence) знаний в системе. Задача вызвана, с однойстороны, высокой вероятностью расхождения информации у разных агентов, ас другой, необходимостью их координации и, то есть, синхронизации этой информации. Говоря иначе, обмен информацией в МАС должен осуществлятьсятаким образом, чтобы можно было гарантировать непротиворечивость (консистентность, от англ. consistency) информации в разных узлах системы (в противном случае система вела бы себя рассогласованно, нескоординированно, чтопротиворечит самому понятию «система»).Задача может быть решена на прикладном уровне и с помощью классических примитивов рассылки сообщений, однако многими авторами было показано, что подобные решения оказываются крайне сложными, что отрицательно сказывается на их стоимости и надежности.
Чтобы упростить прикладнымразработчикам решение данной задачи, была предложена [32] новая модель –распределённой общей памяти (англ. distributed shared memory – DSM). Мо8дель оказалась настолько удачной, что вызвала волну исследований в даннойобласти. В последующие годы было создано множество моделей консистентности [15, 20, 25, 29–31, 34, 35], балансирующих между производительностью ипредсказуемостью. Параллельно разрабатывались алгоритмы (обзор известныхпринципиальных решений выполнен в работах [44, 45]), и создавались конечныесистемы [12–15, 22–24, 26–28, 32, 39, 47, 50, 53].Если на заре развития концепции DSM основное внимание исследователейбыло уделено моделям консистентности и попыткам их усовершенствования дляобеспечения приемлемой производительности, то затем акцент сместился к алгоритмам, эффективно реализующим ту или иную модель. DSM-системы тоговремени зачастую были экспериментальными и создавались для проверки тойили иной гипотезы.
В последние годы прослеживается тенденция разработкиDSM-систем, предназначенных для решения вполне определённых задач в конкретной области (к примеру, Zeng и др. в работе 2017 года [39] описывают DSMсистему, предназначенную для осуществления коммуникации между виртуальными машинами).Концепция DSM применима к любым видам МАС или распределённыхсистем. Однако сфера устройств Интернета вещей (англ. Internet of Things –IoT) – одна из наиболее бурно развивающихся, стимулирующая массовый интерес к распределённым системам – остаётся данной концепцией не охвачена.
Помнению автора, данная ситуация сложилась по следующим причинам.– прежние DSM системы разрабатывались зачастую на экзотических языках и под неиспользуемые сейчас ОС;– в области IoT часто используются маломощные, но энергоэффективныемикропроцессоры, на которых не могут исполняться такие ОС как Linuxбез катастрофической потери производительности, а зачастую не могути принципиально, в связи с аппаратными ограничениями – например, отсутствием в микропроцессоре блока управления памятью (англ. memory9management unit – MMU);– специализированные ОС для подобных микропроцессоров существуют, нобольшинство из них являются проприетарными1 ;– открытые ОС, которые могут работать на подобных микропроцессорах,построены с использованием морально устаревших концепций, что снижает перспективность создания новых механизмов под такие ОС;– наконец, имеет место сочетание двух факторов – бурный рост интереса краспределённым системам – тенденция всего лишь последних несколькихлет, а концепция DSM хотя и существует достаточно давно, но долгоевремя оставалась неизвестна широкому кругу разработчиков в связи смалой распространённостью распределённых решений.Наконец, необходимо отметить ещё одну особенность DSM.
Параллельныевычисления, устойчивость к сбоям отдельных узлов, поддержка динамическихсетей, горячее резервирование оборудования и прочее – это механизмы, традиционно считающиеся крайне сложными и дорогими в реализации. В связис этим разработка подобных механизмов оказывается обоснована только длясистем с повышенными требованиями к производительности и надёжности (например, крупные промышленные, медицинские или военные решения). DSMпредоставляет возможность существенно упростить решение подобных задач засчет перехода на более высокий уровень абстракции, не требуя от разработчика«ручного» управления отдельными сообщениями, курсирующими в системе.Таким образом, в настоящий момент технология DSM оказывается востребованной в бурно развивающейся области МАС для IoT, позволяя существенноупростить создание конечных распределённых решений, привнести в них сложный функционал «больших систем», сократив при этом время на разработку.1Проприетарный (англ.
proprietary) – частный, несвободный. Здесь имеется в виду коммерческое, несвободное программное обеспечение.10Степень разработанности темы исследования. Масштабные работыв области теории МАС были проведены в разные годы В. Б. Тарасовым, Y.Shoham, G. Weiss, M. Wooldridge и др. Многопроцессорные вычислительныесистемы исследовались, в частности, А. М. Андреевым, Г. П. Можаровым, В.В. Сюзевым.Родоначальником DSM систем принято считать K.
Li, защитившего диссертацию на данную тему в 1986 году. В дальнейшем множество ученых исследовали существующие и предлагали новые модели консистентности, балансируя между производительностью и предсказуемостью. Наиболее существенные результаты были получены такими учеными как N. Bershad, M. Dubois, K.Gharachorloo, J. R. Goodman, P. W. Hutto, P. Keleher, L. Lamport, R. J. Lipton идр. Разработкой и анализом алгоритмов занимались A. Forin, R. E. Kessler, O.Krieger, M. Livny, M.
Stumm, S. Zhou и др. Конечные DSM системы создавалиH. E. Bal, J. K. Bennett, B. N. Bershad, B. Fleisch, D. Gelernter, E. Jul, P. J.Keleher, K. Li, M. Stumm, L. Zeng, S. Zhou и др.В последние годы направление исследований смещается от разработкипринципиально новых моделей консистентности и универсальных алгоритмовк созданию узко-специализированных DSM-систем, наиболее полно учитывающих особенности той или иной предметной области (к примеру, можно обратиться к статьям L. Zeng 2017 года). Однако сфера IoT при высоком уровневостребованности оказалась до сих пор исследователями не охвачена.Объект и предмет исследования. В данной работе в качестве объектаисследования выступают модели, методы, алгоритмы, языки и программныеинструменты для организации процесса обмена «знаниями» в мультиагентныхсистемах.
Предметом исследования является мультиагентная координация посредством механизма распределённой общей памяти в условиях беспроводнойсвязи в анизотропном радиоэфире.Цели и задачи диссертационной работы. С учетом проведенного анализа, целью данной работы является разработка моделей, алгоритмов и про11граммных средств, реализующих концепцию распределённой общей памяти длямультиагентных систем в IoT и позволяющих существенно упростить и ускорить создание прикладных решений в данной области. В соответствии с поставленной целью в работе решаются задачи по разработке (созданию) следующихкомпонент.1. Модели консистентности данных в распределённой системе, отвечающейтребованиям и особенностям мультиагентных систем в области IoT.2.
Алгоритма организации узлов мультиагентной системы в само-восстанавливающуюся структуру, устойчивую к выходу из строя отдельных узлов.3. Программного интерфейса для прикладного взаимодействия с разрабатываемым механизмом реализации концепции распределённой памяти.4. Алгоритмического и программного обеспечения, реализующего концепцию распределённой общей памяти для мультиагентных систем в сфереIoT.5.
Экспериментального программно-аппаратного стенда (включая сбор характеристик разработанного программного решения).Научная новизна данного диссертационного исследования заключаетсяв следующем.1. Усиленная модель консистентности по выходу (англ. enhanced releaseconsistency) дополняет возможности известной ранее модели по выходуотдельными свойствами модели по входу. Данное сочетание свойств предложено впервые и позволяет добиться лучших характеристик в заданнойпредметной области, чем любая из исходных моделей.2.