رابطه ۲-۳ |
ضریب همبستگی پیرسون[۸۱] : روش دیگری برای اندازه گیری میزان مشابهت دو بردار چند بعدی است.
(( اینجا فقط تکه ای از متن درج شده است. برای خرید متن کامل فایل پایان نامه با فرمت ورد می توانید به سایت feko.ir مراجعه نمایید و کلمه کلیدی مورد نظرتان را جستجو نمایید. ))
۲-۵ رویکرد آگاه به زمینه
انسانها به دلیل غنی بودن زبانی که با هم حرف میزنند و همچنین به دلیل اطلاعات ضمنی و زمینهای که از محیط اطراف همدیگر دارند، به آسانی میتوانند ایدهها و نظرات خود را به همدیگر انتقال دهند در حالی که همچون تعامل بین انسان و ماشین و یا بین ماشین با ماشین، به دلیل نبود پارامترهای فوق به اندازهی کافی به صورت ایدهآل وجود ندارد. مطلب فوق یکی از مشکلاتی است که پژوهشگران زیادی روی آن کار کرده اند تا در حد ممکن تعامل انسان با کامپیوتر و ماشین با ماشین را به اندازهی تعامل انسان با انسان افزایش دهند. یکی از راهکارهایی که در این زمینه ارائه شده است رویکرد استفاده از اطلاعات زمینه است. در واقع عملی که در این روش صورت میپذیرد، ارائه دادن اطلاعات زمینهای کاربرانی که با سیستم تعامل دارند، میباشد. هنگام ارتباط کاربر یا ماشین با سیستم توسط سیستم مورد استفاده قرار گیرند [۲۵ ، ۲۶].
برای اینکه بخواهیم از اطلاعات زمینهای به طور موثر استفاده کنیم باید با مفهوم زمینه آگاهی داشته باشیم و اینکه چگونه باید مورد استفاده قرار گیرد. طراحان سیستمها با درک این دو موضوع قادر خواهند بود مناسبترین اطلاعات زمینهای را برای سیستم خود انتخاب کنند.
۲-۵-۱ تعریف زمینه و رویکرد آگاه به زمینه
جامعترین تعریفی که در رابطه با «زمینه» ارائه شده است، توسط آقای دی و همکارانش[۸۲] در سال ۱۹۹۱ ارائه شده است که بدین شکل است «زمینه عبارت است از هر اطلاعی که در مشخص کردن وضعیت یک موجودیت مورد استفاده قرار گیرد. موجودیت میتواند یک شخص و یا هر شی در سیستم مورد مطالعه باشد» [۲۵]. همان طور که مشخص است تعریف فوق کلی است و نمیتوان در سیستمهای واقعی از آن تعریف استفاده کرد به همین دلیل پژوهشگران در حوزههای مختلف سعی کردهاند یک تعریف جزئیتر از تعریف فوق ارائه دهند. تعریفی که در همین راستا پژوهشگران حوزهی وبسرویسها ارائه دادند بدین شکل است : ” زمینه عبارت است از هر اطلاعی که به صورت ضمنی یا صریح بر روی درخواست وبسرویس کاربر تأثیر بگذارد” [۹]. رویکرد آگاه از زمینه نیز به این معنی است که کسی یا سیستمی بتواند از این اطلاعات زمینه استفاده کند.
اطلاعات زمینهای اصلی که بیشتر پژوهشگران و آقای دی نیز به آنها اشاره کردهاند عبارتند از : مکان[۸۳]، زمان[۸۴]، شناسه[۸۵] و فعالیت[۸۶] است که هر کدام در سیستمهای مختلف وابسته به نیاز طراح سیستم مورد استفاده قرار گرفتهاند. پیش فرضی که در استفاده از اطلاعات زمینهای باید در نظر گرفت این است که حتماً اطلاعات زمینهای انتخاب شده باید در دوره های زمانی مختلف تغییر کنند. به عنوان مثال اطلاع زمینهای مکان وقتی انتخاب میشود که در سیستم مورد مطالعه کاربران یا شیءهای مورد نظر در دوره های زمانی مختلف تغییر مکان دهند و این تغییر مکانها در سیستم ثبت شود تا در موقع نیاز مورد استفاده قرار گیرد.
در فصل چهارم نحوهی استفاده از اطلاعات زمینهای در الگوریتم پیشنهادی برای کشف سرویس به طور مفصل پرداخته خواهد شد.
فصل سوم: پیشینهی تحقیق
۳-۱ مقدمه
همانطور که در فصل قبلی مطرح شد وبسرویسها و پروتکلهای مرتبط با آنها یک مجموعه بسیار کار آمدی را برای توسعهی نرم افزارهای توزیع شده و نامتمرکز از طریق معماری سرویسگرا فراهم آوردهاند. دلیل اصلی کارآمد بودن وبسرویسها به عنوان ابزار پیادهسازی نرم افزارهای توزیعشده به روش معماری سرویسگرا، رعایت اصول اولیه این معماری در پیادهسازی وبسرویسها است. اگر یک بررسی اجمالی در مورد اینکه این اصول تا چه حدی در وبسرویسها در نظر گرفته شده است انجام شود، مشاهده می شود که اصول اولیهای مثل قابلیت استفادهی مجدد سرویسها، تجرد سرویسها، اتصال سست بین سرویسها، خود مختاری سرویس و مهیا کردن پروتکلها و استانداردهای لازم در حد قابل قبولی در سرویسهایی که با وبسرویسها پیادهسازی شدهاند در نظر گرفته شده است. رعایت این اصول باعث شده است که امروزه در زمینه های مختلف مثل تجارت الکترونیک[۸۷]، فضای کسبوکار[۸۸] و غیره وبسرویسهای زیادی پیادهسازی شود. ولی یکی از اصول کلیدی که تا به امروز به دلیل زیاد بودن وب سرویسها و پراکنده بودن آنها در کل فضای اینترنت راهکار خوبی پیشنهاد داده نشده است، آسان بودن عمل کشف وب سرویس مناسب است. پژوهشگران زیادی در این زمینه الگوریتمهای مختلفی ارائه دادند که در این فصل سعی میشود با طبقه بندی این الگوریتمها و مطالعهی موردی بعضی از آنها به نقصها و مزیتهای این الگوریتمها پرداخته شود تا در پیادهسازی الگوریتم پیشنهادی تا حد ممکن این نقایص برطرف گردد.
۳-۲ الگوریتمهای کشف وبسرویس بر اساس کلمات کلیدی
سادهترین راهکاری که در این زمینه به نظر میرسد در واقع همان جستجوی معمولی است که کاربران اینترنت برای پیدا کردن مطلب مورد نظر خود مورد استفاده قرار میدهند. برای اینکه کاربری بتواند مطلب مورد نظر خود را در اینترنت پیدا کند، چند کلمهی کلیدی در یکی از موتورهای جستجو مثل گوگل[۸۹] یا یاهو[۹۰] وارد میکند و موتور جستجو هم طبق دادهها و مکانیزمی که دارد، چند صفحه را به عنوان نتیجه به کاربر برمیگرداند. در الگوریتمهای کشف وبسرویس بر اساس کلمات کلیدی نیز روشی مشابه روش بالا به کار گرفته شده است. همان طور که در شکل ۲-۱ قابل مشاهده است، وقتی که کاربری میخواهد وبسرویس مناسب خود را پیدا کند، چند کلمهی کلیدی به عنوان ورودی به سیستم کشف وبسرویس میدهد و سیستم با مقایسهای که بین کلمات کلیدی و توصیفهای متنی موجود در فایلها با بهره گرفتن از توابع تشابه[۹۱] انجام میدهد، چند مورد از وب سرویسها را به عنوان نتیجه به کاربر برمیگرداند.
شکل ۳-۱: شمای کلی الگوریتمهای کشف وب سرویس بر اساس کلمات کلیدی
یکی از برنامه های کاربردی مشهور در این زمینه، UDDI است که الگوریتم به کار رفته در آن هم بر اساس کلمات کلیدی است. در فصل قبلی تا حدودی به نحوهی طبقه بندی اطلاعات مربوط به وبسرویسها در صفحات مختلف اشاره شد و در اینجا به نحوهی استفاده از این اطلاعات در پیدا کردن وب سرویسهای مناسب اشاره میشود. همانطور که در بالا اشاره شد، در این قسمت کاربر چند کلمه کلیدی را به عنوان ورودی به UDDI میدهد و UDDI طبق یک تابع تشابه چند وب سرویس را به عنوان نتیجه به کاربر برمیگرداند[۲۲].
۳-۲-۱ مزایا و معایب الگوریتمهای کشف وبسرویس بر اساس کلمات کلیدی
مزایا
پیاده سازی آسان این نوع الگوریتمها نسبت به الگوریتمهای دیگر در این زمینه : به خاطر آسان بودن پیاده سازی این روش امروزه بیشتر پورتالهای کشف وبسرویسی که به صورت عملی کار میکنند، از این نوع الگوریتمها استفاده میکنند.
آسان بودن انتشار و ثبت وبسرویس در مخازن ثبت سرویس : فراهم کنندگان وبسرویسها با وارد کردن ویژگیهای وبسرویسها مثل پارامترهای توصیف وبسرویس، نام وبسرویس، آدرس وبسرویس و فایل توصیفی وبسرویس با فرمت WSDL در واسط کاربری این نوع سیستمها به راحتی میتوانند وبسرویسهای خود را در مخازن ثبت کنند. در حالی که در ادامه خواهیم دید در الگوریتمهای کشف وبسرویس بر اساس معنا، فراهم کنندگان وبسرویسها برای انتشار وبسرویس خود مجبورند با استاندارد حاشیه نویسی (مثل DAML-S , OWL-S ,WSDL-S , WSML) که در آن سیستم به کار رفته است، آشنایی داشته باشند.
معایب
توانا نبودن کاربر در انتخاب کلمات کلیدی مناسب : یکی از مشکلات این است که اگر کاربر توانایی لازم در انتخاب کلمات کلیدی مناسب در مورد وبسرویس مورد نظر خود نداشته باشد، به سختی میتواند وبسرویس مناسب را پیدا کند چون که الگوریتمهای مزبور برای مقایسه از توابع همانندی استفاده میکنند که در این صورت لازم است کلمات کلیدی استفاده شده در درخواست کاربران عیناً در فایل توصیفی وجود داشته باشند تا وبسرویس مورد نظر به عنوان نتیجه برگردانده شود.
توانا نبودن کاربر در توصیف ایدهی خود با چند کلمهی کلیدی: مشکل دیگری که در این زمینه وجود دارد این است که بیشتر کاربران نمیتوانند هدف اصلی خود را با چند کلمهی کلیدی بیان کنند و بنابراین مجبورند برای پیدا کردن نتیجهی دلخواه خود از روش سعی و خطا استفاده کنند که در این صورت وقت زیادی از کاربر بدین شکل به هدر میرود [۲ ، ۴ ، ۵] .
کمک نکردن به کاربر در ایجاد درخواست مناسب برای پیدا کردن وبسرویس مورد نظر خود: همانطور که در دو مشکل فوق بیان شد، سیستمهای پیادهسازی شده با این روش هیچ کمکی به کاربر در ایجاد درخواست مناسب نمی شود. در حالی که امروزه این مشکل به یکی از دغدغه های اصلی پژوهشگران در این زمینه تبدیل شده است. با افزایش تعداد وبسرویسهای پیادهسازی شده در زمینه های مختلف بالطبع به تعداد کسانی که میخواهند از وبسرویسها استفاده کنند، روز به روز افزوده میشود که ممکن است کاربران توانایی لازم در ایجاد درخواست مناسب برای پیدا کردن وبسرویس خود نداشته باشند. بنابراین سیستمهای پیادهسازی شده در این زمینه باید بتوانند به کاربران خود در ایجاد یک درخواست مناسب کمک کنند.
مناسب نبودن نتایج برگشتی: صرفنظر از اینکه کاربران ممکن است کلمات کلیدی مناسبی را به سیستم ارائه ندهند، خود این نوع الگوریتمها به دلیل استفاده نکردن از تمام محتویات موجود در فایلهای توصیفی WSDL (هر چند که خود این فایلها هم از نظر دارا بودن تمامی اطلاعات ناقص هستند) کارایی لازم را برای برگرداندن نتایج مناسب را نداشته باشند.
با کنار هم قرار دادن مزایا و معایب این نوع الگوریتمها نتیجه میگیریم که این نوع الگوریتمها هم از لحاظ کارایی و هم از نظر ساده بودن برای کاربر در پیدا کردن وبسرویس مورد نظر عملکرد خوبی ندارند.
۳-۳ الگوریتمهای کشف وبسرویس بر اساس تحلیل نحوی[۹۲]
فایلهای توصیفی وبسرویسها علاوه بر بخش توصیف عملکرد وبسرویس بخشهای دیگری هم دارد که میتوان از آنها برای بهتر کردن کارایی الگوریتمهای کشف وبسرویس استفاده کرد. بعضی از پژوهشگران کارهایی در این زمینه انجام دادند که در ادامه بعضی از آنها مورد بررسی قرار خواهد گرفت.
در [۷] به خوبی همه بخشهای فایل توصیفی WSDL وبسرویسها مورد تحلیل قرار گرفته است که در الگوریتم کشف وبسرویس پیادهسازی شده نیز به خوبی مورد استفاده قرار گرفته است. در مدل مفهومی این تحقیق محتوای هر فایل توصیفی به چهار دستهی مجزا تقسیم میشود.
CP [۹۳]: این دسته شامل ویژگیهای عمومی وبسرویسها مثل نام وبسرویس، کلید وبسرویس در مخزن، توصیف وبسرویس، نام فراهم کننده وبسرویس و آدرس وبسرویس است. برای مقایسه تشابه این ویژگیها با داده های ورودی کاربران، از پایگاه داده های لغوی[۹۴] WordNet و HowNet استفاده شده است. در پایگاه داده های WordNet و HowNet ابتدا واژهها در مجموعههای هم معنی سازماندهی میشوند که هر کدام از این مجموعهها یک مفهوم لغوی را نشان میدهند و در مرحلهی بعد با بهره گرفتن از مفاهیم معنایی[۹۵] بین این مجموعهها ارتباط برقرار میشود. با این مجموعهها و ارتباطهای بین آنها یک گراف به وجود میآید که با بهره گرفتن از آن به آسانی فاصلهی معنایی بین واژه های مختلف قابل محاسبه است. در این تحقیق از این ساختار برای اندازه گیری میزان تشابه دو واژهی متفاوت استفاده شده است که فرمول استفاده شده به صورت زیر است.
SP [۹۶]: این دسته شامل ویژگیهای خاص برای برخی وبسرویسها است. به عنوان نمونه وبسرویسهای رسانهای ممکن است تصویری یا صوتی باشند که در این پژوهش میتوان این نوع اطلاعات را در این ویژگیها ذخیره کرد. فرمول محاسبهی میزان تشابه این نوع ویژگیها به شکل زیر است.
SI [۹۷] : این دسته از اطلاعات بدست آمده از تحلیل فایل توصیفی در واقع واسط کاربری وبسرویسها را نشان میدهد که متشکل از تعدادی عملیات است که وبسرویسهای مورد نظر آنها را به کاربران ارائه میدهد. هر عملیاتی با مجموعه سهتایی نشان داده شده است. نحوهی محاسبهی میزان تشابه داده های ورودی کاربران با دادههایی که در پایگاه داده ذخیره شدهاند، این دسته هم مثل دستهی CP است .
Qos [۹۸]: این دسته شامل اطلاعاتی مثل زمان پاسخ[۹۹]، قابلیت اطمینان[۱۰۰]، درستی[۱۰۱] و امنیت[۱۰۲] است که ممکن است با توجه به مکانیزمهایی، این اطلاعات برای هر وب سرویسی محاسبه شود.
شکل ۳-۲ : شمای کلی معماری الگوریتم ارائه شده [۷]
هر چند که الگوریتم فوق از تمامی اطلاعات موجود در فایلهای توصیفی وبسرویسها برای بهبود کارایی الگوریتم استفاده میکند، با این حال هنوز بیشتر مشکلاتی که در رابطه با الگوریتمهای کشف وبسرویس بر اساس کلمات کلیدی بیان شد، در الگوریتم پیشنهادی این مقاله نیز وجود دارد که مهمترین آن کمک نکردن به کاربر در ایجاد یک درخواست مناسب برای پیدا کردن وبسرویس مناسب است.
یکی دیگر از کارهایی که با این رویکرد انجام شده است به دو مورد از مشکلات موجود بین پارامترهای ورودی و خروجی عملیات وبسرویسها پرداخته است که در واقع میتوان این کار را به عنوان تصحیح کننده این مشکلات به همهی الگوریتمهای کشف وبسرویس اضافه کرد[۲۷]. مشکلاتی که در این مقاله به آنها پرداخته شدهاند به شرح زیر میباشند:
وابستگی به واسط کاربری[۱۰۳] : در هر عملیاتی تعدادی پارامتر ورودی و خروجی وجود دارد که هر پارامتر خروجی وابسته به چند پارامتر ورودی است. به عنوان مثال همانطور که در شکل ۳-۳ قابل مشاهده است در این عملیات برای بدست آوردن ایستگاه راه آهن فقط پارامتر ورودی شهر مبدأ نیاز است در حالی که برای بدست آوردن فاصلهی بین دو شهر هر دو پارامتر ورودی نیاز است. با مشخص شدن اینکه هر پارامتر خروجی به کدام یک از پارامترهای ورودی وابسته است به کاربرانی کمک می کند که فقط برای هر خروجی ورودیهای مناسبی را وارد میکنند. به عنوان مثال کسی که به دنبال پیدا کردن یک ایستگاه راه آهن مناسب میگردد، فقط شهر مبدأ را وارد میکند و دیگر نیاز به شهر مقصد نیست.
شکل ۳-۳ : نمایش وابستگی رابطه ای
ترکیب عملیات[۱۰۴] : در بعضی از موارد هم ممکن است با ترکیب چند مورد از عملیات یک وبسرویس و ایجاد یک عملیات کلی به نتایج بهتری دست پیدا کنیم. به عنوان مثال اگر عملیات پیش بینی وضع هوا و تبدیل کد شهر به نام شهر را در یک وبسرویس داشته باشیم، میتوانیم با ترکیب این عملیات به یک عملیات کلیتر دست یابیم که در آن نیاز نباشد برای پیدا کردن عملیات پیش بینی هوا از پارامتر نام شهر هم استفاده کرد.
راهکاری که برای حل مشکلات فوق ارائه شده است، شناسایی همه وابستگیها و ترکیبهای ممکن قبل از انتشار وبسرویس در مخازن ثبت سرویس میباشد که در صورت وجود وابستگی بین خروجی و ورودیهای مختلف، عملیات مورد نظر به صورت مجازی به چند عملیات تجزیه میشود و در صورت امکان ترکیب شدن عملیات، مجدداً یک عملیات مجازی کلیتری که ترکیبی از چند عملیات واقعی است به وبسرویس اضافه میشود.