Document Type : Research Article
Authors
Electrical Engineering Department, Faculty of Engineering and Technology, Imam Khomeini International University, Qazvin, Iran
Abstract
Keywords
1- مقدمه[1]
سیستمهای چندعاملی، با توجه به کاربردهای گسترده و قابلیتهای بیشتر نسبت به سایر سیستمها در سالهای اخیر بسیار شایان توجه محققان قرار گرفتهاند. این سیستمها از تعدادی عامل تشکیل شدهاند که برای رسیدن به هدفی مشخص با یکدیگر تبادل اطلاعات میکنند [1]. برای کنترل سیستمهای چندعاملی، روشهای زیادی وجود دارد و این روشها متناسب با هدف مدنظر انتخاب میشوند [2]. یکی از این روشها، کنترل اجماع است. هدف از این روش، تبعیت عاملهای پیرو از عامل پیشرو است [3]. کنترلکنندههای اجماع به دو دسته تقسیم میشوند؛ کنترلکنندة اجماع میانگین و کنترلکنندة اجماع پیرو - پیشرو. در کنترلکنندة اجماع میانگین، تمامی عاملهای پیرو به میانگین شرایط اولیه خود همگرا میشوند [4]؛ اما در کنترلکنندة اجماع پیرو - پیشرو، تمامی عاملهای پیرو سعی در تبعیت از رفتار عامل پیشرو دارند [5].
با توجه به عملکرد بهتر کنترلکنندههای اجماع پیرو – پیشرو، این روش در مقالة حاضر استفاده شده است. شرط لازم و کافی برای انجام اجماع سیستم چندعاملی این است که حداقل یک درخت پوشا در گراف مربوط به سیستم چندعاملی مدنظر موجود باشد. برای طراحی این کنترلکننده باید خطای اجماع را نوشت و سپس سعی شود این خطا بهصورت پایدار به صفر میل کند [6]. برای صفرکردن خطای اجماع، روشهای زیادی وجود دارد؛ این خطا را میتوان نوشت و با روش مستقیم، ورودی کنترلی را به نحوی طراحی کرد که خطای اجماع به صفر میل کند. در [7] مسئلة ردیابی اجماع مقاوم برای یک سیستم چندعاملی بررسی شده است. در این مسئله، عاملها دارای دینامیک مدلنشده و اغتشاشاند. عاملهای مرتبه دوم در [8]، عاملهای از نوع انتگرالگیر در [9] و عاملهای مرتبه بالا در [10] بررسی شدهاند. در [11] آنالیز اجماع مقاوم برای عاملهایی بررسی شده است که نامعینی پارامتری و اغتشاش دارند. در [12] اجماع مقاوم توزیعشده برای عاملهایی با دینامیک دو انتگرالگیر نامعین بررسی شده است. در [13] و [14] اجماع مقاوم برای نامعینی پارامتری و اغتشاش به همراه تأخیر در عاملها بررسی شده است. در [15]، اجماع مقاوم برای عاملهای تأخیردار به همراه نویز و در [16] اجماع مقاوم برای سیستمهای دینامیکی چندعاملی با نامعینی بررسی شده است. در [17] اجماع مقاوم برای سیستمهای دینامیکی چندعاملی دارای تأخیر و اغتشاش بررسی شده است. در [18] یک الگوریتم تکراری برای اجماع سیستمهای چندعاملی خاصی با تأخیر در پارامترهای مدل ارائه شده است. این کنترلکننده برای سیستمهای مرتبه دوم صادق است. در [19] نیز یک کنترلکنندة اجماع برای سیستمهای چندعاملی مرتبه دوم همراه با تأخیر و نویز اندازهگیری، ارائه شده است. در [20] مسئله دنبالروی برای سیستمهای چندعاملی مرتبه دوم با دینامیک نامعین با کنترلکنندة تطبیقی انجام شده است. در [21] مسئله اجماع برای سیستمهای چندعاملی مرتبه اول و دوم با دینامیک نامعین و اغتشاش ورودی با کنترلکنندة تطبیقی فازی بررسی شده است؛ حال آنکه کنترلکنندة ارائهشده در این مقاله محدودیت مرتبه ندارد. معمولاً مقالاتی که بهتازگی روی سیستمهای چندعاملی مطالعه کردهاند، نامعینی را در ورودی و همچنین تأخیر را در ارتباط بین عاملها و تبادل اطلاعات در نظر گرفتهاند. در این مقاله نامعینی در ماتریس ضرایب موجود در دینامیک عاملها و تأخیر در دینامیک عاملها است. همچنین با توجه به اینکه سیستمهای چندعاملی، سیستمهایی با ابعاد وسیعاند، در این سیستمها نیز میتوان از کاهش مرتبه استفاده کرد [22]که زمینهای مناسب برای توسعة روش ارائهشده است.
بهصورت مشخص سیستم مدنظر در این مقاله نوآوریهای زیر را دارد: 1- محدودیتی در مرتبة سیستم ندارد و برای سیستمهای مرتبه بالاتر از دو نیز میتوان از این کنترلکننده استفاده کرد. 2- تأخیر در دینامیک عاملها در نظر گرفته شده است و باید مقدار این تأخیر معلوم باشد. 3- ماتریس ضرایب متغیرهای حالت، نامعینی دارند. 4- ماتریس ضرایب تأخیریافتة متغیرهای حالت، نامعینی دارند. سیستم مدنظر چهار نوآوری بیانشده بهصورت همزمان دارد. تاکنون هیچ مقالهای این 4 مورد را بهصورت همزمان در نظر نگرفته است.
در این مقاله، ابتدا با استفاده از کنترلکنندة خطیساز فیدبک، کنترلکننده برای عامل پیشرو طراحی میشود تا این عامل به سمت مسیر دلخواه ما بهصورت پایدار میل کند. سپس با استفاده از ضرب کرونکر دینامیک عاملهای پیرو و پیشرو را بهصورت کلی بیان میکند و از فرمولهای بهدستآمده برای بیان دینامیک خطای اجماع استفاده میکند. با توجه به اینکه در دینامیک خطای اجماع، نامعینی وجود دارد، از کنترلکنندة مقاوم برای حذف این نامعینیها استفاده شده است. درنهایت با استفاده از نامعادلات ماتریسی خطی، فرم کلی مسئلة برای این مسئله بیان میشود. در قسمت آخر نتایج بهدستآمده روی یک سیستم، شبیهسازی و درستی این کنترل کننده بررسی میشود.
2- بیان مسئله
یک سیستم چندعاملی با یک عامل پیشرو و عامل پیرو را در نـظر بگـیـرید. هـر عـامـل، متغـیـر حالـت دارد. عــامـلهای پیــرو بـا فــرض بــهصــورت و عامل پیشرو بهصورت نشان داده میشوند. با در نظر گرفتن مقدار تأخیر با دینامیک عاملهای پیرو بهصورت زیر نشان داده میشوند:
(1) |
|
در این رابطه متغیر حالت عامل پیرو ام است و و ماتریسهای نامعین در ضرایب متغیرهای حالت عامل پیرو ام هستند. همچنین، مقدار تأخیر در دینامیک عاملهای پیرو را نشان میدهد و ، و ماتریسهایی با المانهای ثابتاند.
با در نظر گرفتن بهعنوان شرط اولیه عامل پیرو ام در بازة زمانی میتوان نوشت:
(2) |
|
با استفاده از ضرب کرونکر و با فرض
، ، و
دینامیک کلی عاملهای پیرو بهصورت زیر درمیآید:
و دینامیک عامل پیشرو عبارت است از:
(3) |
|
و دینامیک عامل پیشرو عبارت است از:
(4) |
|
که در آن با در نظر گرفتن بهعنوان شرایط اولیه عامل پیشرو در بازة زمانی ، داریم:
(5) |
|
با استفاده از ضرب کرونکر و با فرض و دینامیک کلی عامل پیشرو بهصورت زیر است:
(6) |
|
و هدف، اجماع عاملها است. در این مقاله تنها یک عامل پیشرو وجود دارد؛ اما باید ابعاد ماتریس حالت و ماتریس حالت برابر باشند. بنابراین، متناظر با هر عامل در ماتریس ، قرار میدهیم تا ابعاد آنها برابر شود. سپس برای بیان خطای اجماع با استفاده از ضرب کرونکر، دینامیک کلی عامل پیشرو را بهصورت (6) در نظر میگیریم. در اجماع تمامی متغیرهای حالت عاملهای پیرو و پیشرو به همدیگر میرسند. برای رسیدن به این هدف، خطای اجماع تعریف میشود. زمانی که این خطا به صفر میل کند، تمامی متغیرهای حالت به هم میرسند. خطای اجماع برای عامل ام بهصورت زیر تعریف میشود:
(7) |
|
در فرمول (7)، وزن میان عامل ام و ام است و وزن میان عامل ام و پیشرو است. خطای کلی اجماع با فرض بهصورت زیر درمیآید:
(8) |
|
در این رابطه ماتریس لاپلاسین گراف مربوط به سیستم چندعاملی، با و ماتریس مجاورت عاملهای پیرو و عامل پیشرو با نشان داده میشوند. با این تعاریف، دینامیک کلی خطای اجماع به دست میآید:
(9) |
|
با استفاده از روابط (3)، (6) و (9)، داریم:
(10) |
|
خروجی برای دینامیک خطا بهصورت زیر در نظر گرفته میشود:
(11) |
|
3- طراحی کنترلکنندة خطیساز فیدبک برای عامل پیشرو
در (4) خطیساز فیدبک را میتوان بهصورت زیر طراحی کرد:
(12) |
|
در (12)، معکوس چپ ماتریس و مسیر مطلوب برای عامل پیشرو است. انتخاب ماتریس به عهدة طراح است و برای پایدارسازی و دنبالروی عامل پیشرو به کار میرود. با جایگذاری (12) در (4)، داریم:
(13) |
|
حال باید مقادیر ویژة ماتریس منفی باشد تا عامل پیشرو مسیر را دنبال کند. با توجه به توضیحات ارائهشده در بخش پیوست، در این حالت متغیر حالتهای عامل پیشرو روی مسیر قرار میگیرند. حال با توجه به اینکه ماتریس ثابتی است، نیز ثابت است. در انتها نتیجة کانولوشن با نیز بهصورت ضریب ثابتی از به دست میآید.
4- طراحی کنترلکنندة اجماع پیرو - پیشرو مقاوم
برای طراحی کنترلکنندة اجماع، با توجه به اینکه در دینامیک خطای اجماع (10) نامعینی وجود دارد، باید از کنترلکنندة مقاوم استفاده شود.
با تعریف کردن
، و
سیستم خطای اجماع (10) بهصورت زیر درمیآید:
(14) |
|
ساختار نامعینی نیز با توجه به تعاریف قبلی بهصورت زیر به دست میآید:
(15) |
|
فرض میکنیم ورودی کنترلی بهصورت زیر باشد، قسمت اول این ورودی فیدبک حالت و قسمت دوم آن برای حذف اثرات عامل پیشرو است:
(16) |
|
در این رابطه ماتریس بهرة فیدبک حالت است. ماتریس لاپلاسین، ماتریس مجاورت عاملهای پیرو با عامل پیشرو و خطای اجماعاند. با توجه به روابط (12) و (16)، برای طراحی کنترلکننده باید مقدار دقیق تأخیر مشخص باشد و همچنین فرض شده است کلیه عوامل از لاپلاسین گروه آگاهاند.
4-1-قضیه
یک سیستم چندعاملی با یک عامل پیشرو و عامل پیرو در نظر بگیرید که در آن دینامیک عامل پیشرو بهصورت (4) با شرایط اولیه (5) و دینامیک عاملهای پیرو بهصورت (1) با شرایط اولیه (2) است. در این صورت با استفاده از کنترلکنندههای (12) و (16) و با فرض زیر برای نامعینیها:
(17) |
|
عامل پیشرو مسیر را دنبال میکند و با نامعینیهای موجود در دینامیک عاملهای پیرو و همچنین تأخیر در دینامیک این عاملها، اجماع پیرو - پیشرو انجام میگیرد. مقدار حداقل برای پارامتر با حل یک مسئلة بهینهسازی LMI بهصورت زیر به دست میآید:
(18) |
|
|
که در آن، و ماتریسهای متقارن بوده و همچنین:
در ماتریس بالا و ، وهستند.
4-2-اثبات قضیه
با اعمال ورودیهای کنترلی (12) و (16) به دینامیک خطا (14)، داریم:
(19) |
|
با فرض:
و سیستم بهصورت زیر است:
(20) |
|
همچنین، طبق قضیة بهره کوچک و با تعریف و ، داریم:
(21) |
|
حال تابع لیاپانوف را با فرض متقارن بهصورت زیر در نظر میگیریم:
(22) |
|
فرض میکنیم تابع لیاپانوف در رابطة زیر صدق میکند:
(23) |
|
با جایگذاری و در (23)، داریم:
(24) |
|
با جایگذاری در (24)، داریم:
(25) |
|
در نهایت، (24) را میتوان بهصورت زیر بیان کرد:
(26) |
|
برای اینکه شرط (26) محقق شود، باید داشته باشیم:
(27) |
|
با ضرب طرفین نامساوی بالا در
و با تعریفکردن ماتریس متقارن ، داریم:
(28) |
|
با فرض و با استفاده از متمم شور، داریم:
(29) |
|
با سادهسازی (29)، داریم:
(30) |
|
برای حل این نامساوی باید ترمهای درجه دوم با ترمهای درجه اول جایگزین شود. برای اینکار ترمهای درجه دوم را بیرون میکشیم:
(31) |
|
برای معادلة (31) دوباره از متمم شور استفاده میشود:
(32) |
|
و برای سادهسازی با فرض ، و ، داریم:
(33) |
|
بنابراین، مسئلة بهینهسازی LMI بهصورت (18) تعریف میشود. از حل این مسئلة بهینهسازی، بهرة فیدبک حالت بهینه بهصورت زیر محاسبه میشود:
(34) |
|
|
باید توجه داشت ماتریس ضرایب موجود در دینامیک عاملهای پیرو، نامعینی دارند و محدودة این نامعینی از قبل نامشخص است؛ بنابراین، در طراحی مطابق (17) فرض میکنیم حد بالای نامعینیها، مقادیر آلفا و بتا دارند و در حقیقت با حل مسئلة بهینهسازی (18) به دنبال یافتن مقادیری برای این حدود بالا هستیم. بدیهی است پس از طراحی یک مقدار حداقل برای گاما، شبیهسازیها برای مقادیر ثابتی از آلفا و بتا انجام میشود که براساس رابطة (17) از مقدار بهدستآمده برای گاما کمترند.
5- شبیهسازی
از مرجع [23] سیستم تأخیردار زیر را در نظر میگیریم:
(35) |
|
|
شرایط اولیه نیز بهصورت زیر داده شده است:
(36) |
|
|
حال پارامترهای دینامیک عاملهای پیرو که در (1) و (2) داده شده است را بهصورت زیر در نظر میگیریم:
(37) |
|
|
نامعینیهای رابطة (17) بهصورت زیر در نظر گرفته میشوند:
(38) |
|
با مقادیر ویژة برای ماتریس ، ابتدا برای عامل پیشرو با استفاده از کنترلکنندة خطیساز فیدبک در (12) ورودی کنترلی عامل پیشرو بهصورت زیر تعیین میشود:
(39) |
|
|
در (39) مسیر مطلوب بهصورت و گراف متناظر با سیستم چندعاملی بهصورت شکل (1) در نظر گرفته شد. این گراف، سه عامل پیرو و یک عامل پیشرو دارد که مطابق شکل با یکدیگر در ارتباط هستند:
شکل (1): گراف سیستم چندعاملی
از شکل (1)، ماتریس لاپلاسین و ماتریس مجاورت گراف را مطابق رابطة زیر میتوان تشکیل داد:
(40) |
|
|
ورودی کنترلی برای عامل iام بهصورت زیر به دست آمده است:
(41) |
|
|
در رابطة (41)، نشاندهندة خطای اجماع متغیر حالت ام از عامل ام است. حال نتایج حاصل از اعمال این ورودیها به سیستم چندعاملی بهصورت زیر نشان داده میشوند. با توجه به شکل (2)، (3) و (4) متغیرهای حالت عاملهای پیرو در زمان محدود و در ثانیة نهم به متغیر حالت عامل پیشرو میرسند و این کنترلکننده توانایی حذف نامعینیهای موجود در سیستم را دارد.
شکل (2): متغیرهای حالت اول از عاملهای پیرو و عامل پیشرو
شکل (3): متغیرهای حالت دوم از عاملهای پیرو و عامل پیشرو
شکل (4): متغیرهای حالت سوم از عاملهای پیرو و عامل پیشرو
در ادامه خطای اجماع برای عاملهای پیرو نشان داده شده است. در شکل (5)، (6) و (7) دیده میشود در زمان 9 ثانیه خطا به صفر رسیده است و اجماع عاملها انجام میشود. این نتیجه با شکلهای (2)، (3) و (4) نیز مطابقت دارد.
شکل (5): خطای اجماع متغیرهای حالت اول از عاملهای پیرو
شکل (6): خطای اجماع متغیرهای حالت دوم از عاملهای پیرو
شکل (7): خطای اجماع متغیرهای حالت سوم از عاملهای پیرو
همچنین ورودی کنترلی این سه عامل پیرو در شکل زیر نشان داده شده است.
شکل (8): ورودیهای کنترلی عاملهای پیرو
همانطور که از شکل (8) مشخص است، این ورودیها محدود و اعمالپذیرند.
6-نتیجهگیری
در این مقاله، یک سیستم چندعاملی با یک عامل پیشرو و عامل پیرو بررسی شده است. با استفاده از کنترلکنندة خطیساز فیدبک، رفتار عامل پیشرو به سمت مسیر مطلوب هدایت شد. در ضرایب ماتریس حالتها، ضرایب ماتریس تأخیریافته حالتهای عاملهای پیرو، ضرایب ماتریس خطای اجماع و همچنین ضرایب ماتریس تأخیریافته خطای اجماع، نامعینی در نظر گرفته شد و برای حذف این نامعینیها یک کنترلکنندة مقاوم طراحی شد. برای این منظور با استفاده از نامعادلات ماتریسی خطی، جواب مسئله به فرم تحلیل شد. درنهایت، نتایج بهدستآمده روی یک سیستم چندعاملی با دینامیک دادهشده با سه عامل پیرو و یک عامل پیشرو پیادهسازی شدند. نتایج شبیهسازی، کارایی و پایداری این کنترلکننده را نشان میدهند.
7-پیوست
لم شور: فرض کنید توابع ماتریسی ، و وجود داشته باشند. در این صورت هر سه عبارت زیر معادل هم هستند.
(42) |
|
|
(43) |
|
|
(44) |
|
|
تعاریف پایهای گراف: سیستم چندعاملی را با یک گراف مدل میکنند. ماتریس مجاورت گراف با توجه به گراف سیستم چندعاملی، تشکیل و با نامگذاری میشود. این ماتریس نحوة ارتباط بین عاملها را بیان میکند. ماتریس ، یک ماتریس قطری است که عناصر روی قطر اصلی آن، مجموع عناصر سطری ماتریس مجاورت گراف است. ماتریس لاپلاسین گراف، بهصورت تعریف میشود. شرط لازم برای اجماع وجود حداقل یک درخت پوشا در گراف متناظر با سیستم چندعاملی است. نخستین مقدار ویژة ماتریس همیشه صفر است؛ یعنی است. دومین مقدار ویژة ماتریس ، مقدار ویژة فیدلر نامیده میشود. اگر گراف یک درخت پوشا داشته باشد، آنگاه است.
تعریف معکوس چپ و راست ماتریسهای غیرمربعی: فرض کنید و باشد. با توجه به مقدار و ، معکوس چپ و راست ماتریس بهصورت زیر تعریف میشود:
(45) |
|
|
اثبات نحوة همگرایی دینامیک عامل پیشرو به مسیر مرجع: دینامیک عامل پیشرو پس از اعمال کنترلکننده بهصورت زیر است:
(46) |
|
|
میدانیم جواب عمومی معادلة همگن بهصورت است. حال فرض کنیم جواب خصوصی معادلة غیرهمگن بهصورت باشد؛ درنتیجه، مشتق جواب خصوصی بهصورت زیر است:
(47) |
|
|
با جایگذاری مشتق جواب خصوصی در معادلة غیرهمگن، داریم:
(48) |
|
|
از طرفین رابطة انتگرال میگیریم:
(49) |
|
|
درنتیجه، جواب خصوصی بهصورت زیر به دست میآید:
(50) |
|
|
درنهایت، جواب عمومی معادلة غیرهمگن بهصورت به دست میآید.
(51) |
|
|
حال اگر مقادیر ویژة منفی باشد، دینامیک عامل پیشرو به همگرا میشود.
[1] تاریخ ارسال مقاله: 30/07/1398
تاریخ پذیرش مقاله:18/06/1399
نام نویسندۀ مسئول: امیر فرهاد احیائی
نشانی نویسندۀ مسئول: ایران – قزوین –دانشگاه بین المللی امام خمینی – دانشکدۀ فنی و مهندسی.