چکيده: مقاله پيش رو در مورد کارگزاران يک سيستم و سيستم هاي داراي چندکارگزار است و در آن ضمن بيان تعاريفي چند از اين اصطلاح، عمده ترين و بارزترين مشخصات آنها توصيف مي گردند. سپس تعريفي از سيستم هاي داراي چندکارگزار ارايه مي شود. در ادامه انواع همسايگي آنها و نحوه تعامل و همکاري يک کارگزار با ساير کارگزاران و چگونگي اشتراک اطلاعات در يک کارگزار تشريح مي شود. آشنايي با اتحاديه ها و ائتلافهاي مبتني بر سيستم هاي داراي چندکارگزار از ديگر بخشهاي اين مقاله است. در انتهاي مقاله نيز سه نوع متدولوژي کارگزارمدار براي توسعه سيستم ها معرفي مي شوند.
مقدمه
به طور کلي کارگزار(1) (AGENT) را مي توان عاملي تعريف کرد که در يک سيستم و يا مجموعه اي که کارگزاران مختلفي در آن حضور دارند، عهده دار يک يا چند وظيفه خاص است. تعريف ديگر اينکه هر کارگزار خود موجوديتي است که داراي هدف، برنامه، رفتار و تعهد نسبت به رفتارهاي خود است (تاناکا، 2003، ص25).
در حوزه هاي مختلف کاري و علمي از تفسيرها و تعريفهاي متعدد و متنوعي مي شود. براي مثال، در تجارت هر کارگزار، عامل يا فردي است که به وکالت از جانب ديگران تجارت مي کند. در حقوق، کارگزار فردي است که قدرت و اختيار آن را دارد تا فرد ديگري را ملزم به تعهدات قانوني لازم الاجرا کند. در بيمه و مشاغل حقالعملکاري، کارگزار در واقع نماينده انحصاري يا فردي است که فقط نمايندگي يک شرکت بيمه را عهده دار است و معمولاً بر مبناي حق العمل کاري و کميسيون استخدام مي شود. اما مفهوم آن در علم مهندسي نرم افزار يا مهندسي سيستم ها تا حدودي متفاوت است.
به زبان ساده تر، کارگزار را مي توان همچون موجودي زنده مثل انسان دانست که داراي دو سطح زندگي يکي خرد و ديگري کلان است. در سطح خرد، تراکنشها و فعاليتهاي دروني آن مورد تجزيه و تحليل قرار مي گيرد. همچنين در اين سطح ساختار کلي کارگزار بررسي و طراحي مي شود و بخشهاي مختلف داخلي مورد نياز يک کارگزار و نحوه ارتباط آنها با يکديگر مثل سيستم داخلي بدن انسان مشخص مي شود. به سطح خرد يک کارگزار، سطح فردي نيز گفته مي شود (تامپسون، 2003، صص55-52). در سطح کلان نحوه تعامل، ارتباط و همکاري يک کارگزار با محيط بيروني و ساير کارگزاران مورد بررسي قرار مي گيرد. همچنين به اين سطح، سطح اجتماعي يک کارگزار نيز اطلاق مي شود که مي توان آن را به طور دقيق همچون سطح اجتماعي زندگي انسان در نظر گرفت (تامپسون، 2003، صص55-52).
ويژگيهاي برجسته کارگزاران
براي يک کارگزار مشخصات مختلفي را درنظرگرفته اند. اما عمده ترين ويژگيها و مشخصاتي که آنها بايد با خود به همراه داشته باشد، عبارتند از:
1 - مستقل بودن: اين خصيصه به اين معنا است که يک کارگزار مي تواند به طور مستقل از راه اندازي، تاييد و با نظارت اپراتورها فعاليت خود را آغاز کرده و آن را ادامه دهد؛
2 - عدم تقيد صرف به اخلاق: به اين صورت که آنها لزوما اخلاق گرا نيستند و چه بسا اين امکان وجود دارد که يک کارگزار به محيط کاري خود، لطمه وارد کند؛
3 - انعطاف پذيري: کارگزاران اين توانايي را دارند تا خود را با شرايط محيطي وفق دهند و از محيط و وقايع پيش آمده در آن بياموزند و در جهت بهبود نقش اجتماعي خود تلاش کنند. اين خاصيت مستلزم رعايت مجموعه مراحلي است که به اصطلاح به آن فرايند پذيرش مي گويند که در آن مراحل پنجگانه اي همچون آگاهي، علاقهمندي، ارزيابي، آزمايش و پذيرش طي مي شود.
4 - واکنشي بودن: کارگزاران اين توانايي را دارند که نسبت به محرکهاي محيطي حساس باشند و در مواقع لازم عکس العمل مناسبي را از خود نشان دهند. اين ويژگي آنان ارتباط نزديکي با ويژگي قبلي دارد.
5 - هدفمند بودن: کارگزاران قادرند که در راستاي اهداف کوتاه مدت، ميان مدت و بلند مدت خود برنامه ريزي کنند و در جهت رسيدن به آن اهداف، اعمال و رفتارهاي خود را کنترل کنند.
6 - اجتماعي بودن: اجتماعي بودن کارگزاران به اين مفهوم است که آنها مي توانند از طريق عضويت در گروهها، ائتلافها و تيم ها با يکديگر براي رسيدن به اهداف مشترک همکاري کنند؛
7 - قابليت جابه جايي: کارگزاران اين توانايي را دارند که به هر جايي سرک بکشند و به آنجا نقل مکان کنند.
8 - تعاملي بودن: کارگزاران مي توانند با افراد، موارد مشابه خود و سيستم هاي مبتني بر قانون و در راستاي رسيدن به اهدافشان تعامل داشته باشند (فوستر و نادلر، 2003، صص49-45). اين ويژگي آنها به سبکي از مديريت در کارگزارها منجر مي شود که در آن هر کارگزار مي کوشد تا وقايع آينده را شکل دهد و تنها برخورد انفعالي نسبت به مسائل نداشته باشد. در اين حالت قبل از آنکه پديده اي حادث شود، کارگزاران براي آن چاره جويي مي کنند.
سيستم هاي داراي چندکارگزار
سيستم هاي داراي چندکارگزار شامل مجموعه اي از کارگزاران مستقل، غيرمتمرکز و هماهنگ با هم هستند که در جهت رسيدن به يک هدف مشترک با يکديگر همکاري مي کنند. در اين گونه سيستم ها، کارگزاران در راستاي همکاري با يکديگر مبادرت به انتقال مواد و اطلاعات يکديگر مي کنند، به ائتلافها، اتحاديه ها و تيم ها وارد ميشوند و يا هر زمان که لازم ديدند از آنها خارج مي شوند (تامپسون، 2003، صص49-45). اين قبيل سيستم ها از نوع سيستم هاي باز هستند. اين بدان معني است که با محيط و ساير کارگزاران اقدام به انتقال مواد و اطلاعات ميکنند تا خود را محدود به يک محيط خاص نکنند (والدنر و فوستر، 2002، ص9-6).
انواع همسايگي کارگزاران
به طور کلي همسايگي کارگزاران در يک سيستم داراي چند کارگزار به اشکال زير است:
1 - همسايگي کلي: کارگزاراني در همسايگي کلي قرار مي گيرند وشامل آن دسته از کارگزارهايي هستند که کارگزار A صرفا از وجود آنها اطلاع دارد و مي تواند با آنها ارتباط برقرار کند و با علامت (A) نشان داده ميشود.
2 - همسايگي خاص: کارگزاراني که علاوه بر داشتن اطلاعاتي در مورد حضور آنها، اطلاعات ديگري درباره نحوه سرويس دهي، وضعيت بازار، ميزان توليد و فعاليت آنها را در اختيار دارد، در وضعيت همسايگي خاص قرار دارند. اين نوع همسايگي به دو دسته تقسيم مي شود:
الف - همسايگي خاص تاثيرگذار: شامل آن دسته از کارگزاراني مي شود که از کارگزار (A) تاثير مي پذيرند. اين همسايگي با علامت +(A)µ نشان داده مي شود. اين به آن معنا است که کارگزار A بر ساير کارگزارهاي يک سيستم داراي چندکارگزار تاثير مي گذارد.
ب - همسايگي خاص تاثيرپذير: شامل آن گروه از کارگزاراني مي گردد که کارگزار(A) از آنها تاثير مي پذيرد و با علامت -(A)µ نشان داده مي شود. اين به آن معنا است که کارگزار A از ساير کارگزارهاي يک سيستم داراي چندکارگزار تاثير مي پذيرد.
3- همسايگي يکپارچه: کارگزاراني که با يکديگر در جهت رسيدن به يک هدف مشترک متحد و يکپارچه مي شوند و با علامت (A)? نشان داده مي شود (تامپسون، 2003، صص55-52).
اشتراک اطلاعات در کارگزاران
از آنجايي که کارگزاران از يکديگر تاثير پذيرفته و بر يکديگر تاثير مي گذارند و همچنين با عضويت در جوامع متعدد در جهت رسيدن به اهداف مشترک با سايرين همکاري مي کنند. بنابراين بايد بخشي از اطلاعات خود را با آنها به اشتراک بگذارند. بر اساس اين تئوري به اشتراک گذاشتن اطلاعات در سه کلاس طبقه بندي مي شود:
1- اطلاعات عمومي: اطلاعاتي هستند که کارگزار(A) با تمامي کارگزاران به اشتراک مي گذارد. مانند اطلاعاتي در زمينه وجود اسم، نشاني، زمينه فعاليت، کشوري که آن کارگزار در آن فعاليت مي کند، سرويس هاي موجود در آن کارگزار و غيره. گفتني است که اين دسته از اطلاعات به آساني قابل دسترسي هستند.
2- اطلاعات نيمه محرمانه: اطلاعاتي هستند که کارگزار(A) با همسايگاني که با آن در ارتباط و تعامل است به اشتراک مي گذارد.
3- اطلاعات محرمانه: اطلاعاتي هستند که فقط خود کارگزار(A) به آنها دسترسي دارد. کاملا مشخص است که اين اطلاعات به خود کارگزار(A) اختصاص دارد (تاناکا، 2003، ص25؛ فوستر و نادلر، 2003، صص49-45).
اتحاديه ها و ائتلافهاي مبتني بر کارگزاران
اتحاديه ها و ائتلافها نمونه هايي از همبستگي موجود در سيستم هاي داراي چندکارگزار هستند که مفهوم هريک عبارت است از:
1 - اتحاديه ها: مجموعه اي از کارگزاران است که در آن تمامي کارگزاران اطلاعات خود را به اشتراک مي گذارند و در يک زمينه کاري مشترک فعاليت مي کنند. اتحاديه اي که کارگزار(A) در آن عضويت دارد با (A)? نشان داده ميشود. اتحاديه ها در حقيقت جامعه اي را افراز مي کنند که کارگزاران در آن عضويت دارند. در نتيجه هيچ کارگزاري نمي تواند در دو اتحاديه عضويت داشته باشد. به عبارت ديگر اشتراک دو اتحاديه با يکديگر تهي است.
2 - ائتلاف ها: به مجموعه اي از کارگزاران که در جهت رسيدن به يک هدف مشترک و واحد همچون ? با يکديگر هماهنگ و همگام شده اند، ائتلاف گفته مي شود و با (?)? نمايش داده مي شود.
بر خلاف اتحاديه ها، ائتلافها يک توافقنامه و تشکيلات موقت هستند و بنگاهها مي توانند از اتحاديه هاي مختلفي به عضويت يک ائتلاف درآيند (فوستر و نادلر، 2003، صص49-45).
متدولوژي هاي کارگزارمدار
در نظريه کارگزارگرا اين موضوع مطرح مي شود که سازمانها و محيط اطراف آنها را مي توان به صورت مجموعهاي از کارگزاران در نظر گرفت که اين کارگزاران همچون يک انسان داراي هدف، برنامه، رفتار و تعهد نسبت به رفتارهاي خود هستند (تاناکا، 2003، ص25).
از اين منظر، متدولوژي هايي براي تشريح و تبيين ديدگاه و تئوري کارگزارمدار بنا نهاده شده اند. در اين ميان تعدادي از متدولوژي ها نسبت به بقيه کامل تر هستند که متدولوژي هاي مهندسي سيستم هاي داراي چندکارگزار نظير "MASE" (MULTI-AGENT SYSTEMS ENGINEERING)، ""Promotheus ، Tropos"" ، ""Message و ""Gaya از آن جمله هستند. (والدنر و فوستر، 2002، صص9-6) در اينجا از بين متدولوژي هاي فوق سه متدولوژي هاي MASE، Promotheus و Tropos که نسبت به بقيه مشهورترند، بررسي مي گردند.
الف- متدولوژي MASE : هدف اصلي اين متدولوژي ارايه يک روش شناسي مبتني بر زيستچرخ کامل توسعه سيستم براي کمک به توسعه دهندگان و طراحان سيستم براي ايجاد سيستم هاي چند کارگزار است. در اين متدولوژي فرايند طراحي و پياده سازي يک سيستم داراي چند کارگزار در دو فاز و هفت مرحله تشريح مي شود. در جدول شماره يک به طور خلاصه هر فاز و مراحل آنها تشريح مي شود.
يکي از نقاط قوت اين متدولوژي وجود ابزارهاي کمکي همراه با آن است. به گونه اي که در تمامي فازها و مراحل، به استثناي مرحله طراحي ساختار کارگزاران، ابزارهايي ارايه کرده است که کل فرايند را پوشش مي دهد. يکي از معايب اين متدولوژي آن است که براي طراحي ساختار کارگزاران هيچ گونه الگوي خاصي در اين متدولوژي ارايه نشده است (لسکوفسکي و اندرسون، 2003).
ب- متدولوژي Promotheus : ويژگي بارز اين متدولوژي در قابليت به کارگيري آن توسط افراد غير متخصص است، چرا که به آساني قابل درک و پياده سازي بوده و در پياده سازي آن به تخصص خاصي نيازي نيست. سه فاز اين متدولوژي عبارتند از:
فاز 1- شناسايي مشخصات سيستم موجود: در اين فاز دو عامل زير مورد شناسايي و تجزيه و تحليل قرار مي گيرند:
- محيط سيستم: به عنوان عاملي که سيستم از آن تاثير مي پذيرد و بر آن تاثير مي گذارد، مدنظر قرار گرفته مي شود. اين محيط شامل محيط خرد و کلان سيستم است. محيط خرد سيستم دربرگيرنده سهامداران، رقبا، هيئت مديره، دولت و قوانين است و محيط کلان آن شامل عواملي همچون فرهنگ، سياست، اقتصاد، اجتماع و فناوري است.
- اهداف، کارايي و اثربخشي سيستم موجود: در اين قدم با شناسايي اهداف سيستم موجود و اقدامات اين سيستم در جهت رسيدن به اهداف تعيين شده، کارايي و اثربخشي سيستم فعلي را مورد ارزيابي قرار مي دهد.
فاز 2- طراحي ساختار سيستم جديد: اين فاز شامل سه مرحله زير است:
شناسايي کارگزاران موجود در سيستم و مشخص کردن انواع آنها بر اساس نوع فعاليت مربوطه: در اين مرحله انواع کارگزاران بر اساس دسته بندي فعاليتها و وظايف آنها مشخص مي شود. در اين مرحله هر کارگزار، چرخه حيات خود، کارايي مورد نظر، داده هاي مورد پردازش، اهداف، تعاملات و ارتباطات با ساير کارگزاران و در نهايت وقايعي که بايد نسبت به آنها واکنش نشان دهد را مشخص مي کند.
طراحي کلي سيستم جديد بر اساس کارگزاران: ساختار سيستم توسط يک دياگرام مشخص مي شود. اين دياگرام نشان دهنده نوع کارگزاران، ارتباطات بين آنها، محدوده سيستم و محيط اطراف آن است. در اين مرحله از ماتريس کارگزار- کارگزار براي تبيين ارتباطات بين کارگزاران استفاده مي شود (تاناکا، 2003، ص25). به عبارت بهتر، روابط و اندرکنش بين کارگزاران در قالب ماتريس کارگزار- کارگزار تلخيص مي شود. (شکل 1) شکل شماره يک نشان مي دهد. که هر کارگزاري کدام کارگزار ديگر را ايجاد مي کند (CREATION=C)، مي خواند (READ=R)، حذف مي کند (DE-ETE=D)، تغيير مي دهد (INSERT=I) و الي آخر.
مشخص کردن نوع ارتباطات و تعاملات بين کارگزاران: در اين مرحله يک پروتکل ارتباطي بين کارگزاران بر اساس نوع اطلاعاتي که رد و بدل مي کنند و نحوه ارتباط بين آنها تدوين مي شود.
فاز 3- طراحي جزييات سيستم جديد: در اين فاز نحوه انجام فعاليتها توسط هر کارگزار و از طريق عوامل زير مشخص مي شود.
- مشخص کردن تواناييها و قابليتهاي هر کارگزار؛
- امور داخلي و نحوه فعاليت هر کارگزار؛
- ساختار اطلاعاتي هر کارگزار؛
در مراحلي بعدي اين فاز عوامل زير نيز مورد بررسي قرار مي گيرند:
- برنامه ها و طرحهاي پرسنلي هر کارگزار؛
- وقايع قابل پيش بيني براي هر کارگزار؛
- داده ها و اطلاعات مربوط به هر کارگزار.
همچنين در اين فاز يک دياگرام کلي از هر کارگزار با تمامي جزييات آن رسم مي شود. در اين دياگرام هر کارگزار همراه با اجزاي آن، روابط ميان آنها، اطلاعات و داده هاي مربوط به آنها و نحوه انجام فرايند مربوطه را نشان ميدهد (بارکر، 2004، ص12).
ج- متدولوژي Tropos : اين متدولوژي توسط عده اي از متخصصان ايتاليايي و کانادايي ايجاد گرديد. يکي از تفاوتهاي اساسي اين متدولوژي با ساير متدولوژي هاي مطرح شده در بالا، تجزيه و تحليل رفتار ذينفعان و اثر آنها بر بنگاه است که در اين متدولوژي بر آن تاکيد مي شود. اين متدولوژي داراي 5 فاز به شرح زير است.
فاز1- شناسايي نيازمنديهاي اوليه سيستم: در اين فاز اهداف سيستم فعلي شناسايي و مورد بررسي قرار مي گيرند. همچنين در اين متدولوژي اهداف سيستم در حال توسعه به دو دسته زير تقسيم مي شوند:
دسته اول- اهداف ساخت يافته (برنامه اي شده): منظور اهدافي است که براي تحقق آن از قبل برنامه ريزي شده است. براي دست يافتن به اين اهداف به پيش نيازهاي ساختاري نياز داريم.
دسته دوم- اهداف غيرساخت يافته (غيربرنامه اي شده): منظور اهدافي است که ناگهاني و پيش بيني نشده هستند. برخلاف اهداف ساخت يافته نيازي به بيش نيازهاي ساختاري براي تحقق آنها نداريم.
در اين فاز از دو ابزار مدل سازي براي شناسايي اهداف، افراد و عوامل تاثير گذار بر سيستم استفاده مي شود:
1 - مدل نمودارشغلي: نمودار شغلي معرف شرح اهداف، گستردگي، ارتباطات سازماني، مسئوليت ها و وظايفي است که به يک شغل خاص تخصيص داده مي شود. درصورتي که اين نمودار در قالب مدلي ارايه شود، تشکيل مدل نمودار شغلي را مي دهد. همچنين اين مدل نشان دهنده اهداف و افرادي است که وظيفه تامين آنها را بر عهده دارند.
2 - مدل کنشگر: کنشگر يا بازيگر يک موجوديت خارجي است که به طريقي در عملکرد سيستم موثر است. يک بازيگر ممکن است استفاده کننده از سيستم نباشد، اما در عمليات و ارايه و تاييد اطلاعات مطرح باشد. بازيگرها از طريق نقشهايي که در سيستم بازي مي کنند، معرفي مي شوند. مدل کنشگر نيز نشان دهنده بازيگران و يا ذينفعان سيستم و روابط بين آنهاست.
نمونه اي از يک دياگرام شغلي و کنشگر براي شناسايي اهداف خرد و کلان و نحوه نمايش آنها در صنعت توريسم در شکل 2 نشان داده شده است.
فاز 2- شناسايي نيازمنديهاي نهايي سيستم: در اين فاز کل سيستم همراه با محيط، افراد و سيستم هاي تاثيرگذار بر آن مدل سازي مي گردند.
فاز 3- طراحي ساختار کلي سيستم: در اين فاز نخست ساختار کلي سيستم برمبناي نقش کارگزاران طراحي شده، سپس جايگاه و روابط ميان آنها طراحي مي شود.
فاز 4- طراحي جزئيات سيستم: در اين فاز اهداف کارگزاران، تواناييها و تعاملات بين آنها مشخص مي شود و در نهايت در فاز اجرا از يک بستر براي پياده سازي و اجراي اين متدولوژي کمک گرفته مي شود.
فاز 5- اجرا: در اين فاز سيستم طراحي شده جديد استقرار مي يابد (لسکوفسکي و اندرسون، 2003).
نتيجه گيري
آگاهي از مفهوم و کارکرد کارگزار و طراحي ساختار يک سيستم و سازمان و روابط آن با محيط بر اساس نظريه کارگزارمدار مي تواند انقلاب عظيمي را در تجزيه و تحليل و طراحي سيستم هاي کسب و کار ايجاد کند چراکه طبق اين نظريه يک بنگاه را مي توان مجموعه اي از کارگزاران همچون انسانها، تجهيزات، اطلاعات و مواد اوليه در نظر گرفت که باساير کارگزاران در تعامل و ارتباط است. اين تکنيک، نظريه اي کاملا نو و بديع است که هنوز به صورت فراگير مورد استفاده قرار نگرفته است و در اين زمينه مي توان به توليد دانش پرداخت (تاناکا، 2003، ص25). به علاوه هنوز متدولوژي هاي ارايه شده نتوانسته اند به طور کامل تمامي جنبه هاي اين ديدگاه را پوشش دهند. يکي ديگر از اشکالاتي که بر متدولوژي هاي تا کنون ارايه شده مي توان وارد کرد، اين است که اين متدولوژي ها عمدتا بر پايه تکنيک ها، روشها و ديدگاه شيء گرا بنا نهاده شده اند و درنتيجه بسياري از جنبه هاي يک کارگزار را نمي توانند پوشش دهند زيرا که هنوز به طور کامل تفاوت بين يک شيء با يک کارگزار درک نشده است و در اين زمينه هنوز کاستيهايي وجود دارد.
پانوشت
1 – در ابتداي مقاله ذکر اين مطلب ضروري است که از واژه AGENT ترجمه ها و تعبيرهاي مختلف و متنوعي همچون نماينده، عامل، آژانس، بنگاه، کارگزار، واسطه، وکيل و... به عمل آمده است که به دليل پيش فرضهاي گوناگون از اين کلمات ترجيح داده شد تا از واژه کارگزار به جاي AGENT در تمام متن استفاده شود.
منابع و ماخذ
1-Barker, P. (2004). "Promotheus: A Methodology for Developing Intelligent Agents". Information Systems Methodology Journal, No. 12, p. 12.
2-Fuster, A. P. and K. I. Nadler (2003). "Foundation of Agent Based Systems: Brief Introduction to Alliance and Coalition Formation". International Engineering Conferences Proceeding, pp. 45-49.
3-Leskowsky, Z. and D. Anderson (2003). "Comparing Agent Oriented Methodologies". American Society of System Development, New York.
4-Tanaka, K. (2003). "Agent-Oriented Methodologies: Toward A Challenge Examples". Methodologies Review, No. 12, pp. 25.
5-Thompson, E. (2003). "Applications of Agent Oriented in System Development". Management and Systems Journal, No. 24, pp. 52-55.
6-Waldner, A. R. and A. P. Fuster (2002). "An Agent Oriented Methodology: High Level and Intermediate Models". Computer, Industry and Engineering Journal, No. 15, pp. 6-9.