سیستم­های اطلاعاتی استراتژیک[۱۳]
مفهوم سیستم­های اطلاعاتی استراتژیک نخستین بار در اوایل دهه­ ۸۰ توسط دکتر چارلز وایزمن[۱۴] مطرح شد و نگاه به سیستم­های اطلاعاتی در سازمان­ها را دستخوش تغییر زیادی کرد. این مفهوم به سیستم­های اطلاعاتی به عنوان یک ابزار یا سلاح رقابتی می­نگرد. در تعریف آن­ها می­توان گفت سیستم­های اطلاعاتی استراتژیک نوع خاصی از سیستم­های اطلاعاتی هستند که از استراتژی­ های حاکم در سازمان، به­ ویژه استراتژی­ های رقابتی پشتیبانی می­ کنند. از این سیستم­ها می­توان به منظور بهبود ارتباط با مشتریان، بهبود فرایند طراحی، تولید و عرضه محصولات، ایجاد و توسعه کمی و کیفی روش­های ارتباطی با تأمین­کنندگان مواداولیه و قطعات موردنیاز، ایجاد فرصت­های جدید فروش و نهایتا افزایش بهره­وری سازمان استفاده نمود[۵۵].
تعریف مختصر و مفیدتر سیستم­های اطلاعاتی راهبردی را سیستم­هایی کامپیوتری معرفی می­ کند که مسئول اجرای استراتژی­ های تجاری سازمانند. در واقع در این­سیستم­ها، اطلاعاتی که توسط کامپیوترها جمع­آوری، پردازش و تجزیه و تحلیل می­شوند، نقش اساسی و مهمی در تعیین یا اجرای استراتژی­ های تجاری سازمان دارند]۲۲[.
سیستم­های اطلاعاتی راهبردی در طی مدت­زمانی که از پیدایش آن­ها گذشته است، با توجه به منافعی که برای سازمان­ها به دنبال داشته و فرصت­هایی که در راستای افزایش سطح کارایی سازمان ایجاد نموده ­اند، توانسته ­اند جایگاه مهم و قابل توجهی بدست آورند.

( اینجا فقط تکه ای از متن پایان نامه درج شده است. برای خرید متن کامل فایل پایان نامه با فرمت ورد می توانید به سایت feko.ir مراجعه نمایید و کلمه کلیدی مورد نظرتان را جستجو نمایید. )

همانگونه که در بخش­های پیشین اشاره شد، سیستم­های اطلاعاتی سازمانی طی یک فرایند تکاملی از سیستم­های پردازش تراکنش­ها (که وظیفه­ی ثبت و ضبط تراکنش­های مالی را برعهده داشتند) به سیستم­های مدیریت اطلاعات (که وضعیت دارایی­ های سازمان مدیریت می­کردند) و پس از آن به سمت سیستم­های پشتیبان تصمیم (که مدیران را در تعیین برخی سیاست­ها یاری می­رساندند) تکامل یافته­اند. پس از سیستم­های پشتیبان تصمیم نوبت به نسل بعدی سیستم­های اطلاعاتی که همان سیستم­های اطلاعاتی راهبردی هستند، رسید. این‌ سیستم‌­ها نیز مانند نسل­های پیشین سیستم­های اطلاعاتی، قابلیت پردازش و مدیریت موجودی‌ مشتریان و ارتباط آن با سیستم‌ سفارشات‌ سازمان را دارا هستند، با این تفاوت که برخلاف سیستم­های قبلی که بیشتر جنبه­ های هزینه­ای سازمان را مورد توجه قرار می­دادند، در سیستم­های اطلاعاتی استراتژیک، هدف استفاده از اطلاعات به منظور ارائه­ خدمات جدید، استفاده بهینه از فرصت­ها و دوری جستن از تهدیدات احتمالی و نهایتا کسب منفعت بیشتر برای سازمان است. علاوه بر آن برخلاف سیستم­های نسل­های قبلی که بیشتر بر فعالیت­های درون سازمانی توجه داشتند، در سیستم­های اطلاعاتی استراتژیک محیط پیرامون سازمان نیز به اندازه درون آن از اهمیت برخوردار بوده و مورد توجه قرار می­گیرد]۱۸[.
دستیابی به مزایای رقابتی برای سازمان یکی از مهم­ترین اهداف به­ کارگیری سیستم­های مدیریت اطلاعات راهبردی سازمان است. برخی راه­های ایجاد این مزایا عبارتست از :
ارائه یک کالا یا خدمت با هزینه کمتر: منظور از هزینه صرفا قیمت محصول نیست، بلکه کیفیت محصول یا خدمت نیز می ­تواند یک فاکتور مهم و تأثیرگذار تلقی شود که هر دوی آن­ها در بازار حائز اهمیت زیادی می­باشند. همچنین واژه هزینه در اینجا، کلیه هزینه­­های جانبی سازمان از طراحی محصول تا عرضه نهایی آن را شامل می­ شود. سیستم­های کامپیوتری بسیاری وجود دارند که می­توانند باعث صرفه­جویی هزینه­ های درون­سازمان شوند، اما آن­ سیستم­ها اغلب نمی ­توانند نقاط استراتژیک را پوشش داده و آن­ها را به فرصت­های رقابت در بازار بدل کنند.
ایجاد تمایز در محصول یا خدمت: متمایزسازی به معنی افزودن قابلیت جدید، یکتا و دارای جذابیت در بازار است. ایجاد تمایز اغلب منجر به افزایش هزینه محصول می­ شود، اما از آنجا که در این مورد قیمت در درجه اول اهمیت نمی ­باشد، بیشتر اوقات می­توان از آن صرف­نظر نمود (البته موارد نادری نیز ممکن است پیش آید که ایجاد تمایز موجب کاهش هزینه محصول شود). یک سیستم استراتژیک به مشتریان این حس را القا می­ کند که از یک مزیت بسیار خاص­تر و ممتازتر نسبت به سایر رقبای خود بهره می­برند.
تمرکز بر روی بخش خاصی از سازمان: ایده­ این روش آن است که سازمان تمام توان و تلاش خود را برای کار در یک عرصه­ خاص و محدود معطوف نماید. این روش در صنعت کاربرد زیادی دارد.
نوآوری: ارائه­ خدمات جدید به کمک سیستم­های کامپیوتری که دارای جذابیت برای مشتریان باشد.
تقریبا هر سیستم کامپیوتری که بتواند استراتژی­ های کامپیوتری را با استراتژی­ های تجاری سازمان ترکیب در یک راستا به کار گرفته و موجب هم­افزایی آن­ها و افزایش بهره­وری سازمان شود را می­توان به عنوان یک سیستم راهبردی درنظر گرفت. بدین منظور بایست ارتباط شفافی میان طرح تجاری سازمان و طرح و نقشه­ی سیستم مذکور وجود داشته باشد تا سیستم بتواند به خوبی اهداف سازمان را پوشش داده و مدیریت بهتری را بر روی منابع حساس اطلاعاتی سازمان ایجاد نماید]۱۸[.
سیستم­های چندعاملی
تاریخچه محاسبات کامپیوتری را می­توان از یک دیدگاه به پنج مرحله تقسیم نمود: اولین مرحله باعث کاهش چشمگیری در هزینه محاسبات گردید و استفاده از کامپیوترهای قدرتمند جهت انجام عملیات پردازشی را برای همه در دسترس و مقرون به صرفه گردانید (به گونه ­ای که شاید پیش از آن تصورش هم ممکن نبود). البته این روند همچنان ادامه دارد.
دوره دوم دوره­ ارتباط کامپیوتر­ها با دنیای خارج بود. کامپیوتر­هایی که در ابتدا سیستم­هایی ایزوله بودند و تنها با اپراتور خود ارتباط داشتند، به لطف اینترنت و شبکه ­های کامپیوتری اکنون به راحتی با تمام دنیا در ارتباطند. این شبکه­ ها امکان توزیع محاسبات کامپیوتری را در مقیاس جهانی فراهم کردند. با پیدایش سیستم­های توزیع­شده و پردازش موازی گام بزرگی در زمینه­ انجام محاسبات سنگین و بسیار پیچیده برداشته شد. امروزه مفاهیمی مانند سیستم­عامل­های توزیع­شده و نسل جدید محاسبات با نام پردازش­ابری[۱۵]، باب جدیدی را در این حوزه گشوده­اند و به طور قطع این سبک از محاسبات در آینده تنها گزینه­ های پیش روی صنعت و دنیای تجارت است.
سومین دوره مهم در محاسبات کامپیوتری زمانی بود که بحث هوشمندی در سیستم­های کامپیوتری مطرح گردید. هدف ایجاد سیستم­هایی بود که از عهده­ حل مسائل پیچیده که حل آن­ها پیش از این ممکن نبود، برآیند. در دوره­بعدی این هدف به ایجاد سیستم­هایی که بتوانند به صورت مستقل و خودمختار و بدون نیاز به نظارت انسان فعالیت و تصمیم ­گیری کنند، ارتقاء یافت(در واقع هدف این بود که کنترل کامل سیستم کامپیوتری به خودشان واگذار شود). مفاهیم هوش مصنوعی و سیستم­های خبره و چندعاملی در این دوره پدید آمدند.
آخرین و پنجمین دوره شامل گذر آهسته و پیوسته­ایست که ما را از دیدگاه سنتی ماشین-گرای[۱۶] برنامه­نویسی به سمت مفاهیمی که بیشتر و بهتر دنیای واقعی ما را انعکاس می­ دهند (و به عبارتی به ادراک ما از دنیای وافعی نزدیک­تر است)، عبور می­دهد. این تلاش شاهد بر این مدعاست که ما با کامپیوتر­ها در ارتباط و تعاملیم و این تعامل همواره دستخوش تغییر و پیشرفت بوده است. به طور مثال در اولین روزهای پیدایش کامپیوتر، ارتباط کاربران با آن­ها از طریق یک ترمینال ورودی به صورت محدود انجام می­گرفت و نیاز به دانش زیادی در زمینه کار با سیستم و دستورات آن داشت. کنسول­های رابط کاربر تا اواخر دهه ۸۰ روش غالب ارتباطی کاربران و کامپیوترها بودند. پس از آن واسط­های گرافیکی پا به عرصه وجود گذاشتند و تعامل با سیستم­های کامپیوتری را تا حد زیادی برای کاربران ساده­تر نمودند. این واسط­ها تا کنون نیز کارایی خود را حفظ کرده ­اند، با اینحال به نظر می­رسد وقت آن است که آن­ها نیز جای خود را به روش­های ساده­تر، کاراتر و واقعی­تر بدهند. روش­هایی از قبیل صحبت کردن و حس از طریق دیدن!
این روند تکاملی در مورد برنامه نویسان سیستم­های کامپیوتری نیز صادق بوده است. زبان­های برنامه­نویسی از زبان­های سطح پایین و نزدیک به زبان ماشین، به زبان­های سطح بالا، شیئ گرا[۱۷] و جنبه­گرا[۱۸] تکامل یافته­اند و کار برنامه­نویسی را برای توسعه­دهندگان نرم­افزار بسیار ساده­تر از پیش نموده ­اند.
البته مراحل تکاملی ذکر شده، چالش­های جدی و مهمی را نیز در زمینه توسعه نرم­افزار به وجود آورده­اند، مثلا اینکه چگونه و به چه روشی می­توان از قدرت پردازش کامپیوتر­های موجود (در مقیاس بزرگ و جهانی) استفاده نمود؟ یا اینکه چگونه کامپیوتر­هایی با قابلیت عملکرد مستقل و بدون نیاز به دخالت انسان و نیز سیستم­هایی که امکان تعامل با انسان را دارا بوده و علاوه بر آن بتوانند واقعیت­های موجود در جهان پیرامون را به سبک موردانتظار و علاقه­ انسان مدل کنند، ایجاد نمود؟
تلاش­هایی که در جهت اتصال و توزیع محاسبات طی سه دهه اخیر انجام شده، منجر به توسعه نرم­افزارها و ایجاد سخت­افزارهایی گردیده است که امکان ایجاد سیستم­های توزیع شده[۱۹] را با سهولت و قابلیت اعتماد بالایی فراهم نموده است. با این وجود وقتی که صبحت از ارائه­ مفاهیم انتزاعی مورد پسند انسان توسط کامپیوتر می­ شود، سیستم­های توزیعی با چالش­های جدیدی مواجه می­شوند. هنگامی که کامپیوتری بخواهد به این سبک با کامپیوتر­های دیگر ارتباط برقرار کند، بایست از نوعی قابلیت همکاری[۲۰] و سازش قوی[۲۱] با سیستم­های دیگر برخوردار باشد (همانگونه که انسان­ها از چنین قابلیت­هایی برخوردارند).
تمامی موارد مطرح شده، نهایتا منجر به ایجاد رشته جدیدی با نام سیستم­های چندعاملی در علوم کامپیوتر گردید. ایده اصلی سیستم­های چندعاملی بسیار ساده است، یک عامل سیستمی کامپیوتری است که می ­تواند به طور مستقل ازجانب کاربر یا مالک خود عمل نماید. به عبارت دیگر، یک عامل می ­تواند تمام آنچه را که به منظور تحقق اهداف طراحیش[۲۲] نیاز دارد، خودش به تنهایی انجام دهد و نیازی نیست که مدام تحت کنترل و نظارت بوده و تک­تک اعمالی که بایست در آن راستا انجام دهد به وی دیکته شود. یک سیستم چندعاملی سیستمی است که از چندین عامل تشکیل شده که این عامل­ها از طریق بستر یک شبکه با یکدیگر در حال تعاملند. این تعامل عمدتا از طریق ارتباط پیام صورت می­پذیرد. در بیشتر سیستم­های چندعاملی، عامل­های موجود در سیستم اهداف بسیار سخت و دشواری را برعهده دارند و برای آنکه از عهده تحقق این اهداف برآیند، حتما بایست از قابلیت همکاری، هماهنگی[۲۳] و مذاکره[۲۴] قابل قبولی با یکدیگر برخوردار باشند، همانطور که ما در زندگی روزانه خود از این قابلیت­ها برخورداریم]۲۴[.
به طور کلی دو سؤال مهم در زمینه ایجاد سیستم­های چندعاملی مطرح است:
چگونه عامل­هایی مستقل و خودمختار ایجاد کنیم که بتوانند وظایف محوله به آن­ها را به درستی و به بهترین نحو ممکن با موفقیت به انجام رسانند؟
چگونه عامل­هایی بسازیم که در عین استقلال عمل، قابلیت تعامل (همکاری، هماهنگی و مذاکره) با سایر عامل­ها را در راستای تحقق اهداف طراحیشان داشته باشند؟
سؤال اول مربوط به طراحی خود عامل­ها[۲۵] و سؤال دوم مربوط به طراحی جامعه­ عامل­ها[۲۶] می­باشد. البته این­دو مسئله کاملا مجزا و تفکیک شده نیستند، به طور مثال برای ایجاد اجتماعی از عامل­ها که بتوانند به طرز مؤثری با یکدیگر ارتباط داشته باشند، ممکن است بتوانیم اطلاعاتی از مدل و نحوه عملکرد سایر عامل­ها در اختیار اعضای اجتماع قرار دهیم که آن­ها را در جهت تعامل بهتر با دیگر عامل­ها یاری کند. در ادامه بیشتر در خصوص پاسخ این دو سؤال بحث خواهیم کرد.
تحقیق در زمینه سیستم­های چندعاملی اغلب با دو مفهوم دیگر مرتبط و درگیر است: یکی مفاهیم مهندسی و طراحی سیستم و دیگری هوش مصنوعی. مفهوم سیستم­های چندعاملی درک ما از خودمان را دچار تغییر خواهد ساخت. زیرا هوش مصنوعی بر روی جنبه فردی هوشمندی متمرکز است، حال آنکه آنچه انسان را به عنوان گونه ­ای متمایز مطرح می­ کند، قابلیت تعامل و برقراری ارتباط وی با دنیای خارج یا دراصطلاح قابلیت اجتماعی[۲۷] اوست. ما علاوه بر آنکه می­توانیم از طریق زبان­های سطح بالا با همنوعان خود ارتباط برقرار کنیم، امکان همکاری، هماهنگی و مذاکره و سازش با یکدیگر را نیز داریم. این درحالیست که سایر گونه­ ها (مثلا مورچه­ها یا دیگر حشرات اجتماعی از بهترین نمونه­های شناخته شده هستند)، با وجود داشتن اجتماعات بزرگ و شدیدا متعامل، از لحاظ قابلیت ­های اجتماعی حتی به گرد انسان نیز نمی­رسند. در مبحث سیستم­های چندعاملی به سؤالاتی از این دست پاسخ داده خواهد شد:
همکاری در جوامع متشکل از عامل­های مستقل چگونه پدید می ­آید؟
عامل­ها بایست از چه زبانی برای ارتباط با عوامل انسانی یا سایر عامل­های سیستم استفاده کنند؟
عامل­ها چگونه بایست تشخیص دهند که اهداف، باورها یا عملیات آن­ها با سایر عوامل تلاقی پیدا کرده است و چگونه بایست بدون ایجاد مشکل در عملکرد خود و سایرین، این تداخل­های احتمالی را رفع رجوع نمایند؟
عامل­های خودمختار چگونه می­توانند با سایر عامل­ها در جهت نیل به اهداف مشترک هماهنگی پیدا کرده و همکاری نمایند؟
با وجود اینکه این سؤالات همگی در رشته­ های دیگری مانند علوم اجتماعی و اقتصاد پاسخ داده شده ­اند، آنچه حوزه سیستم­های چندعاملی را مجزا و متفات می­سازد، تأکید بر این موضوع است که منظور از عامل در سؤالات فوق، موجودیت­های محاسباتی و پردازش اطلاعاتی کامپیوتریست[۲۴]و[۴۲].
تعریف عامل
در ادامه قصد داریم به بررسی مفهوم عامل در سیستم­های چندعاملی بپردازیم. متأسفانه هنوز تعریف جامع و یکسانی برای عامل ارائه نشده و بحث و جدل در این باره (برای ارائه یک تعریف یکسان از عامل) همچنان ادامه دارد. یکی از دلایلی که باعث این وضع گردیده، صفات متفاوتی است که عامل­ها در حوزه ها و مسائل مختلف ممکن است داشته باشند. مثلا ممکن است برای برخی برنامه­ ها قابلیت یادگیری تجربی در عامل­ها بسیار موردنیاز و مهم باشد، حال آنکه در برنامه ­های دیگر این قابلیت نه تنها اهمیتی نداشته، بلکه کاملا غیرضروری و زائد باشد[۲۶].
با وجود همه اینها هنوز مفاهیم کلی و مشترکی برای تعریف یک عامل وجود دارد (بدیهی است که در غیراینصورت ممکن است عامل­ها تمام معنای خود را از دست بدهند). ولدریج[۲۸] و جنینگز[۲۹] در سال ۱۹۹۵ تعریفی به شرح زیر از عامل ارائه دادند:
“یک عامل سیستمی کامپیوتریست که در محیطی قرار گرفته و قابلیت انجام عملیات مستقل در آن محیط را به منظور نیل به اهداف طراحیش، داراست.”
هر سیستم کامپیوتری (اعم از سخت­افزاری یا نرم­افزاری) برای آنکه عامل محسوب شود بایست ویژگی­های زیر را داشته باشد:
خودمختاری[۳۰] : بایست کنترل نسبی بر عملکرد خود داشته و بتواند بدون دخالت انسان کار کند.
قابلیت تعامل[۳۱] : بایست بتواند با سایر عامل­ها و یا اپراتور انسانی تعامل داشته باشد.
واکنش پذیری[۳۲] : بایست به تغییرات محیطی که در آن قرار گرفته واکنش نشان دهد.
رفتار هدفمند[۳۳] : بایست بتواند با توجه به اهداف از پیش تعیین شده، رفتار جدیدی از خود بروز دهد.
به طور کلی در یک دسته‌بندی ساده و بسیار انتزاعی از عامل‌ها می‌توان به دو نوع عامل اشاره کرد، یکی عامل‌های ساده و کم‌اهمیت‌تر[۳۴] (مانند ترموستات‌ها) و دیگری عامل‌های هوشمند[۳۵] که در واقع همان برنامه کامپیوتری‌ است که در بعضی محیط‌ها قادر به انجام اعمال خودمختار و انعطاف‌پذیر است.
چیزی که عامل­ها را از نرم­افزارهای سنتی متمایز می­سازد جنبه خصوصی، خودمختاری، خلاقیت و سازگاری عامل­هاست. این کمیت­ها عامل­ها را به طور خاص برای محیط­های غنی از اطلاعات و غنی از فرایندها بسیار کارا می­سازد.
عامل هوشمند
پس از توضیحاتی که پیرامون عامل­ها بیان گردید، به بررسی این موضوع خواهیم پرداخت که یک عامل هوشمند چیست و چه خصوصیاتی دارد؟ مسلما ما ترموستات یا پروسه­های پس­زمینه لینوکس را به عنوان عامل هوشمند نمی­شناسیم. بنابراین سؤال اساسی و اصلی در این زمینه آن است که معنای هوشمندی چیست؟
پاسخ به این سؤال به تنهایی کارآسانی نیست، شاید روش بهتر برای پاسخ به این سؤال بررسی ویژگی­هائیست که یک عامل هوشمند بایست داشته باشد. لیستی از این ویژگی­ها به شرح زیر توسط وولدریج و جنینگز پیشنهاد شده است:
واکنش­پذیریعامل­های هوشمند قادر به درک محیط پیرامون و واکنش به رویدادهای محیط بادرنظر گرفتن فاکتور زمان و در راستای تحقق اهداف طراحیشان می­باشند.
رفتار هدفمندعامل­های هوشمند می­توانند به طور خلاقانه، رفتاری هدف­گرا[۳۶] از خود بروز دهند تا اهداف طراحیشان را ارضا کنند.
قابلیت ­های اجتماعیعامل­های هوشمند قادرند در راستای دستیابی به اهداف طراحیشان با سایر عامل­ها تعامل داشته باشند.
شاید این ویژگی­ها در نگاه اول بسیار سخت و دست­نیافتنی به نظر برسد. به طور مثال رفتار هدفمند را درنظر بگیرید. ساختن سیستمی که رفتاری هدف­گرا از خود نشان دهد کار چندان سختی نیست، مثلا نوشتن یک رویه در پاسکال، یک تابع در زبان سی یا یک متد در جاوا. وقتی چنین رویه­ای را ایجاد می­کنیم در واقع فرضیات مسئله (یا همان پیش­شرط­ها) و نتایج صحیح حاصله (یا همان پس­شرط­ها) را مشخص می­کنیم که در واقع همان هدف مسئله می­باشند (هدف طراح نرم­افزار از ایجاد رویه موردنظر). چنانچه به رعایت پیش­شرط­ها رویه فراخوانی شود، انتظار داریم که رویه به درستی اجرا شده و نتیجه صحیح بدست آید (یعنی رویه به پایان برسد و به محض پایان، پس­شرط­ها برقرار باشند) و در اینصورت می­توانیم ادعا کنیم که هدف رویه محقق شده است. در اینجا رفتار هدف­گرا به سادگی عبارتست از اینکه رویه طراح یا دستورالعملی را جهت رسیدن به هدف خود دنبال می­ کند. این مدل برنامه نویسی در بسیاری از محیط­ها (مانند محیط­های وظیفه ­ای که پیشتر شرح داده شد) به درستی عمل می­نماید[۴۴].
ولی در مورد سیستم­های غیروظیفه­ای، چنین مدل ساده­ای از برنامه­نویسی هدف­گرا به هیچ وجه قابل قبول نیست، بدین دلیل که محدویت­های بسیاری در فرضیات مسئله اعمال می­ کند. مهمترین محدودیت آن­که فرض شده است که محیط در حین اجرای رویه بدون تغییر باقی می­ماند، حال اگر در حین اجرا تغییری در شرایط محیط روی دهد، رفتار آن غیرقابل پیش ­بینی خواهد بود (معمولا منجر به شکست در اجرای آن رویه خواهد شد). همچنین محدودیت دیگر در مثال قبلی آن است که فرض شده هدف اجرای رویه تا پایان اجرای آن معتبر و صحیح خواهد بود، اما در صورتی که هدف در حین اجرا اعتبار خود را از دست بدهد، دیگر نیازی به ادامه­ اجرای رویه نخواهد بود[۲۸].
در بیشتر محیط­های واقعی هیچ­یک از این فرضیات معتبر نمی ­باشد. به عبارتی مسئله به قدری پیچیده است که توسط یک عامل منفرد قابل مشاهده کامل و حل نمی ­باشد و لذا یک سیستم چندعاملی برای حل مسئله نیاز خواهد بود. یا اینکه ممکن است عدم قطعیت در محیط وجود داشته باشد. در چنین محیط­هایی اجرای کورکورانه یک رویه بدون توجه به اینکه فرضیات اساسی رویه در هر لحظه اعتبار دارند یا خیر، یک استراتژی بسیار ضعیف خواهد بود. همانطور که پیشتر بیان شد، در چنین محیط­هایی عامل بایست واکنشی باشد و بتواند نسبت به رویدادهایی که در محیط اتفاق می­افتد و اهداف عامل یا فرضیات درنظر گرفته شده توسط آن را تحت­الشعاع قرار می­دهد، واکنش مناسب و بهینه از خود نشان دهد که البته همانطور که گفته شد این واکنش­ها بایست در جهت نیل به اهداف طراحی عامل باشد.
همانطور که دیدیم، ایجاد یک سیستم هدف­گرای محض[۳۷] کار چندان سختی نیست، همچنین ایجاد سیستم­های واکنشی محض[۳۸] (که به صورت مداوم به رویدادهای محیط پاسخ می­دهد) نیز به تنهایی خیلی دشوار نیست. اما ایجاد سیستمی که بتواند بین رفتار هدف­گرا و واکنشی یک تعادل کارا ایجاد نماید، کار بسیار سختی خواهد بود. ما از عامل­ها انتظار داریم که برای نیل به اهداف طراحیشان رویه­هایی را که بعضا ممکن است بسیار پیچیده نیز باشند، اجرا نمایند، اما در عین حال انتظار نداریم عامل­ها به صورت کورکورانه و بدون توجه به ممکن است اجرای رویه مؤثر نبوده یا هدف آن­ها به هر دلیل دیگر معتبر نباشد، اقدام به اجرای این رویه­ ها و یا مداومت در اجرای رویه­ ها (به جای پایان دادن به اجرای آن­ها) کنند. بلکه در چنین شرایطی عامل بایست بتواند در زمان قابل قبول نسبت به شرایط جدید واکنش نشان داده و در واقع خود را با شرایط تطبیق دهد. البته این واکنش­ها نبایست به صورت مکرر و به گونه ­ای باشد که عامل نتواند بر روی یک هدف خاص به قدر کافی متمرکز شده و به نتیجه دلخواه دست یابد[۲۶].
نتیجه آن­که دست یافتن به یک تعادل مناسب میان رفتار هدف­گرا و واکنشی کار چندان آسانی نیست. حتی اگر بخواهیم در بین انسان­ها به دنبال فردی بگردیم که میان این دو نوع رفتار در خود تعادلی ایجاد کرده باشد، به ندرت بتوانیم چنین کسی را بیابیم. این مشکل (برقراری تعادل میان رفتار هدف­گرا و واکنشی) یکی از معضلات اصلی طراحان عامل­ها محسوب می­ شود. راه­کارهای بسیاری بدین منظور ارائه شده، اما به هر حال این مسئله هنوز هم جزو یکی از موارد مورد بحث است که کار بر روی آن همچنان ادامه دارد[۴۶].
اما قابلیت اجتماعی جزء نهایی مؤثر در عملکرد خودمختار عامل­هاست که در اینجا به بررسی آن می­پردازیم. در نگاه اول این قابلیت بدیهی و عادی به نظر می­رسد: روزانه میلیون­ها کامپیوتر در سراسر جهان حجم عظیمی از داده ­ها و اطلاعات را میان کامپیوترهای دیگر و انسان­ها مبادله می­ کنند. ولی موضوع آن است که مبادله­ جریان­های داده­ای در واقع قابلیت اجتماعی محسوب نمی­ شود. به طور مشابه که در دنیای انسان­ها تعداد معدودی از اهداف می­توانند به تنهایی و بدون همکاری سایر انسان­ها محقق شوند، و این بدان معنا نیست که ما هدف­های خود را به اشتراک بگذاریم. به بیان دیگر، هر فردی خودمختار و مستقل است و هدف­های خود را دنبال می­ کند، اما برای تحقق این اهداف نیازمند همکاری و مذاکره با سایر افراد می­باشد. در چنین شرایطی ممکن است نیاز باشد هر فرد در مورد اهداف سایرین اطلاعاتی کسب کرده و دلایل و انگیزه آن­ها را بفهمد و اعمالی را انجام دهد (مثلا پرداخت پول) تا سایرین را وادار به همکاری نماید. این نوع از همکاری نسبت به جابجایی ساده­ی اطلاعات باینری توسط کامپیوتر­ها بسیار پیچیده بوده و کم­تر درک شده است[۲۶].

موضوعات: بدون موضوع  لینک ثابت


فرم در حال بارگذاری ...