استفاده از اطلاعات مکانی در ماشینهای جدید: ماشینهای نسل جدید به نرمافزارهایی مجهز هستند که با بهره گرفتن از جمعآوری اطلاعات پیرامونی مثل وضیعت یا فاصلهای که با ماشینهای دیگر دارد، راننده در رانندگی کمک میکنند [۳۴] .
استفاده از پارامتر دما در سیستم گرمایشی و سرمایشی خانه های هوشمند [۳۵] و غیره
هر سیستم آگاه از زمینهای نیاز به زیرساخت و محیطی دارد که با بهره گرفتن از آن بتواند اطلاعات زمینهای مورد نیاز را جمعآوری کند و اطلاعات مناسب را در اختیار کاربران قرار دهد. زیر ساخت و محیط مورد نظر برای سیستم آگاه از زمینه در این تحقیق شبکه اجتماعی تخصصی است که ویژگیهای اصلی آن در بخش قبلی تشریح شد. با در نظر گرفتن کاربران به عنوان توسعه دهندگان نرمافزارهای توزیع شده و نامتمرکز، اطلاعات ارزشمندی از پروفایل آن ها بدست می آید که میتوان به عنوان اطلاعات زمینهای در نظر گرفت. در این تحقیق، اطلاعاتی از کاربران که عنوان اطلاعات زمینه ای در نظر گرفته شدهاند به شرح زیر میباشند :
پروفایل کاربران: امروزه در سیستمهای مختلف از پروفایل کاربران به منظور کمک به آن ها در جهت پیشرفت زمینهی زندگی حرفهای ایشان استفاده میشود. در این تحقیق از اطلاعات موجود در پروفایل کاربران مانند علاقهمندیها، اولویتها، دوستان و خوشههای مورد علاقه جهت کمک به کاربران در پیدا کردن وبسرویسهای مورد نیاز خود استفاده میشود. با توجه به تغییر اطلاعاتی مانند علاقهمندیها، اولویتها، دوستان و خوشههای مورد علاقه در بازههای زمانی مختلف به عنوان اطلاعات زمینهای در نظر گرفته میشوند.
فعالیتها و تجربه های کاربران: کارهایی مانند انتشار وبسرویس، پیدا کردن وبسرویس، پیدا کردن دوست جدید یا خوشه مورد علاقه از جمله فعالیتها و تجربههایی هستند که همیشه در حال تغییر هستند و میتوان آن ها را به عنوان اطلاعات زمینه ای کاربران در نظر گرفت.
سیستم آگاه از زمینه با بهره گرفتن از اطلاعات زمینهای فوق به دو صورت به کاربران خود کمک میکنند.
پیشنهاد کارهای جدید: پیشنهادهای جدیدی که سیستم آگاه از زمینه با بهره گرفتن از اطلاعات زمینهای به کاربر میدهند به شرح زیر میباشند.
پیشنهاد علاقهمندیها و اولویتهای دوستان: هدف اصلی کاربر از انتخاب دوستان در این سیستم استفاده از اطلاعات، تجربیات و فعالیتهای آن ها است تا هم پروفایل خودشان را کامل کنند و هم اینکه سیستم بتواند از فعالیتهای آن ها جهت بهبود عمل کشف وبسرویس توسط کاربر استفاده کند.
پیشنهاد کاربرانی با پروفایل مشابه به کاربر: سیستم آگاه از زمینه، کاربران با پروفایل مشابه را به عنوان دوست به هر دو طرف پیشنهاد میدهد. مشابه بودن پروفایل کاربران میتواند وجود علاقهمندیهای مشترک، دوستان مشترک، خوشه های مورد پسند مشترک باشد.
پیشنهاد خوشههای جدیدی که توسط دوستان یا ایجاد شدهاند و یا پسندیده شدهاند: انتخاب خوشههای مناسب در عمل کشف وبسرویس کاربر تأثیر زیادی دارد که سیستم آگاه از زمینه میتواند در این زمینه کاربران را راهنمایی کند.
پیشنهاد وبسرویسهایی به کاربر که ممکن است مورد نیاز آن کاربر باشد: انجام پیشنهادهای قبلی رابطه مستقیمی در پیشنهاد وبسرویسهای مناسب دارد. بدین صورت که کاربر هر اندازه خوشههای مناسب، دوستانی با زمینه های مشترک و علاقه مندیها و اولویتهای مناسبی را انتخاب کند به همان اندازه بر روی وبسرویسهای پیشنهادی سیستم تأثیر خوبی میگذارد.
شکل ۴-۱۱ : واسط کاربری مربوط به بخش پیشنهاد دهنده سیستم آگاه از زمینه
بهبود الگوریتم کشف وبسرویس: سیستم آگاه از زمینه هم در ایجاد درخواست به کاربر کمک میکند و هم باعث بهبود الگوریتم کشف وبسرویس میشود که در بخش مربوط به الگوریتم کشف وبسرویس نحوه انجام این کارها بیان میشوند.
به صورت کلی عملکرد بخش سیستم آگاه از زمینه مطابق شکل ۴-۱۲ میباشد. به این صورت که اطلاعات زمینهای کاربران (پروفایل، تجربهها و فعالیتهای کاربران) را از بخش شبکه اجتماعی تخصصی میگیرد و با توجه به اطلاعات ورودی، یا به کاربر پیشنهاد کارهای جدید را میدهد و یا اینکه بر روی الگوریتم کشف وبسرویس تأثیر میگذارد.
شکل ۴-۱۲ : عملکرد کلی سیستم آگاه از زمینه
۴-۴-۴ بخش کشف وب سرویس
همانطور که در ابتدای این فصل بیان شد، با در نظر گرفتن کاربران سیستمهای کشف وبسرویس به عنوان توسعه دهندگان نرمافزارهای توزیع شده و نامتمرکز، میتوان بخشهایی را در الگوریتم پیشنهادی در نظر گرفت که با جمعآوری اطلاعات زمینهای این نوع کاربران، آن ها را در پیدا کردن وبسرویسهای مناسب کمک کرد. بخشهایی که عمل ثبت و جمعآوری این اطلاعات را انجام میدهند، شبکهی اجتماعی تخصصی و سیستم آگاه از زمینه هستند که در قسمتهایی قبلی نحوهی کارکرد آن ها تشریح شدند. در این بخش الگوریتم کشف وبسرویس و نحوهی تأثیر گذاری بخشهای قبلی در آن تشریح میشود. بدین منظور ابتدا الگوریتم ساده کشف وبسرویس که فقط از الگوریتم بردار فضای حالت استفاده میکند را تشریح میکنیم و در ادامه الگوریتم اصلی که خوشهبندی و رویکرد آگاه به زمینه به آن اضافه میشود را تشریح میکنیم.
۴-۴-۴-۱ الگوریتم کشف وبسرویس با بهره گرفتن از بردار فضای حالت
متداولترین الگوریتم برای بازیابی متنهای مشابه با درخواست کاربر در سیستمهای بازیابی اطلاعات متنی، مدل بردار فضای حالت است. با توجه به متنی بودن توصیفات وبسرویسها، عملیات و ورودی/خروجی آن ها، استفاده از این روش برای بازیابی وبسرویسهای متناسب با درخواست کاربران مناسب است ولی با توجه به حساسیتی که وب سرویسهای برگردانده شده نسبت به سندهای متنی دارند، این الگوریتم باید بهینهتر شود تا نتایج برگشتی رضایت کاربر را جلب کند. در این بخش الگوریتم کشف وبسرویس با بهره گرفتن از بردار فضای حالت تشریح میشود و در بخش بعدی الگوریتم بهینه شده تشریح میشود.
شکل ۴-۱۳ : فلوچارت الگوریتم کشف وب سرویس با بردار فضای حالت
همانطور که در شکل ۴-۱۳ قابل مشاهده است، روند کلی الگوریتم کشف وبسرویس با بردار فضای حالت در فلوچارت نشان داده شده است. بخش اصلی الگوریتم ایجاد بردار فضای حالت برای وبسرویسها و درخواست کاربران به منظور مقایسه میزان تشابه وبسرویسها با درخواست کاربر است. همانطور که در بخش انتشار وبسرویس بیان شد، قبل از ثبت وبسرویس در مخزن مراحل پیش پردازش و محاسبه تعداد تکرار بر روی توصیفات وبسرویسها انجام میشود که در این مرحله نیاز به انجام این مراحل بر روی آن ها نیست. در حالی که این مراحل باید بر روی درخواست وبسرویس انجام شود. بخشهایی از الگوریتم که نیاز به توضیح بیشتری دارند به شرح زیر میباشند.
محاسبه tf , df , idf کلمات موجود در درخواست کاربر: همانطور که در بخش ۴-۳-۱-۱ بیان شد tf تعداد تکرار کلمات در متن، df تعداد رخداد کلمه t در چند سند و idf معکوس تعداد تکرار کلمه t در چند سند میباشد که دلیل استفاده از این پارامترها در الگوریتم بردار فضای حالت در همان بخش توضیح داده شد. در این بخش فقط نحوهی محاسبه و استفاده از آن ها در الگوریتم بیان میشود.
Tf: با توجه به اینکه به احتمال زیاد تعداد تکرار کلمات در درخواست کاربر یک است، در نتیجه در این مرحله نیازی به محاسبه نیست.
DF: تعداد رخداد هر کلمه در درخواست کاربر باید محاسبه شود که این کار با بهره گرفتن از رویه ذخیره شده[۱۴۵] زیر در پایگاه داده محاسبه میشود.
Idf: یکی از پارامترهای کلیدی در محاسبه وزن کلمات است که باعث میشود کلماتی که در متنهای بیشتری وجود دارد، وزن کمتری داشته باشند. که فرمول محاسبه Idf بدین شکل است.
ایجاد بردار فضای حالت برای درخواست کاربر و وبسرویس : بردار فضای حالت، در واقع مجموعه زوج کلمه و وزن آن است که با محاسبه idf کلمات موجود در درخواست کاربر، وزن کلمات به آسانی محاسبه میشوند. فرمول محاسبه وزن کلمات در درخواست کاربر و توصیف وبسرویسها بدین شکل است.
محاسبه میزان مشابهت: همانطور که در فلوچارت الگوریتم نشان داده شده است هر کدام از بردارهای فضای حالت وبسرویسها با بردار فضای حالت درخواست کاربر مقایسه میشوند تا میزان تشابه آن ها با بردار درخواست کاربر مشخص گردد. بعد از پایان الگوریتم وبسرویسهایی که میزان تشابه بالایی نسبت به الگوریتمهای دیگر دارند به عنوان نتیجه به کاربر برگردانده میشوند. برای محاسبه میزان مشابهت از فرمول تشریح شده در بخش ۴-۳-۱-۱-۲ استفاده میشود که فرمول زیر میباشد:
مثال عملی از نحوهی عملکرد الگوریتم : فرض میکنیم که اطلاعات مربوط به درخواست کاربر و وبسرویس مطابق جدولهای زیر باشند. (N =10)
جدول ۴-۱ : اطلاعات وب سرویس جدول ۴-۲ : اطلاعات درخواست کاربر
بردارهای فضای حالتی که با بهره گرفتن از این دادهها برای درخواست کاربر و وب سرویس ایجاد میشود، مطابق شکل زیر خواهند بود.
جدول ۴-۳ : بردار فضای حالت درخواست کاربر جدول ۴- ۴ : بردار فضای حالت وبسرویس
به عنوان مثال، نحوهی محاسبه وزن کلمهی weather به صورت زیر میباشد.
میزان تشابه درخواست کاربر و وبسرویس بعد از آماده شدن بردارهای فضای حالت به صورت زیر محاسبه میشود.
۴-۴-۴-۲ الگوریتم کشف وبسرویس پیشنهادی
همانطور که در بخش قبلی بیان شد، الگوریتم بردار فضای حالت با وجود مناسب بودن برای سیستمهای کشف وب سرویس، معایب و نقایصی دارند که میتوانیم با رفع آن ها الگوریتم بهینهتری بدست آوریم. مشکلات این الگوریتم عبارتند از :
پیش فرض ایدهآل بودن درخواست کاربران : همانطور که در مثال مطرح شده بخش قبلی قابل مشاهده است، هر اندازه درخواست ایجاد شده توسط کاربر با توصیف وبسرویس مطابقت داشته باشد، مقداری که با بهره گرفتن از فرمول محاسبه میزان مشابهت به دست میآید، به همان اندازه قابل پذیرش خواهد بود. ولی همانطور که در بخشهای مختلف تحقیق بیان شده است، کاربران زیادی وجود دارند که از ایجاد درخواستهای مناسب ناتوان هستند. برای رفع این مشکل باید مؤلفه ای به الگوریتم اضافه شود تا این مشکل را تا حدودی حل کند.
مقایسه درخواست کاربر با همه وب سرویسها : با توجه به زمانبر بودن محاسبات در الگوریتم بردار فضای حالت (مانند محاسبه idf ,df و میزان مشابهت دو بردار)، مقایسه تمام وب سرویسها با درخواست کاربر پیچیدگی زمانی را افزایش میدهد. بنابراین باید راه حلی در نظر گرفته شود که عمل مقایسه درخواست کاربر با تمام وبسرویسها انجام نشود.
عدم حساسیت معنایی: در بعضی مواقع ممکن است محتوای درخواست کاربر با توصیف وبسرویس مشابه باشد ولی این محتوا با واژگان متفاوتی بیان شده باشد. برای رفع این مشکل مؤلفهای به بخش پیش پردازش متن اضافه میشود که در ادامه نحوهی عملکرد این بخش توضیح داده میشود.
برای رفع هر یک از مشکلات مطرح شده، باید مؤلفهای به الگوریتم بردار فضای حالت اضافه شود که در ادامه مؤلفه های مورد نظر بحث میشوند.
۴-۴-۴-۲-۱ نحوه استفاده از وردنت در الگوریتم کشف وبسرویس با بهره گرفتن از بردار فضای حالت
وردنت[۱۴۶]، پایگاه دادهی لغوی برای زبان انگلیسی است که ابتدا کلمات انگلیسی را در مجموعههای مترادف دستهبندی میکند؛ و در مرحله بعد یک تعریف کوتاه عمومی از روابط معنایی بین مجموعههای ایجاد شده ارائه میکند [۳۶]. همانطور که در بخش قبلی بیان شد، یکی از مشکلات الگوریتم بردار فضای حالت عدم حساسیت معنایی است. در این تحقیق برای رفع این مشکل از یک وبسرویس وردنت استفاده شده است. بدین صورت که در مرحله پیشپردازش، کلمات موجود در درخواست کاربر را به عنوان ورودی میگیرد و مترادفهای کلمات را به درخواست اضافه میکند. با انجام این عمل، مشکل عدم تشابه درخواستهایی که از لحاظ محتوا با وبسرویسی مشابه ولی از لحاظ واژگان استفاده شده برای توصیف محتوا متفاوت است، تا حدود نسبتاً زیادی حل میشود و این وبسرویس به عنوان وب سرویس مناسب به کاربر برگردانده میشود.
۴-۴-۴-۲-۲ تأثیر رویکرد آگاه به زمینه در الگوریتم کشف وبسرویس مبتنی بر بردار فضای حالت
همانطور که در بخش ۴-۳-۴ بیان شد، عملکرد کلی سیستم آگاه از زمینه به این صورت است که اطلاعات زمینه ای کاربران (پروفایل، تجربهها و فعالیتهای کاربران) را از بخش شبکه اجتماعی تخصصی میگیرد و با توجه به اطلاعات دریافتی، یا به کاربر پیشنهاد کارهای جدید را میدهد و یا اینکه بر روی الگوریتم کشف وبسرویس تأثیر میگذارد. در این بخش نحوهی تأثیر گذاری سیستم آگاه از زمینه بر روی الگوریتم کشف وب سرویس تشریح میشود.
سیستم آگاه از زمینه به دو صورت بر روی الگوریتم کشف وبسرویس تأثیر میگذارد که تشریح آن ها بدین صورت است.
تأثیرگذاری بر روی الگوریتم بردار فضای حالت با غنی کردن درخواست کاربر: علاوه بر اضافه کردن مترادفهای کلمات موجود در درخواست کاربر، اضافه کردن علاقهمندیها و اولویتهای کاربران به درخواست خود بر روی نتایج برگشتی تأثیر میگذارد. هر چند که تأثیر اصلی علاقهمندیها و اولویتهای کاربران در بخش پیشنهاد کارهای جدید است که با توجه به علاقهمندیها و اولویتها، وبسرویسهای متناسب با آن ها را به کاربران پیشنهاد میشود. با این حال اضافه کردن این اطلاعات به درخواست کاربر، بر روی کارایی الگوریتم تأثیر میگذارد.
تأثیرگذاری بر روی الگوریتم بردار فضای حالت با غنی کردن توصیف وب سرویسها: علاوه بر اضافه کردن اطلاعاتی به درخواست کاربر، میتوان اطلاعاتی را به توصیف وبسرویسها اضافه کرد که باعث بهبود کارایی الگوریتم شود. تجربهها و فعالیتهای کاربران از جمله اطلاعات زمینهای است که سیستم آگاه از زمینه از آن ها برای بهبود کارایی الگوریتم کشف وبسرویس استفاده میکند. بدین صورت که بعد از هر کشف وبسرویس موفق توسط کاربران، کلمات موجود در درخواست کاربر به توصیف وب سرویس پیدا شده اضافه میشود. این کار باعث میشود کاربران جدیدی که برای پیدا کردن وبسرویس به این سیستم مراجعه میکنند به صورت خودکار از تجربه های دیگران استفاده کنند.
هر چند که استفاده از تجربهها و فعالیتهای همه کاربران بر روی عمل کشف وب سرویس تأثیر مفیدی دارد، با این حال پیچیدگی زمانی الگوریتم کشف وبسرویس را افزایش میدهد. بنابراین، برای اینکه هم از تأثیر تجربهها و فعالیتهای کاربران استفاده شود و هم تأثیر کمتری در بالا بردن پیچیدگی زمانی داشته باشد، تنها از تجربهها و فعالیتهای خود کاربران و دوستانشان در عمل کشف وبسرویس آن کاربر استفاده میشود.
شکل ۴-۱۴ نحوهی تأثیرگذاری رویکرد آگاه از زمینه بر الگوریتم بردار فضای حالت را نشان میدهد. همانطور که قابل مشاهده است، عمل کشف وبسرویس کاربران به عنوان تجربه در پایگاه داده ذخیره میشود تا در مراحل بعدی بر روی کشف وبسرویس کاربران دیگر تأثیرگذار باشد.