где m – масса МР, q – угол наклона участка поверхности в направлении движения, Kf– коэффициент трения между колесами и поверхностью.
Следует отметить также направление, связанное с достаточно сложным по своей структуре заданием потенциальной функции, которая не имеет локальных минимумов [4, 5]. Однако при этом задание подобной потенциальной функции может оказаться очень сложным.
Распределенные системы, в том числе робототехнические, в последнее время привлекают все большее внимание исследователей. Одна из причин этого состоит в том, что системы такого класса все чаще используются как для промышленных, так и непромышленных приложений: действительно, объединение параллельно функционирующих подсистем позволяет выполнять такие задания, которые не под силу каждой из компонент сложной системы. На рис. 3.1 приведен пример такой многокомпонентной системы, включающей мобильные роботы разного назначения: погрузчики, исследователи и т.д. С другой стороны, управление системами такого класса представляет собой нетривиальную задачу: если управление каждой из подсистем, составляющих сложную систему, задача, вообще говоря, решенная (например, перевод манипулятора из точки в точку по заданной траектории), то управление согласованным поведением группы роботов, объединенных общей целью, является сложной проблемой. Заметим, что задача управления существенно усложняется, если часть подсистем преследует конфликтующие цели.
Рис. 3.1 – Многокомпонентная робототехническая система
В статье предлагается подход к решению задачи координации взаимодействия подсистем, составляющих сложную систему, базирующийся на описании всех подсистем как конечных автоматов и использующий сеть специальным образом построенных автоматов для координации работы подсистем в процессе выполнения предварительно сформированного задания. Кроме того, предложены способы планирования поведения сложной системы, использующие методы искусственного интеллекта.
Многокомпонентная система это система, включающая в свой состав множество подсистем, объединенных общим заданием.
Можно дать ее более точное определение.
Пусть задание T может быть представлено как множество подзаданий ti:
T = {t1, t2,…, tm} (3.1)
Введем отношение следования F на T, так что tiFtj означает, что задание ti может быть выполнено только, если выполнено tj. Если такая структуризация задания T проведена, тогда можно построить описывающий T ориентированный граф:
G = (T, A), (3.2)
где T = {ti} – множество вершин графа G, A = {ai} Î T ´ T – множество направленных дуг, при этом дуга a Î A соединяет ti с tj тогда и только тогда, когда tiFtj.
Пусть система S состоит из подсистем si (далее называемых локальными системами или терминалами):
S = {s1, s2,…, sN}, (3.3)
при этом Ti Ì T – задание, выполняемое системой si.
Тогда систему:
CS = (S, T), (3.4)
будем называть T‑сложной системой (далее – сложной системой), если выполнены следующие условия:
(3.5)Условия C1, C2 можно интерпретировать следующим образом:
C1: Сложная система представляет собой набор подсистем, которые в состоянии выполнить задание T.
С2: Действия всех подсистем, входящих в состав сложной системы, должны координироваться в процессе выполнения задания. Под координацией здесь мы понимаем обмен данными (или командами) между подсистемами.
Если одна из подсистем si Î S является роботом, то такую сложную систему будем называть многокомпонентной робототехнической системой (МРС).
Обсудим сначала следующий вопрос: «Что мы понимаем под управлением МРС?» В действительности, каждая из подсистем Si, входящая в состав МРС, обладает собственной системой управления, способной обеспечить выполнение всех функций, свойственных этой подсистеме. Однако, возникающая для рассматриваемого класса систем необходимость взаимодействовать в процессе исполнения задания, ставит задачу формирования для подсистемы именно того задания, выполнение которого диктуется сложившейся обстановкой. Таким образом, задача управления распределенными системами состоит в планировании действий подсистем до начала исполнения и последующей координации в процессе исполнения.
Организация процедуры планирования и координации является чрезвычайно важной: она оказывает существенное влияние на используемые методы управления.
Этот метод организации предполагает наличие центральной системы управления, которая планирует действия всех подсистем и затем координирует их взаимодействие в процессе исполнения (рис. 3.2) в соответствии с предварительно разработанным планом. Центральная система управления (ЦСУ) передает подсистеме задание, исполнение которого не требует какой-либо координации между подсистемами. Результат исполнения возвращается в ЦСУ. В зависимости от присланного результата ЦСУ посылает подсистеме следующее задание, и далее процесс повторяется. Заметим, что физически ЦСУ может быть реализована либо как отдельное устройство, либо на базе системы управления одной из компонент МРС.
При таком способе организации управления отсутствует центральная система, и процессы планирования заданий и координация в процессе исполнения реализуются путем обмена сообщениями между подсистемами (рис. 3.3). На этапе планирования осуществляется переговорный процесс, результатом которого является согласованный план исполнения задания. Реализация этого плана происходит на этапе исполнения и состоит в выполнении подзаданий и обмене результатами их исполнения. Строго говоря, при такой организации нельзя говорить об управлении распределенной системой, поскольку, в отличие от централизованной организации, отсутствует явно выраженный носитель управления, обеспечивающий требуемое поведение системы: все подсистемы являются равноправными как на этапе планирования, так на этапе исполнения.
Таким образом, централизованное управление реализует иерархический способ организации системы, состоящий в частности в том, что управление является многоуровневым с явным подчинением нижних уровней (локальных систем управления) верхним (центральной системе управления). Все обмены сообщениями между подсистемами происходит не напрямую, а через верхний уровень. Распределенное управление реализует гетерархический способ организации, когда все компоненты системы равноправны и процесс планирования осуществляется параллельно всеми подсистемами.
Архитектура каждой компоненты МРС обусловлена тем набором функций, которые она должна выполнять, а именно:
F1 – иметь возможность обмениваться данными либо с центральной системой управления (для централизованного способа управления), либо с локальными подсистемами (для распределенного способа).
F2 – обеспечивать процесс принятия решения или планирования (для децентрализованного управления).
F3 – обеспечить координацию с другими подсистемами на этапе исполнения спланированного задания,
F4 – исполнять соответствующие подзадания, сформированные на этапе планирования.
Функция F1 является, вообще говоря, чисто технической и ее реализация состоит в поддержке соответствующих сетевых протоколов. Обеспечение функции F2 состоит в требовании иметь в составе подсистемы базу знаний для принятия решений. Функция F3 требует наличия механизма, приводящего в действие исполнение системой соответствующих подзаданий по сигналам, поступающим от других подсистем. При этом эти сигналы не должны требовать перепланирования задания в целом (например, неуспех при выполнении подзадания одной из подсистем). Выполнение функции F4 обеспечивается нижним уровнем локальной системы управления и аппаратными средствами подсистем.
Заметим, что если локальная система является сложной в смысле введенного в п. 2 определения, то процесс исполнения подзадания также может включать в себя этапы планирования и координации исполнения. Например, для мобильного робота, включающего в свой состав шасси, манипулятор и систему технического зрения, подзадание в форме «переместить объект А в позицию В» может быть распланировано следующим образом: t1 – манипулятор, убрать; t2 – TV, найти А; t3 – манипулятор, сменить схват; t4 – манипулятор, взять А; t5 – манипулятор, положить в В; с соответствующей координацией между подсистемами «манипулятор» и «TV» в процессе исполнения.
Таким образом, подсистема должна включать по крайней мере следующие 4 функционально различные компоненты (рис. 3.4):
- коммуникатор (F1);
- планировщик (F2);
- координатор (F3);
- исполнитель (F4).
Воспользуемся подходом, состоящим в представлении этого уровня системы управления как сети специальным образом построенных конечных автоматов.