37
R R oboCup oboCup Rescue Rescue Simulation Simulation اول ت م س ق اول ت م س ق دا ام خ ه ن ب دا ام خ ه ن ب عات لا ط وری ا ا ن ف ر و ت و$ ي& پ م ی کا س د ن ه م کده1 ش ن دا عات لا ط وری ا ا ن ف ر و ت و$ ي& پ م ی کا س د ن ه م کده1 ش ن دا ر ک$ ن ت ا ه درس رن9 اراب ر ک$ ن ت ا ه درس رن9 اراب: دگان ن ه ه د9 اراب ری ت ی ا ح ل ی صا عل ر$ مي ا ری ت ی ا ح ل ی صا عل ر$ مي ا ی م$ ي ح ر1 رس ا ی م$ ي ح ر1 رس ا

RoboCup Rescue Simulation قسمت اول به نام خدا دانشکده مهندسی کامپيوتر و فن آوری اطلاعات ارائه درس رباتيکز ارائه

  • View
    227

  • Download
    0

Embed Size (px)

Citation preview

RRoboCupoboCup Rescue Simulation Rescue Simulationقسمت اولقسمت اول

به نام خدابه نام خدا

دانشکده مهندسی کامپيوتر و فن آوری اطالعاتدانشکده مهندسی کامپيوتر و فن آوری اطالعات

ارائه درس رباتيکزارائه درس رباتيکز

ارائه دهندگان:

اميرعلی صالحی ابریاميرعلی صالحی ابری

آرش رحيمیآرش رحيمی

روند ارائهروند ارائه

جلسه اول: آشنايی با سيستم، محيط، و قوانين جلسه اول: آشنايی با سيستم، محيط، و قوانينشبيه سازی امدادشبيه سازی امداد

جلسه دوم: بررسی مسائل عاملها – جلسه اولجلسه دوم: بررسی مسائل عاملها – جلسه اولآتش نشانآتش نشاننيروی آمبوالنشنيروی آمبوالنش

جلسه سوم: بررسی مسائل عاملها – جلسه دومجلسه سوم: بررسی مسائل عاملها – جلسه دومنيروی پليسنيروی پليسمسائل مشترکمسائل مشترک

فهرست مطالبفهرست مطالب

مقدمهمقدمهسيستم شبيه سازیسيستم شبيه سازیمحيط شبيه سازیمحيط شبيه سازیقوانينقوانينطراحی عاملطراحی عامل

مقدمهمقدمه

مسائل و مشکالت عمليات امدادمسائل و مشکالت عمليات امدادمديريت اطالعاتمديريت اطالعات

جمع آوری اطالعات دريافتی از مکان حادثهجمع آوری اطالعات دريافتی از مکان حادثهاعتبارسنجی داده هااعتبارسنجی داده هاايجاد مدلی به روز و کامل از وضعيت مکان حادثهايجاد مدلی به روز و کامل از وضعيت مکان حادثه

مديريت منابع، نيروها، و استراتژی امدادمديريت منابع، نيروها، و استراتژی امدادمشخص کردن وظايف موجودمشخص کردن وظايف موجوداولويت دهی وظايفاولويت دهی وظايفتخصيص نيرو، و منابع به وظايف مهمتخصيص نيرو، و منابع به وظايف مهمتعيين استراتژی انجام وظايفتعيين استراتژی انجام وظايف

محدوديت انسان به عنوان نيروی امدادمحدوديت انسان به عنوان نيروی امداد

مقدمهمقدمه

استفاده از کامپيوتر و ربات در عمليات امداداستفاده از کامپيوتر و ربات در عمليات امدادکامپيوترهاکامپيوترها

قدرت پردازشقدرت پردازشمديريت اطالعاتمديريت اطالعاتمديريت منابع، نيروها و استراتژی امدادمديريت منابع، نيروها و استراتژی امداد

رباتهارباتهاجمع آوری اطالعاتجمع آوری اطالعاتجايگزين انسان در موقعيت های خاصجايگزين انسان در موقعيت های خاص

هدف ليگ شبيه سازی هدف ليگ شبيه سازی امدادامداد

هدف ليگ رباتهای امدادهدف ليگ رباتهای امداد

سناريوی شبيه سازیسناريوی شبيه سازی

حالت عادی

آتش سوزی

خرابی ساختمانها

صدمه مالیسوختن ساختمانها

مرگ شهروندانمصدوم شدن افراد

عدم دسترسی به نقاط مختلف شهر

مدفون شدن شهروندان

آوار بر جاده

صدمه جانی

گسترش آتش

مسدود شدن جاده

عاملهای امدادعاملهای امداد

عاملهای امدادعاملهای امدادنيروهای امداد و مراکز فرماندهی مستقر در محل حادثهنيروهای امداد و مراکز فرماندهی مستقر در محل حادثهدارای قابليتهای متفاوتدارای قابليتهای متفاوت

هدف نهايیهدف نهايیبه حداقل رساندن آسيبهای جانیبه حداقل رساندن آسيبهای جانیبه حداقل رساندن آسيبهای مالیبه حداقل رساندن آسيبهای مالی

از طريقاز طريقجلوگيری از گسترش آتشجلوگيری از گسترش آتش يافتن مصدومين، نجات آنها از زير آوار و انتقال آنها به يافتن مصدومين، نجات آنها از زير آوار و انتقال آنها به

پناهگاهپناهگاهبرقراری جريان نرمال ترافيک شهریبرقراری جريان نرمال ترافيک شهری

سيستم شبيه سازیسيستم شبيه سازی

شبيه سازی گسسته فرايندهای پوياشبيه سازی گسسته فرايندهای پويا

شبيه سازی حوادث طبيعیشبيه سازی حوادث طبيعی

))(),(()(

)),(),(()(

tetxgttx

ttutxfte

))(,),(),(),(()(

)),(),(()(

)),(),(()(

)),(),(()(

21

22

11

tetetetxgttx

ttutxfte

ttutxfte

ttutxfte

n

nn

سيستم شبيه سازیسيستم شبيه سازی

Simulation Kernel Agents

GIS

Viewers

Simulators

Viewers

جزئيات فنی سيستم شبيه سازجزئيات فنی سيستم شبيه ساز

ارتباط بين اجزاارتباط بين اجزااز طريق شبکهاز طريق شبکه با استفاده از پروتکل با استفاده از پروتکلLongUDPLongUDP

بر مبنای پروتکل بر مبنای پروتکلUDPUDP و برای انتقال بسته های بزرگ و برای انتقال بسته های بزرگ طراحی شده استطراحی شده است

خصوصياتخصوصياتضعيفضعيفغير قابل اطمينانغير قابل اطمينان پياده سازی هزينه بر از لحاظ حجم حافظه و پياده سازی هزينه بر از لحاظ حجم حافظه و

محاسبات الزممحاسبات الزم پروتکل ارتباطی در آينده به پروتکل ارتباطی در آينده بهTCPTCP.تغيير خواهد کرد. تغيير خواهد کرد

سيستم ارتباطی شبيه سازها و هستهسيستم ارتباطی شبيه سازها و هسته

سناريوی شروع شبيه سازیسناريوی شروع شبيه سازی

اجرای سيستم اطالعات جغرافيايیاجرای سيستم اطالعات جغرافيايیاجرای هسته شبيه سازاجرای هسته شبيه ساز اتصال هسته شبيه ساز به سيستم اطالعات اتصال هسته شبيه ساز به سيستم اطالعات

جغرافيايیجغرافيايیاتصال شبيه سازها به هستهاتصال شبيه سازها به هستهاتصال عاملها به هسته شبيه سازاتصال عاملها به هسته شبيه سازشروع شبيه سازیشروع شبيه سازی

روند شبيه سازیروند شبيه سازی

شروع سيکلشروع سيکلارسال اطالعات به هنگام شده محيط به عاملهاارسال اطالعات به هنگام شده محيط به عاملهاارسال اطالعات به هنگام شده محيط به شبيه سازهاارسال اطالعات به هنگام شده محيط به شبيه سازها

نيمه سيکلنيمه سيکلدريافت اطالعات اعمال انجام شده توسط عاملهادريافت اطالعات اعمال انجام شده توسط عاملهاارسال اعمال به شبيه سازهاارسال اعمال به شبيه سازها

پايان سيکلپايان سيکلدريافت نتايج پردازش شبيه سازهادريافت نتايج پردازش شبيه سازهابه هنگام سازی وضعيت محيط در سيکل بعدبه هنگام سازی وضعيت محيط در سيکل بعد

توصيف محيطتوصيف محيط

اجزای محيطاجزای محيط

ثابت

متحرک

جاده ها

ساختمانها

شهروندان عادی

عاملهای امداد

عادی

پناهگاه

مقر فرمانده

یآتش نشاننيروی پليسنيروی

آمبوالنس

روند شبيه سازیروند شبيه سازی

اشياء ثابت محيطاشياء ثابت محيطساختمانساختمان

مرکزمرکزشکل هندسیشکل هندسیتعداد طبقاتتعداد طبقاتجنسجنسمساحتمساحت

گرهگرهجادهجاده

طولطولتعداد خطوطتعداد خطوط

ورودی ورودی

حوادثحوادث

حوادثحوادثزلزلهزلزله

فرو ريختن ساختمانهافرو ريختن ساختمانهامسدود شدن جاده هامسدود شدن جاده ها

آتش سوزیآتش سوزیانفجارانفجارسوختن ساختمانهاسوختن ساختمانهاگسترش آتشگسترش آتش

مدلسازی حوادثمدلسازی حوادث

اثرات زلزلهاثرات زلزلهفرو ريختن ساختمانهافرو ريختن ساختمانها

((BrokennessBrokenness))مسدود شدن جاده هامسدود شدن جاده ها

((BlockBlock))

اثرات آتش سوزیاثرات آتش سوزیسوختن ساختمانهاسوختن ساختمانها

((FierynessFieryness))

مصدوميت شهروندان و نيروهامصدوميت شهروندان و نيروها((Health PointHealth Point))((DamageDamage))((BuriednessBuriedness))

قوانينقوانين

گامهای زمانیگامهای زمانیطول هر سيکل: در حال حاضر دو ثانيهطول هر سيکل: در حال حاضر دو ثانيههر سيکل معادل يک دقيقه زمان محيط می باشدهر سيکل معادل يک دقيقه زمان محيط می باشد سيکل است. سيکل است.300300طول شبيه سازی برابر طول شبيه سازی برابر

تعداد عاملهاتعداد عاملها

مرکز مرکز آمبوالآمبوالنسنس

مرکز مرکز آتش آتش نشاننشانیی

اداره اداره پليپليسس

نيروی نيروی آمبوالآمبوالنسنس

آتش آتش نشانشانن

نيرونيروی ی پليپليسس

شهرشهروندوند

نوع نوع عامعاملل

00000000000000حداقحداق

لل

حداکحداک11111188151515159090ثرثر

قوانينقوانين

ادراک محيطادراک محيط.در ابتدای هر سيکل توسط هر عامل دريافت می شود.در ابتدای هر سيکل توسط هر عامل دريافت می شود شامل اطالعات متغير تمام اشياء موجود در فاصله ده شامل اطالعات متغير تمام اشياء موجود در فاصله ده

متری عاملمتری عاملمشکالت منطقیمشکالت منطقی

ادراک ناقص در حال حرکتادراک ناقص در حال حرکت!ادراک عدم ادراک!ادراک عدم ادراکعدم ادراک انجام اعمالعدم ادراک انجام اعمالادراک بر اساس فاصله با مرکز اشياءادراک بر اساس فاصله با مرکز اشياء

قوانين انجام اعمالقوانين انجام اعمال

هر عامل در هر سيکل قادر به انجام تنها يک عمل استهر عامل در هر سيکل قادر به انجام تنها يک عمل است در صورت ارسال بيش از يک عمل در يک سيکل، آخرين عمل در صورت ارسال بيش از يک عمل در يک سيکل، آخرين عمل

اعمال می شوداعمال می شود جهت انجام اعمال بايد ميزان جهت انجام اعمال بايد ميزانBuriednessBuriednessبرابر صفر باشد برابر صفر باشد اعمال مشترک عاملهااعمال مشترک عاملها

MoveMoveحرکت از يک مکان به مکان ديگرحرکت از يک مکان به مکان ديگر کيلومتر در ساعت( کيلومتر در ساعت(2020 متر در سيکل ) متر در سيکل )330330حداکثر سرعت حداکثر سرعت مسيريابیمسيريابیاثر انسداد جاده ها بر حرکتاثر انسداد جاده ها بر حرکت

RestRestکاری انجام نمی دهدکاری انجام نمی دهداز بين بردن اثر تصميم قبلی در همين سيکلاز بين بردن اثر تصميم قبلی در همين سيکل

قوانين انجام اعمالقوانين انجام اعمال

اعمال مختص به هر نيرواعمال مختص به هر نيرونيروی پليسنيروی پليس

ClearClearباز کردن جاده مسدود شدهباز کردن جاده مسدود شده کاهش ميزان کاهش ميزانBlockBlock جاده به ميزان جاده به ميزان شرايط انجامشرايط انجام

آتش نشان آتش نشانExtinguishExtinguish

ريختن آب بر روی ساختمان در حال سوختنريختن آب بر روی ساختمان در حال سوختنشرايط خاموش کردن ساختمانشرايط خاموش کردن ساختمانظرفيت تانکر آبظرفيت تانکر آبحداکثر قدرت ريختن آبحداکثر قدرت ريختن آب قابليت خاموش کردن چند ساختمان در يک سيکل قابليت خاموش کردن چند ساختمان در يک سيکل

((Multiple NozzleMultiple Nozzle))

epairCostR1

قوانين انجام اعمالقوانين انجام اعمال

اعمال مختص به هر نيرواعمال مختص به هر نيرونيروی آمبوالنسنيروی آمبوالنس

RescueRescueنجات شهروند يا نيروی زير آوارنجات شهروند يا نيروی زير آوار کاهش ميزان کاهش ميزانBuriednessBuriednessشهروند به ميزان يک واحد شهروند به ميزان يک واحد شرايط انجامشرايط انجام

LoadLoadسوار کردن شهروند آسيب ديدهسوار کردن شهروند آسيب ديدهشرايط انجامشرايط انجام

UnloadUnloadپياده کردن شهروند سوار شدهپياده کردن شهروند سوار شدهشرايط انجامشرايط انجام

نکات مهمنکات مهم

اثر پناهگاههااثر پناهگاههاپر کردن تانکر آب آتش نشانهاپر کردن تانکر آب آتش نشانها

نرخ پر کردن تانکر آبنرخ پر کردن تانکر آبمداوای آسيب ديدگانمداوای آسيب ديدگان

با ورود فرد آسيب ديده به پناهگاه با ورود فرد آسيب ديده به پناهگاهDamageDamage وی صفر می وی صفر می شودشود

نکات مهمنکات مهم

عرض جاده

خط آوار

ارتباطیارتباطی قوانينقوانين

ارتباط ميان عاملها از دو ارتباط ميان عاملها از دوطريق انجام می شودطريق انجام می شود

( فرياد زدن( فرياد زدنSaySay)) متری متری 3030هر عامل موجود در هر عامل موجود در

گوينده می تواند پيام را گوينده می تواند پيام را دريافت کنددريافت کند

(ارتباط بی سيم(ارتباط بی سيمTellTell)) از طريق خطوط بی سيم از طريق خطوط بی سيم

مجازی ميان عاملهای همنوعمجازی ميان عاملهای همنوع تمام عاملهای همنوع و تمام عاملهای همنوع و

همچنين مقر فرماندهی عامل همچنين مقر فرماندهی عامل گوينده می توانند پيام را گوينده می توانند پيام را

دريافت کننددريافت کنند مقر فرماندهی نيز می تواند مقر فرماندهی نيز می تواند

از اين طريق با مقرهای ديگر از اين طريق با مقرهای ديگر و عاملهای همنوع خود ارتباط و عاملهای همنوع خود ارتباط

برقرار کندبرقرار کند

PO AC

FS

قوانين ارتباطیقوانين ارتباطی

محدوديت طول پيامهامحدوديت طول پيامهامحدوديت تعداد پيامهای ارسالیمحدوديت تعداد پيامهای ارسالیمحدوديت تعداد پيامهای دريافتیمحدوديت تعداد پيامهای دريافتی

.اعمال محدوديت در اليه عامل انجام می گيرد.اعمال محدوديت در اليه عامل انجام می گيردانتخاب پيامها بر اساس فرستندهانتخاب پيامها بر اساس فرستندهGentlemen’s RuleGentlemen’s Rule

قوانين امتيازدهیقوانين امتيازدهی

امتيازدهی بر اساس ميزان موفقيت تيم امداد در امتيازدهی بر اساس ميزان موفقيت تيم امداد درکاهش صدمات مالی و جانی در پايان شبيه سازی کاهش صدمات مالی و جانی در پايان شبيه سازی

است.است.:فرمول امتيازدهی:فرمول امتيازدهی

در شروع کار، امتياز حداکثر استدر شروع کار، امتياز حداکثر است با گذشت زمان و افزايش صدمات، امتياز کم می با گذشت زمان و افزايش صدمات، امتياز کم می

شودشود در پايان، هدف کسب باالترين امتياز در پايان شبيه در پايان، هدف کسب باالترين امتياز در پايان شبيه

سازی استسازی است

)(HPAgents

AgentsAlive

Total

FieryTotal

Maxn

HP

nS

SS

مدلسازی حادثهمدلسازی حادثه

:يک سناريوی حادثه متشکل از چند قسمت است:يک سناريوی حادثه متشکل از چند قسمت استنقشه محل حادثهنقشه محل حادثهاطالعات گسلهای زلزله و اثر آنها در ايجاد خرابیاطالعات گسلهای زلزله و اثر آنها در ايجاد خرابیمکان اوليه عاملهامکان اوليه عاملهانقاط اوليه آتش سوزینقاط اوليه آتش سوزی

ابزاری جهت ساختن اين قسمتها وجود داردابزاری جهت ساختن اين قسمتها وجود داردMapEditorToolMapEditorToolJGISEditJGISEditS.O.S. RescueMapS.O.S. RescueMapBlackSheep MapGeneratorBlackSheep MapGenerator

مدلسازی حادثهمدلسازی حادثه

طراحی عاملطراحی عامل

بدنه کلی تصميم گيری يک عامل امدادبدنه کلی تصميم گيری يک عامل امداد

while (!finished)

{

receiveWorldModelUpdates();

act();

receiveHeardMessages();

selectAndReadMessages();

}

act : تصميم گيری هر سيکل عامل که به انجام يک عمل تصميم گيری هر سيکل عامل که به انجام يک عملمنجر می شود.منجر می شود.

مسائل مطرح در طراحی عامل مسائل مطرح در طراحی عامل

پارامترهای دخيل در تصميم گيری زياد استپارامترهای دخيل در تصميم گيری زياد است همکاری ميان عاملها نقش اصلی در موفقيت تيم همکاری ميان عاملها نقش اصلی در موفقيت تيم

دارددارد ايجاد همکاری بهينه ميان عاملها، با توجه به ايجاد همکاری بهينه ميان عاملها، با توجه به

غيرهمنوع بودن آنها بسيار مشکل استغيرهمنوع بودن آنها بسيار مشکل است تصميم گيری عامل حالت چند اليه داشته و نياز به تصميم گيری عامل حالت چند اليه داشته و نياز به

PlanningPlanningچند اليه دارد چند اليه دارد مثال: عامل آتش نشانمثال: عامل آتش نشان

آتش ها را بايد خاموش کنمآتش ها را بايد خاموش کنممناطق آتش را بايد خاموش کنممناطق آتش را بايد خاموش کنم

ساختمان در حال سوختن را بايد خاموش کنمساختمان در حال سوختن را بايد خاموش کنم

طراحی عاملطراحی عامل

شبه کد زير چه عملی را انجام می دهد؟شبه کد زير چه عملی را انجام می دهد؟void Agent::act()

{

Position myPos = self.position();

Building target = furthestBuildingFrom(myPos);

Path path = findPathTo(target);

MoveAction.send(path);

}

کدهای پايه موجودکدهای پايه موجود

کدهای پايه موجود جهت توسعه عامل شبيه کدهای پايه موجود جهت توسعه عامل شبيهسازی امدادسازی امداد

YabAPIYabAPI به زبان به زبانJAVAJAVA تيم حال حاضر ليگ تيم حال حاضر ليگ1515مورد استفاده توسط بيش از مورد استفاده توسط بيش از خصوصياتخصوصيات

طراحی بسيار قویطراحی بسيار قویمدلسازی خوب محيطمدلسازی خوب محيطابزار نسبتا مناسبابزار نسبتا مناسبقابل گسترشقابل گسترشپايدار و قابل اطمينانپايدار و قابل اطمينان

YabAPIYabAPIنمودار رده های نمودار رده های

کدهای پايه موجودکدهای پايه موجود

کدهای پايه موجود جهت توسعه عامل شبيه کدهای پايه موجود جهت توسعه عامل شبيهسازی امدادسازی امداد

LibRescueLibRescue موجود به زبان موجود به زبانCC++++ و و JAVAJAVA کد پايه کاملی نيست و تنها شامل مجموعه ای از ابزار و کد پايه کاملی نيست و تنها شامل مجموعه ای از ابزار و

پياده سازی پروتکل ارتباطی استپياده سازی پروتکل ارتباطی استخصوصياتخصوصيات

نسبتا قابل اطميناننسبتا قابل اطمينانطراحی متوسططراحی متوسطبهينه پياده سازی نشدهبهينه پياده سازی نشده

کدهای پايه موجودکدهای پايه موجود

کدهای پايه موجود جهت توسعه عامل شبيه کدهای پايه موجود جهت توسعه عامل شبيهسازی امدادسازی امداد

Agent Development KitAgent Development Kit به زبان به زبانCC++++خصوصياتخصوصيات

طراحی نسبتا خوبطراحی نسبتا خوب مدلسازی اوليه بر پايه مدلسازی اوليه بر پايهLibRescueLibRescueقابل گسترشقابل گسترش دارای اشکاالت متعدد که پيش از استفاده بايد برطرف دارای اشکاالت متعدد که پيش از استفاده بايد برطرف

شودشودچندان قابل اطمينان نيستچندان قابل اطمينان نيست

کدهای پايه موجودکدهای پايه موجود

کدهای پايه موجود جهت توسعه عامل شبيه کدهای پايه موجود جهت توسعه عامل شبيهسازی امدادسازی امداد

Agent Development KitAgent Development Kit به زبان به زبانCC++++خصوصياتخصوصيات

طراحی نسبتا خوبطراحی نسبتا خوب مدلسازی اوليه بر پايه مدلسازی اوليه بر پايهLibRescueLibRescueقابل گسترشقابل گسترش دارای اشکاالت متعدد که پيش از استفاده بايد برطرف دارای اشکاالت متعدد که پيش از استفاده بايد برطرف

شودشودچندان قابل اطمينان نيستچندان قابل اطمينان نيست

با تشکر از توجه شمابا تشکر از توجه شما