بایگانی برچسب برای: بهسان اندیش

تشخیص لبه در تصاویر

آشکارسازی لبه یکی از مفاهیم پردازش تصاویر است. هدف آشکارسازی لبه نشان‌گذاری نقاطی از یک تصویر است که در آنها شدت روشنایی به تندی تغییر می‌کند. تغییرات تند در خصوصیات تصویر معمولاً نمایندهٔ رویدادهای مهم و تغییرات در خصوصیات محیط هستند. شناسایی لبه یک محدودهٔ تحقیقاتی در پردازش تصویر و استخراج ویژگی است.

ویژگی‌های لبه

لبه‌ها ممکن است وابسته به دیدگاه باشند – یعنی می‌توانند با تغییر نقطه دید تغییر کنند، و نوعاً هندسه صحنه، اجسامی که جلوی همدیگر را گرفته‌اند و مانند آن را نشان می‌دهند یا ممکن استنابسته به دیدگاه باشند – که معمولاً نمایانگر ویژگی‌های اجسام دیده‌شده همچون نشان‌گذاری‌ها و شکل سطح باشند. در دو بعد و بالاتر مفهوم تصویر باید در نظر گرفته شود.

یک لبه نوعی ممکن است(برای نمونه) مرز میان یک بخش قرمزرنگ و یک بخش سیاه‌رنگ باشد؛ حال آنکه یک خط می‌تواند تعداد کمی پیکسل‌های ناهمرنگ در یک زمینه یکنواخت باشد. در هر سوی خط یک لبه وجود خواهد داشت. لبه‌ها نقش مهمی در کاربردهای پردازش تصویر دارند.

آشکارسازی لبه

لبه مرز بین نواحی با خواص نسبتاً متفاوت سطح خاکستری است. نظریهٔ پایه در بیشتر روش‌های آشکارسازی لبه، محاسبه یک عملگر مشتق محلی است. در این مقطع توجه شود که لبه (گذر از تاریک به روشن) به صورت یک تغییر آرام، نه سریع، سطح خاکستری مدل می‌شود. این مدل نشان می‌دهد که معمولاً لبه‌های تصاویر رقمی بر اثر نمونه‌برداری، کمی مات می‌شوند. مشتق اول مقطع سطح خاکستری در لبه جلویی گذر، مثبت است، در لبه عقبی آن منفی است و همان طور که مورد انتظار است، در نواحی با سطح خاکستری ثابت صفر است. مشتق دوم برای قسمتی از گذر که در طرف تیره لبه است، مثبت است، برای قسمت دیگر گذر که در طرف روشن لبه است، منفی است، و در نواحی با سطح خاکستری ثابت، صفر است.

بنابراین، از بزرگی مشتق اول می‌توان برای تعیین این که آیا پیکسل در روی لبه قرار دارد، استفاده کرد. مشتق دوم در نقطه وسطی هر گذر سطح خاکستری یک عبور از صفر دارد. عبور از صفرها راهی قوی برای تعیین محل لبه‌های تصویر فراهم می‌آورند. اندازهٔ مشتق اول تصویر در هر نقطه برابر بزرگی گرادیان می باشد. مشتق دوم نیز با استفاده از لاپلاسین به دست می‌آید. اگر یک لبه را به عنوان تغییر در شدت روشنایی که در طول چند پیکسل دیده می‌شود در نظر بگیریم، الگوریتم‌های آشکارسازی لبه به طور کلی مشتقی از این تغییر شدت روشنایی را محاسبه می‌کنند. برای ساده‌سازی، به آشکارسازی لبه در یک بعد می‌پردازیم. در این نمونه، داده‌های ما می‌تواند یک تک‌خط از شدت روشنایی پیکسل‌ها باشد. برای نمونه بین پیکسل‌های چهارم و پنجم در داده‌های ۱-بعدی زیر به روشنی می‌توان لبه‌ای را آشکار کرد

 5  7  6  4  152  148  149

محاسبه مشتق اول

تعداد زیادی از عملگرهای آشکارسازی لبه بر پایه مشتق اول شدت روشنایی کار می‌کنند، یعنی با گرادیان شدت روشنایی داده‌های اصلی سروکار داریم. با این اطلاعات می‌توانیم تصویری را برای قله‌های گرادیان روشنایی جستجو کنیم.

اگر I(x) نماینده شدت روشنایی پیکسل x، و I′(x) نماینده مشتق اول(گرادیان شدت روشنایی) در پیکسل x باشد، بنابراین داریم:

{\displaystyle I'(x)=-1\cdot I(x-1)+0\cdot I(x)+1\cdot I(x+1).\,}

برای پردازش تصویر با عملکرد بهتر، مشتق اول را می‌توان(در یک بعد) با چرخاندن با ماسک زیر روی تصویر بدست آورد:

−1 0 1

محاسبهٔ مشتق دوم

برخی دیگر از الگوریتم‌های آشکارسازی لبه بر اساس مشتق دوم شدت روشنایی کار می‌کنند که در واقع نرخ تغییرات گرادیان شدت روشنایی است و برای آشکارسازی خط‌ها بهترین است، زیرا بدانگونه که در بالا گفتیم هر خط یک لبه دوگانه است، بنابراین در یک سوی خط یک گرادیان روشنایی و در سوی دیگر گرادیان مخالف آن دیده می‌شود. پس می‌توانیم منتظر تغییر بسیار زیاد در گرادیان شدت روشنایی در محل یک خط باشیم. برای یافتن خط‌ها می‌توانیم گذر از صفرهای تغییر گرادیان را در نتایج جستجو کنیم.

اگر I(x) نمایشگر شدت نور در نقطه x و I′′(x) مشتق دوم در نقطه x باشد:

{\displaystyle I''(x)=1\cdot I(x-1)-2\cdot I(x)+1\cdot I(x+1).\,}

اینجا نیز بیشتر الگوریتم‌ها از یک ماسک پیچش برای پردازش سریع داده‌های تصویر سود می‌برند:

+1 −2 +1

آستانه‌گیری

پس از محاسبه مشتق، گام بعدی عبارت است از: اعمال‌کردن یک آستانه برای کشف نقاطی که بخشی از یک لبه هستند. هر چه آستانه کمتر باشد، خط‌های بیشتری آشکارسازی می‌گردند و نتایج بیشتر نسبت به نویز، و ویژگی‌های نامرتبط تصویر حساس می‌شوند، از سوی دیگر یک آستانه زیاد ممکن است خط‌های ضعیف یا بخش‌هایی از خط‌ها را از دست بدهد.

یک مصالحه معمول آستانه‌گیری با پسماند است. این روش از چندین آستانه برای جستن لبه‌ها سود می‌جوید. با آستانه بالایی جستجو را برای پیدا کردن ابتدای خط‌ها آغاز می‌کنیم. هنگامی که یک نقطه آغاز داریم، مسیر لبه را درون تصویر پیکسل به پیکسل با نشانه‌گذاری پیکسل‌هایی که از آستانه پایینی بالاترند پی می‌گیریم. تنها هنگامی که مقدار از آستانه پایینی پایین‌تر رود آن را پایان می‌دهیم. این رهیافت بر اساس این گمان است که لبه‌ها به احتمال زیاد در مسیرهای پیوسته قرار دارند و دنبال کردن بخش ضعیفی از لبه‌ای که از پیش دیده‌ایم ممکن می‌کند، بدون آنکه پیکسل‌های نویزی را به عنوان لبه نشانه‌گذاری کنیم.

عملگرهای آشکارسازی لبه

  • مرتبه نخست: رابرتز، پرویت، سوبل، کنی، اسپیسک
  • مرتبه دوم: لاپلاسی، مار-هیلدرث

اکنون، عملگر کنی و پس از آن مار-هیلدرث بیشترین کاربرد را دارد. عملگرهای زیادی تاکنون منتشر شده‌اند اما هیچیک برتری قابل ملاحظه‌ای بر عملگر کنی در شرایط کلی نداشته‌اند. کار بر روش‌های چندمقیاسی هنوز بیشتر در آزمایشگاه‌هاست.

اخیراً عملگر جدیدی منتشر شده که اجازه جداسازی لبه‌ها را با دقت زیرپیکسل می‌دهد، چیزی که آن را از عملگر کنی نیز بهتر می‌سازد. برای اطلاعات بیشتر مقاله زیر ببینید:

(استجر، ۱۹۹۸)An Unbiased Detector of Curvilinear Structure

بسياري از محصولات شركت هاي توليدي، در سراسر دنيا قابل فروش هستند. با توجه به اين مسئله وجود باركدهاي منحصر به فردي كه آنها را از يكديگر متمايز سازد ضروري به نظر مي رسد.تبديل اعداد به باركد خواندن باركد نياز به استاندارد مشخصي دارد. در حال حاضر در دنيا چند استاندارد براي توليد و استفاده از باركد وجود دارد كه معتبرترين آنها استاندارد EAN/UCC است كه103 كشور در دنيا از آن تبعيت مي كنند و حدود90 درصد تجارت دنيا را پوشش مي دهد.

در ايران به علت ضرورتي كه بنا به توسعه صدور كالاهاي غيرنفتي ايران به بازارهاي جهاني به وجود آمد در سال1374 سازماني با عنوان »مركز ملي شماره گذاري كالا و خدمات« زير نظر موسسه مطالعات و پژوهش هاي بازرگاني تاسيس شد و پس از انجام مطالعات لازم با انتخاب استاندارد EAN/UCC كشور ما به عضويت موسسه بين المللي EAN International درآمد. تاكنون بيش از5 هزار شركت- كه بيشتر آنها شركت هاي توليدكننده محصولات غذايي و شيميايي هستند- به عضويت اين موسسه درآمده و براي كالاها و محصولات خود باركد دريافت كرده اند.
باركد محصولات،12 رقمي است. البته در برخي از كشورها به دلايل مختلف باركد13 رقمي نيز وجود دارد.12 رقم باركد به شرح زير معني دار مي شود:

سه رقم اول نمايانگر كد كشور(626= كد ايران)،5 رقم بعدي كد شركت سازنده،4 رقم بعدي كد كالاي مربوطه و در نهايت1 رقم آخر كد كنترل توسط رايانه به منظور كنترل صحت كد مورد نظر است.
براي مثال باركد زير مربوط به دستمال كاغذي200 برگي يكي از شركت هاي توليدي است به طور حتم تا به حال در هنگام خريد يا پس از خريد كالا به علامت باركد چاپ شده در روي بسته بندي آن توجه كرده ايد و اين سئوال برايتان پيش آمده كه اين خطوط چه هستند و چه كارآيي دارند.

عامه مردم درباره باركد، نظرات متفاوتي دارند. خيلي ها فكر مي كنند باركد نمايانگر قيمت كالاست. برخي ديگر نيز باركد را علامت استاندارد و عده اي باركد را شماره مجوز كالا مي دانند.
باركد شامل يك سري عدد و تعدادي خطوط موازي سياه رنگ با ضخامت هاي مختلف در زمينه سفيد بوده كه از طريق دستگاه پويشگر (Scanner) توسط امواج مادون قرمز قابل خواندن و انتقال به رايانه است. هر يك از اين ميله ها مانند يك بيت ارزشي، معادل صفر و يك دارند.
هر يك از اين كدها در بانك اطلاعاتي مربوط، داراي اطلاعات كاملي شامل شرح، مشخصات دقيق و فني، موجودي، اطلاعات ورود و خروج براي استفاده كنندگان ذي ربط هستند.

استفاده از باركد فقط به محصولات توليدي شركت ها محدود نمي شود. در كارخانه ها و موسسات توليدي به منظور رديابي مداوم اطلاعات كالاهاي توليدي در خطوط مختلف توليد قطعات مصرفي موجود در انبارها، باركدهاي منحصر به فردي ايجاد و با اين سيستم رديابي مي شود. سيستم باركد كمك مي كند تا تغيير اطلاعات را توسط سيستم باركد به بانك هاي اطلاعاتي منتقل كرده و همواره اطلاعات موجودي هاي خود را به روز نگه داريد. در واقع باركد به عنوان يك ترمينال ورودي كمك مي كند تا تغيير يا ثبت اطلاعات با حداقل خطاي اطلاعاتي به رايانه منتقل شود.

در فروشگاه هاي بزرگي كه روزانه مقدار زيادي كالاي ريز و درشت به آنها وارد و يا خارج مي شود و مسئولين براي كنترل موجودي هاي خود همواره به اطلاعات سطوح موجودي نياز دارند استفاده از باركد بسيار ضروري است. در غير اين صورت بايد هرازگاهي با تعطيلي فروشگاه اقدام به شمارش و كنترل موجودي كرد. اين كار نه تنها بسيار دشوار و طاقت فرساست بلكه امكان بروز اشتباه در آن نيز زياد است.

در حال حاضر در كشور ما از باركد براي جمع آوري و ثبت اطلاعات مختلف استفاده هاي متنوعي مي شود. از كارت هاي حضور و غياب پرسنلي گرفته تا قبوض آب و برق و تلفن، اطلاعات خطوط توليد و ردياب محصولات، موجودي هاي انبار، كتب جهت ثبت شماره استاندارد بين المللي كتاب (شابك) و از همه بيشتر براي كالاهاي توليدي شركت ها كه در فروشگاهها ارائه مي گردد و …
براي راه اندازي سيستم هاي مبتني بر باركد، نياز به تجهيزاتي مانند نرم افزار توليد باركد، چاپگر چاپ باركد، پويشگر (Scanner) و برچسب هاي ويژه داريم.
البته توسعه و پيشرفت در زمينه باركد نيز مانند ساير علوم و فن آوريها به سرعت در حال وقوع است.

منبع


بارکد تقریبا در تمام بخشهای زندگی ما وجود دارد , در سوپر مارکتها , بیمارستانها زندانها و حتی در خانه خودمان !

بارکد تقریبا به عنوان بخشی از زندگی روزمره ما مورد قبول همه قرار گرفته اما واقعا بارکد چیست و چه چیزی را نمایش میدهد ؟

مطمئن باشید فقط شما نیستید که دوست دارید سر از راز این خطوط و فضاهای میان آنها دربیاورید خطوطی که هر روز حد اقل بر روی برچسبهای مواد غذائی یا نامه های پستی خود می بینید . همه آنها به نظر یکسان می آیند اما ي نیست زیرا هر صنعتی روش کدگذاری مخصوص به خود را دارد و از آن به عنوان استاندارد استفاده میکند که در بخشهای بعدی این روشها را توضیح خواهیم داد . اگر در فکر بکارگیری تکنولوژی بارکد در شغل خود هستید موارد مهمی است که باید در نظر بگیرید تا این تکنولوژی بر تمام مشکلات شما غلبه کرده و کار شما را سهولت ببخشد .

انواع مختلف روشهای کدگذاری

بارکد در شکلهای مختلف ارائه میشود که ساده ترین نوع آن را حتما در فروشگاهها و یا سوپر مارکتها دیده اید . اما استانداردهای دیگر بارکد هم وجود دارد که در صنایع مختلف استفاده می شود مثل : مراکز درمانی , کارخانه های صنعتی و … که تمام اینها نحوه کدگذاری (Symbology) منحصر به فرد برای خود را دارند که غیر قابل تغییر هستند. حال این سوال پیش می آید که چرا اینهمه کدهای متفاوت وجود دارد ؟ این سوال به سادگی قابل جوابگوئی است چرا که Symbology های مختلف برای حل مشکلات صنایع گوناگون به وجود آمده اند .

حالا با هم نگاهی کوتاه به برخی از Symbology های معمول می اندازیم و ببینیم چگونه و کجا و چرا از آنها استفاده میکنیم :

UPC/EAN
این نوع کدگذاری برای کنترل خروجی ( کنترل نهائی ) به کار برده میشود . کد UPC با طول ثابت میباشد و به طور خاص در فروشگاهها و کارخانجات تولید کننده مواد غذائی کاربرد دارد . این کد برای سوپرها و این چنین مواردی در نظر گرفته شده است که با استفاده از 12 رقم فضای مناسبی برای تعریف محصولات در اختیار ما قرار میدهد .

Code 39
این روش کد گذاری به این دلیل ایجاد شد تا در صنایعی که احتیاج به استفاده از حروف نیز در کنار ارقام دارند به کار برده شود . این روش کدگذاری عمومی ترین روش کدگذاری است که از قدیم به کار برده میشود . این نوع کدگذاری معمول درا تمام صنایع – به استثناء تولید کنندگان موادغذائی – به کار گرفته میشود اما با توجه به اینکه بارکد دارای طول زیادی خواهد بود برای مواردی که اندازه برچسب روی اقلام تولیدی گزینه ای قابل توجه باشد پیشنهاد نمی شود.

Code 128
این روش کدگذاری وقتی به کار می آید که شما انتخاب زیادی از حروف و ارقام داشته باشید . در صنایعی که اندازه برچسب روی اقلام. گزینه قابل توجه باشد این روش کدگذاری انتخابی مناسب برای شماست چرا که فشرده و خوانا است . از این روش کدگذاری معمولا در حمل و نقل استفاده میکنند که در آن اندازه لیبل یک مورد مهم میباشد .

Interleaved 2 of 5
از دیگر روشهای کدگذاری معمول در صنایع حمل و نقل است که در کنار آن کاربرد بسیاری در انبارها و شرکتهای عمده فروش می باشد . این کدها هم به صورت فشرده و کم جا هستند .

PDF417
این روش کدگذاری به عنوان روش دو-بعدی ( 2D ) شناخته شده است که به صورت خطی نبوده و بیشتر شما را به یاد جدول روزنامه ها می اندازد اما تفاوت این کد با سایر کدهائی که در بالا توضیح داده شد این است که PDF417 واقعا یک فایل داده های سیار ( Portable Data File ) است که مثلا میتواند شامل : اسم , آدرس , شماره تلفن منزل , شماره گواهینامه رانندگی و عکس و حتی خلاصه سوابق رانندگی شما باشد !

در نهایت اینکه این روش کدگذاری میتواند اطلاعات کامل و جامعی را در خود جای داده و حجمی در حد یک تمبر پستی داشته باشد البته طبیعی است هر چه اطلاعات شما کاملتر باشد حجم این کد نیز بزرگتر خواهد شد .

بارکدها چگونه خوانده میشوند :

بارکدها با کشیده شدن تابش کوچکی از نور روی کد چاپ شده قابل خواندن هستند . چشمان شما تنها خط قرمزی از نور را میبیند که از بارکد خوان تابیده میشود اما چه اتفاقی در تابش و بازتاب آن نور قرمز در میان این خطوط تیره و روشن می افتد ؟ قطعه ای در بارکدخوان بازتاب نور را دریافت کرده و آنرا به سیگنالهای الکتریکی تبدیل میکند . منبع تابش لیزر شروع به خواندن فضای خالی قبل از اولین خط مشکی میکند و این کار را تا انتهای کد انجام میدهد – اگر بارکد دارای این فضای خالی معین در ابتدا و انتهای خود نباشد قابل خواندن نیست که به این فضا ها Quiet Zone می گوئیم – هر چه کد ما طولانی تر باشد تعداد نوارهای ما نیز بیشتر خواهد بود و هر چه تعداد نوارهای ما بیشتر باشد باید ارتفاع نوارها نیز بیشتر شود تا کد به راحتی قابل خواندن باشد .

بارکد خوانها:

به طور کلی سه مدل بارکد خوان وجود دارد : ثابت , بارکدخوانهای سیار دسته ای و بارکدخوانهای سیار بی سیم

1 – بارکدخوانهای ثابت :

به کامپیوتر متصل میشوند و داده ها را هر بار که خوانده میشوند انتقال میدهند . وقتی یک بارکد اسکن میشود به سرعت از طریق داده الکتریکی به کیبورد منتقل میشود و باعث میشوند تا کاراکترها به سرعت هر چه تمامتر روی صفحه نمایش داده شوند . این دستگاه به قدری سریع است که در بسیاری مواقع کاربران ترجیح میدهند ازآن به عنوان صفحه کلید دوم استفاده کنند . بزرگترین مزیت این دستگاهها این است که بدون احتیاج به تغییر داده ها یا احتیاج به برنامه خاص در تمام برنامه هائی که ورودی داده از صفحه کلید را قبول میکنند مورد استفاده می باشند .
نوع دیگری از این بارکدخوانها نیز موجود است که از طریق کابل RS232 به کامپیوتر متصل میشود و به صورت کد ASCII داده را به برنامه میشناساند .

2 – بارکدخوانهای سیار دسته ای :

این نوع بدون اینکه به طور مستقیم با کامپیوتر متصل باشند اطلاعات را در حافظه خود ذخیره کرده و سپس با استفاده از پایه اطلاعات آن روی کامپیوتر منتقل میشود . . این دستگاهها شامل یک اسکن کننده بارکد , یک صفحه نمایش برای انجام کار مورد نظر و یک صفحه کلید کوچک برای وارد کردن داده های مورد نظر مثل تعداد کالا و … هستند . ضمن اینکه یک پایه (Cradle) نیز برای انتقال اطلاعات به کامپیوتر حتما باید تهیه شود . این مدل بارکدخوانها در مواردی به کار میروند که احتیاج به جابجائی کاربر الزامی و داده های جمع آوری شده در لحظه مورد نیاز نیستند . این دستگاهها به صورتهای زیر استفاده میشوند که برنامه شما تعیین میکند که به کدام صورت استفاده شود :

قرار گرفتن روی دست (Handheld)    قرار گرفتن در کیف (Wearable)        قرار گرفتن در ماشین (Truck)

3 – بارکدخوانهای سیار بی سیم :

این نوع از بارکدخوانها هم اطلاعات را در حافظه نگهداری میکنند اما انتقال اطلاعات به صورت بلادرنگ انجام میشود این مدل از بارکدخوانها در مواردی که دسترسی اطلاعات برای تصمیمات مهم است استفاده میشود . . این دستگاهها شامل یک اسکن کننده بارکد , یک صفحه نمایش برای انجام کار مورد نظر و یک صفحه کلید کوچک برای وارد کردن داده های مورد نظر مثل تعداد کالا و … هستند . ضمن اینکه یک پایه (Cradle) نیز برای انتقال اطلاعات به کامپیوتر حتما باید تهیه شود. وقتی شما احتیاج به انتقال سریع اطلاعات دارید این دستگاههای بی سیم هستند که کار شما را عملی میکنند . این دستگاهها به صورتهای زیر استفاده میشوند که برنامه شما تعیین میکند که به کدام صورت استفاده شود :

قرار گرفتن روی دست (Handheld)      قرار گرفتن در کیف (Wearable)       قرار گرفتن در ماشین (Truck)

اسکنر چکونه کار میکند :

پایه هر دستگاه بارکد خوان یک اسکن کننده , یک رمزگشاینده و یک کابل ارتباطی میان کامپیوتر و دستگاه بارکد خوان میباشد . وظیفه اسکن کننده این است که کد را اسکن کرده و داده های خروجی الکتریکی ایجاد نماید که داده ها با نوارهای مشکی و فاصله بین آنها مرتبط است . این داده های الکتریکی سپس توسط رمز گشا آنالیز شده و بر اساس نوع کدگذاری و محتوی کد به صورت متعارف کامپیوتری ( شامل حروف – اعداد و یا علامتهای دیگر استاندارد مثل ” – ” و ” . ” و … ) نمایش داده می شود .

همچنین اسکن کننده ها میتوانند که این رمزگشا را به صورت داخلی داشته باشند و یا کدها را به صورت رمزگشائی نشده در خود نگهداری کنند که در این حالت احتیاج به وسیله ای دیگر دارند که به آن رابط یا Wedge می گوئیم . در این حالت کدها به محض اتصال به این رابط توسط رابط رمزگشائی میشوند و به مکان مورد نظر ما ( برای مثال بانک داده ها ) منتقل میشوند .

این روش اسکن شدن بیشتر در بارکدخوانهای سیار به کار برده میشود .

کدام بارکدخوان برای کار و نرم افزار شما مناسب است ؟

با تمام انتخابهائی که برای شما وجود دارند مهمترین نکته برای انتخاب درست دستگاه این است که شما به خوبی محیط کار و برنامه خود را قبل از اینکه هر تصمیمی بگیرید مطالعه کنید . برای این منظور سوالات زیر شما را در این انتخاب راهنمائی میکند :

* – دستگاهها در چه محیطی به کار میروند ؟ در یک محیط کاملا سخت صنعتی یا در یک فروشگاه معمولی !

* – استفاده از دستگاه برای مدت مشخصی می باشد یا به طور دائم از آن استفاده خواهد شد ؟

* – آیا به قابلیت سیار بودن دستگاه احتیاج دارید ؟

* – آیا خواندن کدها در نزدیکی کالاها می باشد یا در فاصله دورتر قرار دارند ؟

*- دستگاه چگونه به کامپیوتر متصل میشود ؟

*- آیا اطلاعات خوانده شده باید سریعا منتقل شوند یا خیر ؟

به خاطر داشته باشید که دامنه انتخاب دستگاههای بارکد خوان بسیار وسیع هست که از انها در هر برنامه ای بتوان استفاده کرد پس هرگز اولین دستگاهی را که به نظر مناسب کار شما بود انتخاب نکنید چه بسا ارزانترین دستگاه به راحتی و مفیدتر برای شما مورد استفاده داشته باشد .

آیا دستگاه بارکد خوان با کامپیوتر من سازگار است ؟

هیچ برنامه خاصی لازم نیست که اطلاعات را به کامپیوتر شما انتقال دهد . این دستگاهها به راحتی توسط اسکن کننده و رمزگشای خود اطلاعات را به سیستم شما انتقال میدهند و لازم نیست شما کار دیگری انجام دهید . هرچند کامپیوتر شما برای خواندن کدها مشکل خاصی را نخواهد داشت اما در مواقعی ممکن است قابلیت چاپ کدها را نداشته باشد که در این صورت شما با ارتقاء سیستم خود و یا با خرید برچسبهای از قبل چاپ شده و یا حتی خرید دستگاههای چاپ بارکد به راحتی این مشکل را حل خواهید کرد و برچسبهای خود را بر روی محصولاتتان می چسبانید .

چاپ بارکد :

با داشتن یک برنامه خوب کامپیوتری تمام پرینترهای سوزنی , حرارتی و لیزری قادر هستند تا بارکد را با کیفیتی خوب چاپ کنند اما اگر شما میخواهید که بهترین چاپ را داشته باشید از چاپگرهای مخصوص چاپ برچسب استفاده کنید که برای چاپ تعداد زیادی برچسب هم مناسب هستند . اما اگر احتیاج به چاپ چند لیبل در زمانی خاص دارید میتوانید از چاپگرهای سوزنی نیز استفاده کنید . تقریبا اکثر صنایع – کوچک و بزرگ – از چاپگرهای حرارتی مخصوص برچسب استفاده میکنند زیرا به راحتی رولهای برچسب را چاپ کرده و مهمتر از آن چاپ سریع و با کیفیت بارکدهاست که این پرینترها را در اولویت اول قرار میدهد .

استفاده از بارکد در هر کجا !

تمام صنایع میتوانند از مزیتهای تکنولوژی بارکد سود ببرند . در زیر برخی از موارد کاربردی بارکدها را ذکر میکنیم :

کارخانجات :
کارخانجات بزرگ و کوچک , انبارها میتوانند از مزایای سهولت استفاده از بارکد استفاده کنند که این سیستم با تمام روشهای مدیریتی مثل MRP , WMS و MES سازگار است .

حمل و نقل :
استفاده از بارکد در صنعت حمل و نقل باعث راحتی مدیریت کالاهای ثابت یا در حال حرکت می شود .هماهنگی بارکد با سیستمهای مختلف شبکه ای باعث کاهش هزینه ها و ایجاد خدمات بهتر برای مشتریان می شود .

فروشگاهها :
با استفاده از بارکد در فروشگاهها میتوان کنترل دقیقی روی ورود و خروج کالاها , موجودی انبار و قیمت جنسها در لحظه داشت ضمن اینکه با استفاده از ارتباط بی سیم میتوان به راحتی در لحظه سفارش مشتری را ثبت و خرید را انجام داد .

مراکز درمانی :
استفاده از سیستم بارکد در مراکز درمانی باعث میشود تا مدیریت اطلاعات مهمی نظیر : پیشینه پزشکی بیمار , نوع بیمه و سایر اطلاعات به دست آورد.


بررسی اجمالی استانداردهای رایج برای بارکد و حروف و کاراکترهایی که پشتیبانی می کنند.

استانداردهای رایج برای بارکد

پسورد فایل : behsanandish.com

بارکد چیست؟ قسمت 1
بارکد چیست؟ قسمت 2

بارکد چیست؟

به زبان ساده مى توان گفت: بارکد مجموعه اى است از میله ها یا خطوط سیاه رنگى که معمولاً بر روى زمینه اى سفید چاپ مى شود و به وسیله آن از کالاى خریدارى شده شناسایى لازم به عمل مى آید و قیمت آن مشخص مى شود و اگر به دنبال تعریف دقیق ترى هستید، باید گفت:

بارکد عبارت است از انتقال داده ها از طریق امواج نورى. آنها مجموعه اى از خطوط میله اى موازى با عرضهاى گوناگون (پهن و نازک)هستندکه اندازه هر خط معنا و مفهوم خاصى براى دستگاه بارکدخوان دارد.
در حقیقت دستگاه بارکدخوان ماشینى است که اطلاعات را به شکل بصرى بر روى صفحه نمایش مى دهد.

ضرورت استفاده از بارکد

گرداندن یک فروشگاه کار مشکل و پردردسرى است. مدیران و صاحبان آن باید از میزان موجودى که از هزاران کالاى کوچک و بزرگ دارند، مطلع باشند (کالاهایى که مجبور به خرده فروشى آن هستند و در زمان طولانى از انبارهایشان بیرون مى روند.)

همین طور که فروشگاهها، بزرگ و بزرگتر شدند تا به فروشگاههاى زنجیره اى امروزى رسیدند، کار مشکل و مشکل تر شد. نخست مجبور شدند در فروشگاهها را هرچند وقت یکبار ببندند و تمام کیسه ها و بسته ها و کنسروها را شمارش کنند. کار بسیار دشوارى بود.
این کار سخت و هزینه بردار بیش از یک بار در سال انجام نمى شد (انبارگردانى)، بنابراین مدیران فروشگاهها مجبور بودند بیشتر کارهایشان را بر اساس حدس و گمان انجام دهند و در نهایت این نیاز مادر اختراع شد!

سیستم بارکدگذارى چگونه آغاز شد؟

در سالذ۱۹۳۲ گروهى از دانشجویان رشته مدیریت بازرگانى دانشگاه هاروارد، تصمیم گرفتند روشى را انتخاب کنند تا بر اساس آن مشتریان کالاى مورد نظرشان را از درون کاتالوگى پیدا کنند و سپس با برداشتن کارت هاى خاص چسبانده شده در کنار نام هر کالا و تحویل به مسؤول کنترل و قرار دادن آن در دستگاه کارت خوان و پانچ، مستقیماً کالا را از طریق انبار به باجه کنترل انتقال دهند و صورتحساب کامل را دریافت کنند و مهم تر از همه صاحبان فروشگاه از موجودى انبار خود اطلاعات به روزى داشته باشند. البته ایده سیستم «بارکدینگ» مدرن و پیشرفته از سال ۱۹۴۸ وارد سیستم تجارى شد.

سیستم بارکد امروزى چگونه شروع به کار کرد؟

سال ۱۹۴۸ بود که رئیس یک فروشگاه مواد غذایى در آمریکا از کار کند و بى دقت کارکنان فروشگاه به ستوه آمد و براى پیدا کردن راه حل به مسؤولان دانشگاه (Drexel) مراجعه کرد تا تقاضاى ساخت سیستم کنترل خودکارى را داشته باشد، اما مسؤولان دانشگاه از این نظریه استقبال نکردند.

یکى از دانشجویان فارغ التحصیل این دانشگاه به نام باب سیلور «Bob Silver» این گفت و گو را شنید و آن را با یکى از دوستانش Norman Joseph Woodland در میان گذاشت و تصمیم گرفتند براى ساخت چنین سیستمى شروع به کار کنند. آنها در شروع از رمز و الفباى سیستم مورس الهام گرفتند و سعى کردند با چاپ و طراحى میله هاى پهن و باریک این شیوه را راه اندازى کنند و مدتى بعد هم به فکر سیستم بارکد نقطه اى و دایره اى افتادند.

سال ۱۹۴۹ بود که توانستند اختراع خود را ثبت کنند و در سال ۱۹۵۲ نخستین سیستم بارکدخوان را ساختند. «وودلند» که از سال۱۹۵۱در شرکت IBM مشغول به کار شده بود، توانست با استفاده از موقعیتهایى که در آنجا برایش ایجاد مى شد، به کمک دوستش در سال ۱۹۵۲ دستگاهى به بزرگى یک میز تحریر بسازد و ۲ جزء اصلى در آن تعبیه کرد:

۱- یک حباب (لامپ) ۵۰۰ واتى به عنوان منبع نور.

۲- با استفاده از آنچه در سیستم ساخت فیلم (براى تراک هاى صوتى استفاده مى شد) مجرایى لوله اى ساخت و این لوله را به یک نوسان سنج متصل کرد و سپس یک قسمت کاغذ را به شکل کدهاى خطى در جلوى پرتوى نور خارج شده از منبع نور، علامت گذارى کرد. پرتو منعکس شده به مجرا مى رسید و در طرف دیگر گره اى ناشى از حباب پرقدرت کاغذ را مى سوزاند. او بدون هیچ کم و کاست به آنچه مى خواست، رسیده بود. درحالى که کاغذ حرکت مى کرد، علایم روى دستگاه نوسان سنج تغییراتى مى کرد و در نهایت توانسته بودند دستگاهى داشته باشند که به کمک آن موضوعات چاپ شده، خوانده مى شد.

بعداً متوجه شدند لامپ ۵۰۰ واتى میزان الکتریسیته اى زیادتر از آنچه آنها نیاز داشتند، تولید مى کند و میزان اضافى، علاوه بر بالا بردن هزینه ها، گرماى اضافى هم تولید مى کرد و از طرفى نگاه کردن به آن باعث آسیب چشم مى شد، بنابراین به فکر استفاده از منبعى افتادند که تمام نور مورد نیاز آنها را در فضاى کوچکى متمرکز کند. همان کارى که امروزه «لیزر» انجام مى دهد، اما در سال ۱۹۵۲ لیزر موجود نبود!

بعدها با گسترش و تولید لیزر «Laser» توانستند دستگاههاى بارکدخوان ارزان ترى تولید کنند. گرچه «باب سیلور» فرصت استفاده درست از دانش خود را در شرایط آسان تر نیافت و در ۳۸سالگى فوت کرد، اما همکارش کار را ادامه داد.

در سال ۱۹۷۲ سیستم بارکد نقطه اى نیز در عمل مورد استفاده قرار گرفت، اما این روش چندان موفق نبود (زیرا حین چاپ براحتى مغشوش مى شد.)

در سال ۱۹۷۴ وودلند در IMB سیستم بارکد خطى را گسترش داد و نخستین محصول خرده فروشى (محصولاتى چون آب میوه و آدامس) به این طریق فروخته شد. (و جالب اینکه در حال حاضر یک بسته از آن آدامس در موزه اى در آمریکا نگهدارى مى شود).
و سرانجام آقاى وود در سال ۱۹۹۲ توانست مدال ملى تکنولوژى را بابت به کارگیرى سیستم بارکد دریافت کند. (تنها به خاطر استراق سمع دوستش آقاى سیلور!) خلاصه آنکه، بارکدها و سایر برچسب هاى خوانا در جایى که نیاز به خوانده شدن اطلاعات با پردازش توسط کامپیوتر وجود دارد، استفاده مى شوند و کاربرها به عوض تایپ کردن رشته اى طویل از داده ها، تنها بارکد مورد نظر را جلوى دستگاه بارکدخوان قرار مى دهند و پردازش بدون نیاز به نیروى انسانى به طور کاملاً خودکار انجام مى شود. بنابراین بارکد شیوه شناسایى و تعیین هویت خودکار داده ها است.

رقمى که توسط بارکد تولید مى شود، عموماً محصول خاصى را نشان مى دهد. سیستم بارکدینگ به طور معکوس هم کار مى کند، یعنى قادر است با دریافت رقم مربوط به یک محصول، بارکد مورد نظر را ایجاد بکند و در واقع نوعى خود شناسایى انجام مى شود.
فواید بارکد کردن
۱- مصون بودن از خطاپذیرى به علت کاهش دخالت نیروى انسانى و وارد نشدن دستى اطلاعات.
۲- دسته بندى دقیق اطلاعات.
۳- سرعت بالا به همراه صحت ۱۰۰درصد.
۴- دسترسى آسان به اطلاعات واقعى و حقیقى (در جریان روند مدیریت) البته اگر: با دقت تمام کالاها در فروشگاهها بارکدگذارى شوند تا مراجعه کنندگان دچار دردسرهایى که ما با آن خوب آشنایى داریم، نشوند

منبع


كد 128 امكان كد گذاري همه ی 128 حرف مربوط به مجموعه كاراكترهاي كد اسكي را ارائه مي كند. اين كد با استفاده از خطوط و فضاهاي خالي با 4 پهناي مختلف ، به بيشترين فشردگي ممكن سمبل ها نسبت به روش هاي قديمي تر خود كه از خطوط و فضاهاي خالي با 2 ضخامت مختلف استفاده مي كردند ، رسيده است.

كد 128 ممكن است به صورت دو طرفه (از هر دو جهت ) اسكن شود و محدوديتي هم براي تعداد كاراكترها در هر باركد وجود ندارد. هر چند ممكن است طول باركد با توجه به نوع اسكنر مورد استفاده و يا مكان مورد نظر براي چاپ باركد محدود شود . اما اين روش محدوديتي براي طول باركد ايجاد شده ندارد.

كد 128 سه مجموعه كاراكتري متفاوت دارد كه در جدول مشخصات باركد به نام هاي Code Set a و Code Set B و Code Set C مشخص شده است .هر كدام از اين سه مجموعه كد مي تواند با كاراكتر شروع مربوط به خودش مورد انتخاب واقع شود. كاراكتر خاص `shift` در هر مجموعه به شما امكان مي دهد تا بتوانيد در بين يك كد ست از كد ست هاي ديگر هم استفاده كنيد با اين توصيف امكان استفاده ازچند كد ست در يك بار كد وجود دارد. با استفاده از اين روش طول باركد چاپ شده مي تواند به كمترين حد ممكن خود برسد.

در صورتي كه داده ها فقط شامل اعداد باشد استفاده از مجموعه كد C باعث مي شود تا طول باركد چاپ شده به كمترين حد ممكن تقليل پيدا كند . البته بايد اين نكته را در نظر داشته باشيد كه براي استفاده از Code Set C بايستي تعداد ارقام رشته اي كه مي خواهيد باركد آن را چاپ كنيد زوج بوده و حداقل 4 رقم و يا بيشتر طول داشته باشد.
هر كدام از مجموعه كدهاي a,B,C يك يا چند كاراكتر براي توابع خاص رزرو كرده اند
از ويژگي هاي كد 128 استفاده از رقم كنترل براي بررسي صحت باركد خوانده شده توسط دستگاه اسكنر باركد مي باشد.

ساختار باركد 128 به صورت زير است
• يك فضاي يكنواخت و يا خالي در سمت چپ خطوط باركد
• كاراكتر شروع
• تعداد نامحدودي از داده ها
• رقم كنترل صحت
• كاراكتر خاتمه
• يك فضاي يكنواخت و يا خالي در سمت راست خطوط باركد
پهناي فضاي يكنواخت و يا خالي حداقل بايد 10 برابر پهناي نازكترين خط / نازكترين فاصله خالي در باركد باشد.

هر كاراكتر در باركد 128 تركيبي از 3 خط و 3 فاصله است . (كاراكتر خاتمه داراي 4 خط و 3 فاصله مي باشد ) .هر خط / فاصله خالي مي تواند يكي از 4 واحد پهناي مختلف را داشته باشد . نازكترين خط / فاصله خالي بايد يك چهارم پهن ترين خط/ فاصله خالي باشد. جدول مشخصات باركد پهناي خط/ فاصله خالي براي همه مجموعه كاراكترهاي مربوط به كد 128 را نشان مي دهد. دقت كنيد كه مجموع پهناي خطوط در هر يك از كاراكتر ها عددي زوج و مجموع فواصل خالي براي هر كدام از كاراكترها عددي فرد است. اولين ستون در جدول با عنوان « value » حاوي عددي است كه براي محاسبه رقم كنترل بكار مي رود.

بارکد چیست؟ قسمت 1
بارکد چیست؟ قسمت 2

الگوریتم کلونی مورچه‌ها

الگوریتم کلونی مورچه ها یا ACO همان‌طور که می‌دانیم مسئله یافتن کوتاهترین مسیر، یک مسئله بهینه سازیست که گاه حل آن بسیار دشوار است و گاه نیز بسیار زمانبر. برای مثال مسئله فروشنده دوره گرد را نیز می‌توان مطرح کرد. در این روش(ACo)، مورچه‌های مصنوعی به‌وسیلهٔ حرکت بر روی نمودار مسئله و با باقی گذاشتن نشانه‌هایی بر روی نمودار، همچون مورچه‌های واقعی که در مسیر حرکت خود نشانه‌های باقی می‌گذارند، باعث می‌شوند که مورچه‌های مصنوعی بعدی بتوانند راه‌حل‌های بهتری را برای مسئله فراهم نمایند. همچنین در این روش می‌توان توسط مسائل محاسباتی-عددی بر مبنای علم احتمالات بهترین مسیر را در یک نمودار یافت.

الگوریتم کلونی مورچه ها

روش که از رفتار مورچه‌ها در یافتن مسیر بین محل لانه و غذا الهام گرفته شده؛ اولین بار در ۱۹۹۲ توسط مارکو دوریگو (Marco Dorigo) در پایان نامهٔ دکترایش مطرح شد.

 مقدمه

الگوریتم کلونی مورچه ها

الگوریتم کلونی مورچه الهام گرفته شده از مطالعات و مشاهدات روی کلونی مورچه هاست. این مطالعات نشان داده که مورچه‌ها حشراتی اجتماعی هستند که در کلونی‌ها زندگی می‌کنند و رفتار آنها بیشتر در جهت بقاء کلونی است تا درجهت بقاء یک جزء از آن. یکی از مهمترین و جالبترین رفتار مورچه‌ها، رفتار آنها برای یافتن غذا است و بویژه چگونگی پیدا کردن کوتاهترین مسیر میان منابع غذایی و آشیانه. این نوع رفتار مورچه‌ها دارای نوعی هوشمندی توده‌ای است که اخیراً مورد توجه دانشمندان قرار گرفته است در دنیای واقعی مورچه‌ها ابتدا به طور تصادفی به این سو و آن سو می‌روند تا غذا بیابند. سپس به لانه بر می‌گردند و ردّی از فرومون (Pheromone) به جا می‌گذارند. چنین ردهایی پس از باران به رنگ سفید در می‌آیند و قابل رویت اند. مورچه‌های دیگر وقتی این مسیر را می‌یابند، گاه پرسه زدن را رها کرده و آن را دنبال می‌کنند. سپس اگر به غذا برسند به خانه بر می‌گردند و رد دیگری از خود در کنار رد قبل می‌گذارند؛ و به عبارتی مسیر قبل را تقویت می‌کنند. فرومون به مرور تبخیر می‌شود که از سه جهت مفید است:

مسیر حرکت مورچه ها برای یافتن غذا

  • باعث می‌شود مسیر جذابیت کمتری برای مورچه‌های بعدی داشته باشد. از آنجا که یک مورچه در زمان دراز راه‌های کوتاه‌تر را بیش تر می‌پیماید و تقویت می‌کند هر راهی بین خانه و غذا که کوتاه‌تر (بهتر) باشد بیشتر تقویت می‌شود و آنکه دورتر است کمتر.
  • اگر فرومون اصلاً تبخیر نمی‌شد، مسیرهایی که چند بار طی می‌شدند، چنان بیش از حد جذّاب می‌شدند که جستجوی تصادفی برای غذا را بسیار محدود می‌کردند.
  • وقتی غذای انتهای یک مسیر جذاب تمام می‌شد رد باقی می‌ماند.
یافتن کوتاه ترین مسیر بین غذا و لانه

لذا وقتی یک مورچه مسیر کوتاهی (خوبی) را از خانه تا غذا بیابد بقیهٔ مورچه‌ها به احتمال زیادی همان مسیر را دنبال می‌کنند و با تقویت مداوم آن مسیر و تبخیر ردهای دیگر، به مرور همهٔ مورچه‌ها هم مسیر می‌شوند. هدف الگوریتم مورچه‌ها تقلید این رفتار توسط مورچه‌هایی مصنوعی ست که روی نمودار در حال حرکت اند. مسئله یافتن کوتاه‌ترین مسیر است و حلالش این مورچه‌های مصنوعی اند.

از کابردهای این الگوریتم، رسیدن به راه حل تقریباً بهینه در مسئله فروشنده دوره‌گرد است. به طوری که انواع الگوریتم کلونی مورچه‌ها برای حل این مسئله تهیه شده. زیرا این روش عددی نسبت به روشهای تحلیلی و genetic در مواردی که نمودار مدام با زمان تغییر کند یک مزیت دارد؛ و آن این که الگوریتمی ست با قابلیت تکرار؛ و لذا با گذر زمان می‌تواند جواب را به طور زنده تغییر دهد؛ که این خاصیت در روتینگ شبکه‌های کامپیوتری و سامانه حمل و نقل شهری مهم است.
در مسئله فروشنده دوره گرد باید از یک شهر شروع کرده، به شهرهای دیگر برود و سپس به شهر مبدأ بازگردد بطوریکه از هر شهر فقط یکبار عبور کند و کوتاهترین مسیر را نیز طی کرده باشد. اگر تعداد این شهرها n باشد در حالت کلی این مسئله از مرتبه (n-1)! است که برای فقط ۲۱ شهر زمان واقعاً زیادی می‌برد:

روز۱۰۱۳*۷/۱ = S۱۰۱۶*۴۳۳/۲ = ms۱۰*۱۰۱۸*۴۳۳/۲ =!۲۰

با انجام یک الگوریتم برنامه سازی پویا برای این مسئله، زمان از مرتبه نمایی بدست می‌آید که آن هم مناسب نیست. البته الگوریتم‌های دیگری نیز ارائه شده ولی هیچ‌کدام کارایی مناسبی ندارند. ACO الگوریتم کامل و مناسبی برای حل مسئله TSP است.

الگوریتم کلونی مورچه ها بهترین روش برای حل مسئله ی فروشنده ی دوره گرد

مسئله فروشنده دوره گرد

مزیتهای الگوریتم کلونی مورچه ها

<تبخیر شدن فرومون> و <احتمال-تصادف>به مورچه‌ها امکان پیدا کردن کوتاهترین مسیر را می‌دهد. این دو ویژگی باعث ایجاد انعطاف در حل هرگونه مسئله بهینه‌سازی می‌شوند. مثلاً در گراف شهرهای مسئله فروشنده دوره گرد، اگر یکی از یالها (یا گره‌ها) حذف شود الگوریتم این توانایی را دارد تا به سرعت مسیر بهینه را با توجه به شرایط جدید پیدا کند. به این ترتیب که اگر یال (یا گره‌ای) حذف شود دیگر لازم نیست که الگوریتم از ابتدا مسئله را حل کند بلکه از جایی که مسئله حل شده تا محل حذف یال (یا گره) هنوز بهترین مسیر را داریم، از این به بعد مورچه‌ها می‌توانند پس از مدت کوتاهی مسیر بهینه (کوتاهترین) را بیابند.

کاربردهای الگوریتم کلونی مورچه ها

از کاربردهای الگوریتم کلونی مورچه ها می‌توان به بهینه کردن هر مسئله‌ای که نیاز به یافتن کوتاهترین مسیر دارد، اشاره نمود:

۱. مسیر یابی داخل شهری و بین شهری.

۲. مسیر یابی بین پست‌های شبکه‌های توزیع برق ولتاژ بالا.

۳. مسیر یابی شبکه‌های کامپیوتری. ۴-استفاده ازوب. ۵-استفاده ازACOدربهینه سازی شبکه‌های توزیع آب و…

الگوریتم

پروسهٔ پیدا کردن کوتاه‌ترین مسیر توسط مورچه‌ها، ویژگی‌های بسیار جالبی دارد، اول از همه قابلیت تعمیم زیاد و خود- سازمانده بودن آن است. در ضمن هیچ مکانیزم کنترل مرکزی ای وجود ندارد. ویژگی دوم قدرت زیاد آن است. سیستم شامل تعداد زیادی از عواملی است که به تنهایی بی‌اهمیت هستند بنابراین حتی تلفات یک عامل مهم، تأثیر زیادی روی کارایی سیستم ندارد. سومین ویژگی این است که، پروسه یک فرایند تطبیقی است. از آنجا که رفتار هیچ‌کدام از مورچه‌ها معین نیست و تعدادی از مورچه‌ها همچنان مسیر طولانی‌تر را انتخاب می‌کنند، سیستم می‌تواند خود را با تغییرات محیط منطبق کند و ویژگی آخر اینکه این پروسه قابل توسعه است و می‌تواند به اندازهٔ دلخواه بزرگ شود. همین ویژگی‌ها الهام بخش طراحی الگوریتم‌هایی شده‌اند که در مسائلی که نیازمند این ویژگی‌ها هستند کاربرد دارند. اولین الگوریتمی که بر این اساس معرفی شد، الگوریتم ABC بود. چند نمونه دیگر از این الگوریتم‌ها عبارتند از: AntNet,ARA,PERA,AntHocNet.

انواع مختلف الگوریتم بهینه‌سازی مورچگان

در پایین تعدادی از انواع شناخته شده از الگوریتم بهینه‌سازی مورچگان را معرفی می‌کنیم:

۱- سیستم مورچه نخبگان: در این روش بهترین راه حل کلی در هر تکرار فرمون آزاد می‌کند. همچنین این روش برای تمام مورچه‌های مصنوعی باید انجام شود.

۲- سیستم مورچه ماکسیموم – مینیمم: یک مقدار کمینه و بیشینه برای فرمون تعیین کرده و فقط در هر مرحله بهترین جواب این مقدار را آزاد می‌کند و تمام گره‌های مجاور ان به مقدار فرمون بیشینهمقدار دهی اولیه می‌شوند.

۳- سیستم کلونی مورچه: که در بالا توضیحات کافی داده شده است.

۴- سیستم مورچه بر اساس رتبه: تمام راه حل‌های بدست آماده بر اساس طول جواب رتبه‌بندی می‌شوند و بر اساس همین رتبه‌بندی مقدار فرمون آزاد سازی شده توسط آنها مشخص خواهد شد و راه حل با طول کمتر از راه حل دیگر با طول بیشتر مقدار فرمون بیشتری آزاد می‌کند.

۵ – سیستم مورچه متعامد مداوم: در این روش مکانیزم تولید فرمون به مورچه اجازه می‌دهد تا برای رسیدن به جواب بهتر و مشترک با بقیه مورچه‌ها جستجو انجام دهد با استفاده از روش طراحی متعامد مورچه می‌تواند در دامنه تعریف شده خود به صورت مداوم برای بدست آوردن بهترین جواب جستجو کند که این عمل به هدف رسیدن به جواب بهینه و صحیح ما را نزدیک می‌کند. روش طراحی متعامد می‌تواند به دیگر روش‌های جستجو دیگر گسترش پیدا کنند تا به مزیت‌های این روش‌های جستجو اضافه کند.

منبع


انسان هميشه براي الهام گرفتن به جهان زنده پيرامون خود نگريسته است. يکي از بهترين طرح هاي شناخته شده، طرح پرواز انسان است که ابتدا لئورناردو داوينچي(1519-1452) طرحي از يک ماشين پرنده را بر اساس ساختمان بدن خفاش رسم نمود. چهار صد سال بعد کلمان آدر ماشين پرنده اي ساخت که داراي موتور بود و بجاي بال از ملخ استفاده مي کرد.

هم اکنون کار روي توسعه سيستم هاي هوشمند با الهام از طبيعت از زمينه هاي خيلي پرطرفدار هوش مصنوعي است. الگوريتمهاي ژنتيک که با استفاده از ايده تکاملي دارويني و انتخاب طبيعي مطرح شده، روش بسيار خوبي براي يافتن مسائل بهينه سازيست. ايده تکاملي دارويني بيانگر اين مطلب است که هر نسل نسبت به نسل قبل داراي تکامل است و آنچه در طبيعت رخ مي دهد حاصل ميليون ها سال تکامل نسل به نسل موجوداتي مثل مورچه است.

الگوريتم کلونی مورچه براي اولين بار توسط دوريگو (Dorigo) و همکارانش به عنوان يک راه حل چند عامله (Multi Agent) براي مسائل مشکل بهينه سازي مثل فروشنده دوره گرد     (TSP :Traveling Sales Person) ارائه شد.

عامل هوشند(Intelligent Agent) موجودي است که از طريق حسگر ها قادر به درک پيرامون خود بوده و از طريق تاثير گذارنده ها مي تواند روي محيط تاثير بگذارد.

الگوريتم کلونی مورچه الهام گرفته شده از مطالعات و مشاهدات روي کلونی مورچه هاست. اين مطالعات نشان داده که مورچه ها حشراتي اجتماعي هستند که در کلونی ها زندگي مي کنند و رفتار آنها بيشتر در جهت بقاء کلونی است تا درجهت بقاء يک جزء از آن. يکي از مهمترين و جالبترين رفتار مورچه ها، رفتار آنها براي يافتن غذا است و بويژه چگونگي پيدا کردن کوتاهترين مسير ميان منابع غذايي و آشيانه. اين نوع رفتار مورچه ها داراي نوعي هوشمندي توده اي  است که اخيرا مورد توجه دانشمندان قرار گرفته است.بايد تفاوت هوشمندي توده اي(کلونی) و هوشمندي اجتماعي را روشن کنيم.

در هوشمندي اجتماعي عناصر ميزاني از هوشمندي را دارا هستند. بعنوان مثال در فرآيند ساخت ساختمان توسط انسان، زماني که به يک کارگر گفته ميشود تا يک توده آجر را جابجا کند، آنقدر هوشمند هست تا بداند براي اينکار بايد از فرغون استفاده کند نه مثلا بيل!!! نکته ديگر تفاوت سطح هوشمندي افراد اين جامعه است. مثلا هوشمندي لازم براي فرد معمار با يک کارگر ساده متفاوت است.

در هوشمندي توده اي عناصر رفتاري تصادفي دارند و بين آن ها هيچ نوع ارتباط مستقيمي وجود ندارد و آنها تنها بصورت غير مستقيم و با استفاده از نشانه ها با يکديگر در تماس هستند. مثالي در اين مورد رفتار موريانه ها در لانه سازيست.

جهت علاقه مند شدن شما به اين رفتار موريانه ها وتفاوت هوشمندي توده اي و اجتماعي توضيحاتي را ارائه مي دهم :

فرآيند ساخت لانه توسط موريانه ها مورد توجه دانشمندي فرانسوي به نام گرس قرار گرفت. موريانه ها براي ساخت لانه سه فعاليت مشخص از خود بروز مي دهند. در ابتدا صدها موريانه به صورت تصادفي به اين طرف و آن طرف حرکت مي کنند. هر موريانه به محض رسيدن به فضايي که کمي  بالاتر از سطح زمين قرار  دارد شروع به ترشح بزاق مي کنند و خاک را به بزاق خود آغشته مي کنند. به اين ترتيب گلوله هاي کوچک خاکي با بزاق خود درست مي کنند. عليرغم خصلت کاملا تصادفي اين رفتار، نتيجه تا حدي منظم است.

در پايان اين مرحله در منطقه اي محدود تپه هاي بسيار کوچک مينياتوري از اين گلوله هاي خاکي آغشته به بزاق شکل مي گيرد. پس از اين، همه تپه هاي مينياتوري باعث مي شوند تا موريانه ها رفتار ديگري از خود بروز دهند. در واقع اين تپه ها به صورت نوعي نشانه  براي موريانه ها عمل مي کنند. هر موريانه به محض رسيدن به اين تپه ها با انرژي بسيار بالايي شروع به توليد گلوله هاي خاکي با بزاق خود مي کند. اين کار باعث تبديل شدن تپه هاي مينياتوري به نوعي ستون مي شود. اين رفتار ادامه مي يابد تا زماني که ارتفاع هر ستون به حد معيني برسد. در اين صورت  موريانه ها رفتار سومي از خود نشان مي دهند. اگر در نزديکي ستون فعلي ستون ديگيري نباشد بلافاصله آن ستون را رها مي کنند در غير اين صورت يعني در حالتي که در نزديکي اين ستون تعداد قابل ملاحظه اي ستون ديگر باشد، موريانه ها شروع به وصل کردن ستونها و ساختن لانه مي کنند.

تفاوتهاي هوشمندي اجتماعي انسان با هوشمندي توده اي موريانه را در همين رفتار ساخت لانه مي توان مشاهده کرد. کارگران ساختماني کاملا بر اساس يک طرح از پيش تعيين شده عمل مي کنند، در حالي که رفتار اوليه موريانه ها کاملا تصادفي است. علاوه بر اين ارتياط مابين کارگران سختماني مستقيم و از طريق کلمات و … است ولي بين موريانه ها هيچ نوع ارتباط مستقيمي وجود ندارد و آنها تنها بصورت غير مستقيم و از طريق نشانه ها با يکديگر در تماس اند. گرس نام اين رفتار را Stigmergie گذاشت، به معني رفتاري که هماهنگي مابين موجودات را تنها از طريق تغييرات ايجاد شده در محيط ممکن مي سازد.

 بهينه سازي مسائل به روش کلونی مورچه ها (ACO) :

همانطور که مي دانيم مسئله يافتن کوتاهترين مسير، يک مسئله بهينه سازيست که گاه حل آن بسيار دشوار است و گاه نيز بسيار زمانبر. بعنوان مثال مسئله فروشنده دوره گرد(TSP). در اين مسئله فروشنده دوره گرد بايد از يک شهر شروع کرده، به شهرهاي ديگر برود و سپس به شهر مبدا بازگردد بطوريکه از هر شهر فقط يکبار عبور کند و کوتاهترين مسير را نيز طي کرده باشد. اگر تعداد اين شهرها n باشد در حالت کلي اين مسئله از مرتبه (n-1)! است که براي فقط 21 شهر زمان واقعا زيادي مي برد:

روز1013*7/1 =  S1016*433/2 = ms10*1018*433/2 = !20

با انجام يک الگوريتم برنامه سازي پويا براي اين مسئله ، زمان از مرتبه نمايي بدست مي آيد که آن هم مناسب نيست. البته الگوريتم هاي ديگري نيز ارائه شده ولي هيچ کدام کارايي مناسبي ندارند. ACO الگوريتم کامل و مناسبي براي حل مسئله TSP است.

مورچه ها چگونه مي توانند کوتاهترين مسير را پيدا کنند؟

مورچه ها هنگام راه رفتن از خود ردي از ماده شيميايي فرومون(Pheromone) بجاي مي گذارند البته اين ماده بزودي تبخير مي شد ولي در کوتاه مدت بعنوان رد مورچه بر سطح زمين باقي مي ماند. يک رفتار پايه اي ساده در مورچه هاي وجود دارد :

آنها هنگام انتخاب بين دو مسير بصورت احتمالاتي( Statistical)  مسيري را انتخاب مي کنند که فرومون بيشتري داشته باشد يا بعبارت ديگر مورچه هاي بيشتري قبلا از آن عبور کرده باشند. حال دقت کنيد که همين يک تمهيد ساده چگونه منجر به پيدا کردن کوتاهترين مسير خواهد شد :

همانطور که در شکل 1-1 مي بينيم مورچه هاي روي مسير AB در حرکت اند (در دو جهت مخالف) اگر در مسير مورچه ها مانعي قرار ديهم(شکل 2-1) مورچه ها دو راه براي انتخاب کردن دارند. اولين مورچه ازA  مي آيد و بهC  مي رسد، در مسير هيچ فروموني نمي بيند بنابر اين براي مسير چپ و راست احتمال يکسان مي دهد و بطور تصادفي و احتمالاتي مسير CED را انتخاب مي کند. اولين مورچه اي که مورچه اول را دنبال مي کند زودتر از مورچه اولي که از مسير CFD رفته به مقصد مي رسد. مورچه ها در حال برگشت و به مرور زمان يک اثر بيشتر فرومون را روي CED حس مي کنند و آنرا بطور احتمالي و تصادفي ( نه حتما و قطعا)  انتخاب مي کنند. در نهايت مسير CED بعنوان مسير کوتاهتر برگزيده مي شود. در حقيقت چون طول مسير CED کوتاهتر است زمان رفت و برگشت از آن هم کمتر مي شود و در نتيجه مورچه هاي بيشتري نسبت به مسير ديگر آنرا طي خواهند کرد چون فرومون بيشتري در آن وجود دارد.

نکه بسيار با اهميت اين است که هر چند احتمال انتخاب مسير پر فرومون ت توسط مورچه ها بيشتر است ولي اين کماکان احتمال است و قطعيت نيست. يعني اگر مسير CED پرفرومون تر از CFD باشد به هيچ عنوان نمي شود نتيجه گرفت که همه مورچه ها از مسيرCED  عبور خواهند کرد بلکه تنها مي توان گفت که مثلا 90% مورچه ها از مسير کوتاهتر عبور خواهند کرد. اگر فرض کنيم که بجاي اين احتمال قطعيت وجود مي داشت، يعني هر مورچه فقط و فقط مسير پرفرومون تر را انتخاب ميکرد آنگاه اساسا اين روش ممکن نبود به جواب برسد. اگر تصادفا اولين مورچه مسيرCFD(مسير دورتر) را انتخاب مي کرد و ردي از فرومون بر جاي مي گذاشت آنگاه همه مورچه ها بدنبال او حرکت مي کردند و هيچ وقت کوتاهترين مسير يافته نمي شد. بنابراين تصادف و احتمال نقش عمده اي در ACO بر عهده دارند.

نکته ديگر مسئله تبخير شدن فرومون بر جاي گذاشته شده است. برفرض اگر مانع در مسير  AB برداشته شود و فرومون تبخير نشود مورچه ها همان مسير قبلي را طي خواهند کرد. ولي در حقيقت اين طور نيست. تبخير شدن فرومون و احتمال به مورچه ها امکان پيدا کردن مسير کوتاهتر جديد را مي دهند.

1-1
پیدا کردن کوتاه ترین مسیر 1

2-1

پیدا کردن کوتاه ترین مسیر 2

3-1

پیدا کردن کوتاه ترین مسیر 3

4-1

پیدا کردن کوتاه ترین مسیر 4

مزيت هاي ACO :

همانطور که گقته شد «تبخير شدن فرومون» و «احتمال-تصادف» به مورچه ها امکان پيدا کردن کوتاهترين مسير را مي دهند. اين دو ويژگي باعث ايجاد انعطاف در حل هرگونه مسئله بهينه سازي مي شوند. مثلا در گراف شهرهاي مسئله فروشنده دوره گرد، اگر يکي از يالها (يا گره ها) حذف شود الگوريتم اين توانايي را دارد تا به سرعت مسير بهينه را با توجه به شرايط جديد پيدا کند. به اين ترتيب که اگر يال (يا گره اي) حذف شود ديگر لازم نيست که الگوريتم از ابتدا مسئله را حل کند بلکه از جايي که مسئله حل  شده تا محل حذف يال (يا گره) هنوز بهترين مسير را داريم، از اين به بعد مورچه ها مي توانند پس از مدت کوتاهي مسير بهينه(کوتاهترين) را بيابند.

کاربردهاي ACO :

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

1. مسير يابي داخل شهري و بين شهري
2. مسير يابي بين پست هاي شبکه هاي توزيع برق ولتاژ بالا

3. مسير يابي شبکه هاي کامپيوتري

مسير يابي شبکه هاي کامپيوتري با استفاده از ACO :

اطلاعات بر روي شبکه بصورت بسته هاي اطلاعاتي کوچکي (Packet) منتقل مي شوند. هر يک از اين بسته ها بر روي شبکه در طي مسير از مبدا تا مقصد بايد از گره هاي زيادي که مسيرياب (Router) نام دارند عبور مي کنند. در داخل هر مسيرياب جدولي قرار دارد تا بهترين و کوتاهترين مسير بعدي تا مقصد از طريق آن مشخص مي شود، بنابر اين بسته هاي اطلاعاتي حين گذر از مسيرياب ها با توجه به محتويات اين جداول عبور داده مي شوند.

روشي بنام ACR : Ant Colony Routering پيشنهاد شده که بر اساس ايده کلونی مورچه به بهينه سازي جداول مي پردازيد و در واقع به هر مسيري با توجه به بهينگي آن امتياز مي دهد. استفاده از ACR به اين منظور داراي برتري نسبت به ساير روش هاست که با طبيعت ديناميک شبکه سازگاري دارد، زيرا به عنوان مثال ممکن است مسيري پر ترافيک شود يا حتي مسير يابي (Router) از کار افتاده باشد و بدليل انعطاف پذيري که ACO در برابر اين تغييرات دارد همواره بهترين راه حل بعدي را در دسترس قرار مي دهد.

الگوریتم کلونی مورچه ها قسمت 1
الگوریتم کلونی مورچه ها قسمت 2
الگوریتم کلونی مورچه ها قسمت 3

چكيده

امروزه امنيت فناوري اطلاعات و قابليت ذخيره، انتقال و پردازش اطلاعات بدون هرگونه تغيير توسط كاربران غيرمجاز، بزرگترين چالش در عصر اطلاعات و ارتباطات به شمار مي رود. اين مسئله در مواردي همچون انتخابات، آزمون و بانكداري الكترونيك از اهميت به سزايي برخوردار است. استفاده از راهكاري كه ضمن فراهم نمودن كنترل هاي امنيتي مناسب بتواند از مداخله ساير عوامل خارجي، در دستكاري داده ها و دستبردهاي غيرمجاز به اطلاعات جلوگيري نمايد همواره به عنوان موضوعي مهم، مورد نظر كارشناسان امنيت اطلاعات است. به همين منظور، استفاده از فناوري هايي همچون زيست سنجی به طور جدي مد نظر قرار گرفته اند.
در اين مقاله سعي مي شود تا با بررسي ويژگي هاي مورد استفاده در فناوري زيست سنجی، ضمن بيان ضعف هايي كه ويژگي هاي زيست سنجشي فعلي با آن روبرو هستند، راهكاري اثربخش و كاربردي براي جلوگيري از نفوذ به سيستم ها از طريق فناوري زيست سنجی ارايه گردد.

1- مقدمه

يكي از اساسي ترين مسايل در خدمات الكترونيك و تأمين امنيت در فرآيندهاي الكترونيكي، جلوگيري از دسترسي غيرمجاز به داده ها و اطلاعات است كه اين دسترسي نامجاز معمولاً با اهدافي همچون نفوذ به سيستم ها، شنود غيرقانوني، وقفه در انتقال اطلاعات، تخريب، تغيير و حذف داده ها به منظور بي اعتبارسازي اطلاعات يا ايجاد خلل در ارايه خدمات الكترونيك صورت مي گيرد. بنابراين از آن جا كه چالش اصلي در خدمات الكترونيك و تأمين امنيت اطلاعات در شبكه هاي رايانه اي، اطمينان كافي از دسترسي فرد مجاز و در زمان هاي مجاز به اطلاعات است فرآيند تصديق هويت امن و روش هاي احراز آن از مهم ترين مسايل در برقراري امنيت به حساب مي آيد.
تاكنون روش ها و تجهيزات بسيار مختلفي براي بررسي و شناسايي هويت كاربران، پيشنهاد گرديده است كه در مراكز زيادي نيز مورد استفاده قرار گرفته اند اما متأسفانه هر كدام از اين روش ها داراي معايبي هستند كه موجب كاركرد نادرست آن ها شده است. از اين رو، انتخاب شيوه مناسبي كه علاوه بر احراز هويت كاربران در كوتاهترين زمان ممكن، بتواند امنيت لازم را در سيستم هاي الكترونيكي تضمين نمايد همواره به عنوان يك مسئله اساسي مطرح بوده است.
يكي از روش هايي كه با استفاده از آن سعي مي شود تا با احراز هويت كاربران و جلوگيري از دسترسي افراد نامجاز به داده ها، قابليت اطمينان به اطلاعات همچنان حفظ گردد، بهره گيري از فناوري زيست سنجی براي شناسايي كاربران در هنگام دسترسي به سيستم هاي اطلاعاتي مي باشد.

2- فناوري زيست سنجی

استفاده از خصوصيات فيزيولوژيكي يا رفتاري فرد و تحليل آن به منظور شناسايي آن فرد كه تحت عنوان فناوري زيست سنجی شناخته مي شود به نوع خاصي از روش هاي امنيتي گفته مي شود كه در آن براي كنترل دسترسي و برقراري امنيت، از خواص قابل اندازه گيري بدن انسان يا هر موجود زنده ديگري استفاده مي شود. همان گونه كه از كلمه زيست سنجی برمي آيد در اين روش با استفاده از الگوريتم هاي رياضي، برداشت هاي ثابت و يكتايي از اندام هاي بدن مي شود كه مي توان از آن به عنوان يك كلمه عبور يكسان و غيرقابل تغيير استفاده كرد. بنابراين در روش زيست سنجی، از ويژگي هاي فيزيولوژيكي يا رفتاري يك شخص براي شناسايي و تأييد خودكار هويت او در سيستم استفاده مي شود كه يا نيازمند تماس فيزيكي مستقيم شخص با يك پويشگر زيست سنجشي است (مانند اثر انگشت) و يا به تماس فيزيكي فرد با پويشگر نيازي نيست (مانند شكل صورت، اجزاي چهره، تن صدا و …).
معمولاً ويژگي هاي انسان ها براي آن كه بتواند در فناوري زيست سنجی مورد استفاده قرار گيرد، با 9 پارامتر مورد ارزيابي قرار مي گيرد كه عبارتند از:

  • * عموميت: هر شخص داراي آن ويژگي باشد.
  • * يكتايي: چه تعداد نمونه متفاوت را مي توان تفكيك كرد.
  • * دوام: معياري براي سنجش آن كه يك ويژگي، چه مدت عمر مي كند.
  • * قابليت ارزيابي: سهولت استفاده براي ارزيابي نمونه هاي متفاوت؛
  • * كارايي: دقت، سرعت و پايداري روش مورد استفاده؛
  • * مقبوليت: ميزان پذيرش تكنولوژي؛
  • * جايگزيني: سهولت در استفاده از جايگزيني؛
  • * تصديق هويت: در تصديق هويت، مشخصه يك فرد به پايگاه اطلاعات ارسال مي شود و هدف، بررسي آن به منظور تصديق هويت آن فرد مي باشد كه پاسخ سيستم، الزاماً مثبت يا منفي است.
  • * تشخيص هويت: در سيستم هاي تشخيص هويت، مشخصه زيست سنجی فرد به سيستم ارايه مي شود و سيستم با جستجوي پايگاه اطلاعات، مشخصات فرد را در صورت موجود بودن استخراج مي كند.

براي اين كه يك ويژگي بدن بتواند به عنوان يك وسيله اندازه گيري مطرح شود بايد شرايط خاصي داشته باشد، به عنوان مثال، بايد ثابت باشد. به همين خاطر نمي توان رنگ مو يا وزن را به عنوان يك خاصيت زيست سنجی در نظر گرفت زيرا به طور دايم در حال تغيير و تبديل هستند. در ضمن، خواص انتخاب شده مي بايست نشان دهنده يك انسان خاص بوده و همچنين به سهولت قابل دسترسي باشد يعني بررسي آن نياز به زحمت زيادي نداشته باشد.
به طور كلي، ويژگي هاي زيست سنجی را مي توان به 2 دسته تقسيم نمود:

  • 1. خصوصيات وابسته به فيزيك انسان ها: اين دسته از ويژگي ها به مجموعه اي از خصوصيات همراه انسان اعم از اثر انگشت، عنبيه چشم، چهره، DNA و … اشاره دارد. اين ويژگي ها از بدو تولد انسان و گاهي قبل از تولد، شروع به شكل گيري نموده و تا آخر عمر، به طور ثابت و غيرقابل تغيير در بدن انسان باقي مي مانند.
  • 2. خصوصيات رفتاري انسان ها: اين دسته از ويژگي ها در حقيقت، خصوصيات ناشي از رفتارهاي انسان هاست، همانند چگونگي راه رفتن، نحوه فشردن دكمه ها (مثلاً تلفن همراه) و … كه مي تواند بيانگر مشخصات يك انسان خاص باشد، مانند راه رفتن يك انسان كه گاهي با نگاه كردن آن از پشت سر مي توان تشخيص داد كه وي كدام شخص است.

3- مزاياي استفاده از سيستم هاي امنيتي زيست سنجی

با استفاده از روش هاي زيست سنجی مي توان تقريباً مطمئن شد همان كسي كه انتظارش مي رود، به امكانات و منابع دسترسي دارد. براي مثال، اثر انگشت، همواره يكتا و يكسان است و مشكلاتي مانند فراموش كردن رمز عبور يا گم كردن آن در اين روش وجود ندارد، سرعت بسيار بالايي دارد و براي كاربران عادي نياز به آموزش نمي باشد، امكان سرقت دستگاه هاي زيست سنجی نيز بسيار كم است يا در پاره اي از مواقع، صفر مي باشد. تمام اين مزايا باعث شده است كه امروزه براي تأمين امنيت اكثر سيستم هاي رايانه اي و مبتني بر شبكه، به طور گسترده اي از روش هاي زيست سنجی استفاده شود. البته سيستم هاي زيست سنجی داراي معايب خاص خودشان هستند اما به دليل مزاياي بسيار زيادي كه نسبت به روش هاي سنتي شناسايي افراد دارند، استفاده از آن ها روز به روز در حال افزايش است.

4- معايب استفاده از فناوري زيست سنجی

اگرچه فناوري زيست سنجی در طول ساليان متمادي به عنوان روشي براي احراز هويت كاربران توسط سازمان هاي مختلفي در سطح جهان، مورد استفاده قرار گرفته اما در سال هاي اخير، با افزايش دانش نفوذگران كه در پي رشد سريع فناوري اطلاعات توانسته اند با تحليل سازوكارهاي عملياتي سيستم هاي زيست سنجی، راه هاي نفوذي به درون آن ها پيدا كنند، دستخوش تغييرات بزرگي گرديده است. امروزه با نفوذهايي كه به سيستم هاي اطلاعاتي از طريق اين فناوري صورت مي گيرد، شايسته است روش هاي بهره گيري از آن مورد بازنگري جدي قرار گيرد تا علاوه بر كاهش خطرات و تهديدها، اعتماد عمومي كاربران و به خصوص سازمان هاي استفاده كننده از اين فناوري نيز همچنان حفظ گردد.

5- روش هاي تعيين هويت در فناوري زيست سنجی و بررسي نقاط ضعف آنها

روش هاي متنوعي براي تعيين هويت زيست سنجی وجود دارد، مانند تعيين هويت از طريق اثر انگشت، بررسي دقيق كف دست، رگ هاي كف دست، كنترل شبكيه چشم، تعيين كنترل رگ هاي چشم، هندسه صورت، امضا، صدا، عنبيه چشم، راه رفتن، تعيين هويت از طريق چهره و … كه در زير به بيان مزايا و مشكلات هر يك از آن ها مي پردازيم.

يكي از ويژگي هاي زيست سنجشي كه معمولاً به صورت گسترده در هنگام شناسايي كاربران مورد استفاده قرار مي گيرد، اثر انگشت است كه از قديمي ترين و رايج ترين روش هاي تشخيص هويت نيز به شمار مي رود. پوست نوك انگشت ها داراي يكسري شيارها و خطوط برآمده اي است كه از يك طرف انگشت به طرف ديگر ادامه دارد و در مجموع به عنوان اثر انگشت شناخته مي شود. اين خطوط داراي يكسري نقاط مشخصي هستند كه به آن ها ويژگي يا مشخصه مي گويند. اين ويژگي ها شامل كمان ها، مارپيچ ها، حلقه ها، انتهاي لبه ها، انشعاب ها، نقطه ها (شيارهاي نزديك به لبه ها)، جزاير (دو انشعاب نزديك به هم)، تقاطع (نقطه تلاقي دو يا چند لبه) و منفذها مي باشند كه در نهايت، از الگوي ايجاد شده توسط آن ها براي تشخيص هويت افراد استفاده مي شود.

تعيين هويت افراد با استفاده از اثر انگشت، نسبت به ساير روش هاي زيست سنجی تعيين هويت به طور گسترده اي مورد استفاده قرار مي گيرد. امروزه از اثر انگشت در صنايع رايانه اي مانند كنترل لايسنس نرم افزارها، ورود به شبكه و سيستم ها و مواردي همچون بازكردن درب اتومبيل، روشن كردن خودرو، بازكردن قفل گاو صندوق و درب ها به طور گسترده اي استفاده مي شود. بزرگترين دليل استفاده گسترده و عمومي از اثر انگشت به عنوان ابزار تعيين هويت اين است كه اثر انگشت افراد، منحصر به فرد بوده و در طول عمر شخص تغيير نمي كند.

اولين استفاده از اثر انگشت در مسايل تشخيص هويت به حدود سال 1900 برمي گردد. در ابتدا براي تشخيص يك اثر انگشت از ديگري سعي در تطبيق خطوط آن بود كه به علت وجود خطاي انساني، معمولاً شامل خطاهايي در اين زمينه است. براي رفع اين مشكل، دستگاه هايي براي تشخيص اثر انگشت ايجاد شدند. از ابتدايي ترين اين دستگاه ها مي توان به دستگاه هاي حسگر اثر انگشت نوري اشاره كرد كه در حدود سال 1970 طراحي گرديدند كه بر اساس بازتابش داخلي كار مي كردند. به اين معني كه منبع نور، به سطح شيشه اي كه انگشت روي آن قرار داشت تابيده شده و بازتابش آن جذب مي شود. مقدار اين نور بازتابيده شده بستگي به عمق شيارهاي سطح پوست و بيشترين بازتابش، مربوط به سطح در تماس پوست با شيشه است. مزاياي اين طرح عبارتند از صرف زمان اندك براي شناسايي، مقاوم بودن در مقابل تداخل الكترواستاتيكي و قيمت ارزان علاوه بر وضوح خوب كه در مقابل معايبي همچون اندازه بزرگ دستگاه، امكان جعل بالا و پيچيدگي هاي به كار رفته، قرار دارند.

دستگاه هاي ديگري كه براي ثبت اثر انگشت طراحي گرديدند داراي حسگرهايي از نوع حالت جامد، مانند حسگر اثر انگشت گرمايي بودند. اين نوع حسگرها از تفاوت گرمايي بين شكاف ها و برآمدگي هاي اثر انگشت به عنوان پارامتري تعيين كننده استفاده مي كنند. بدين معني كه جاهايي از پوست دست (برآمدگي ها) كه در تماس با سطح حسگر مي باشند، تفاوت گرمايي را نسبت به نقاطي كه در تماس نيستند (شيارها) احساس مي كنند. مزاياي اين حسگر نيز حجم كم دستگاه، ارزان بودن و امكان يكپارچگي آن ها مي باشد كه البته معايبي چون توان مصرفي بالا، دقت پايين و تأثيرپذيري از دماي محيط را هم دارند.
از حدود سال 1997، استفاده از دانش MEMS در حسگرهاي اثر انگشت آغاز گرديد كه تاكنون چند نمونه از دستگاه هايي كه با اين نوع از حسگرها طراحي و ساخته شده اند روانه بازار گرديده اند كه آخرين نمونه آن ها در سال 2008 ارايه گرديد.در اين دستگاه ها از نوعي حسگر به نام حسگرهاي خازني استفاده شده است كه بر پايه تغييرات خازني كار مي كنند و شامل دو صفحه فلزي مي باشند كه نقش الكترودهاي خازن را دارند. براي ايجاد تغييرات خازني، يكي از صفحه ها بسته به نوع نياز، متحرك و ديگري ثابت است. صفحه متحرك كه ديافراگم ناميده مي شود بر اثر اعمال فشار خارجي جابه جا شده و باعث كم شدن فاصله هوايي بين الكترودهاي خازن گرديده و تغييرات خازني را موجب مي شود.

در حسگرهاي خازني مورد استفاده در حسگر اثر انگشت، صفحه بالايي به عنوان ديافراگم در نظر گرفته مي شود كه بر اثر فشار اعمالي بر اثر تماس با سطح پوست دست (برآمدگي هاي سطح پوست انگشت) جابه جا مي شود. از عوامل مؤثر در عملكرد حسگرهاي اثر انگشت MEMS مي توان مواردي همچون ابعاد ديافراگم، ساختار خازن، مواد تشكيل دهنده ديافراگم كه باعث حساسيت خيلي زياد حسگرها مي شود و همچنين اندازه، شكل و ضخامت ديافراگم را بيان نمود و از آن جا كه ساختار حسگر انگشت بر پايه ساختار اين خازن ها بنا نهاده شده است، با افزايش حساسيت مكانيكي و الكتريكي اين خازن ها، حساسيت حسگر اثر انگشت نيز بهبود پيدا مي كند.

هر چند كه استفاده از ويژگي اثر انگشت به عنوان يك روش مطلوب به حساب نمي آيد اما به علت كم هزينه تر بودن آن نسبت به ساير روش هاي زيست سنجشي، مورد اقبال بيشتري قرار گرفته است. تصديق هويتي كه به وسيله اثر انگشت صورت مي گيرد، سريع و قابل اطمينان بوده و چون به صورت مستقيم توسط ابزارهاي ديجيتالي تهيه مي گردد، داراي جزييات بيشتر، وضوح بهتر و دقت بالاتري مي باشد. همچنين اين روش نسبت به ساير روش هاي زيست سنجشي از خطاي كمتر و هزينه پايين تري هم برخوردار بوده و تجهيزات و دستگاه هاي ثبت اثر انگشت نيز كوچكتر مي باشند و فضاي كمتري را اشغال مي كنند.

از مهمترين مشكلاتي كه سيستم هاي ثبت اثر انگشت با آن مواجه هستند امكان جعل اثر انگشت توسط لايه هاي نازكي از ژلاتين يا خميرهاي سيليكن قابل جعل است. روشي كه مي توان اعتبار اين زيست سنجه را حفظ نمود، استفاده از چند اثر انگشت در هنگام احراز هويت يا اثر انگشت همراه با كارت شناسايي يا اثر انگشت به همراه رمز عبور مي باشد كه از آن ها به عنوان روش هاي شناسايي دو مرحله اي ياد مي شود. روش بهتر ديگري كه مي توان بدون استفاده از ساير تجهيزات جانبي با استفاده از زيست سنجه هاي اثر انگشت به احراز هويت كاربران پرداخت، بهره گيري از عرق و گرماي انگشت به عنوان نشانه هايي از حيات است كه امكان تقلب را كاهش مي دهد. همچنين با تعيين مدت زمان پويش اثر انگشت (مثلاً 2 ثانيه) مي توان از جا زدن افراد به جاي ديگري در اين مدت زمان كم جلوگيري نمود.

استفاده از روش هاي زيست سنجی در فرآيند تصديق هويت از طريق اثر انگشت، داراي چندين نقطه ضعف عمده مي باشد كه در زير به برخي از آن ها اشاره مي شود:

  • * جعل ورودي: يكي از رايج ترين حملات موجود در سيستم هاي تصديق هويت زيست سنجی مانند اثر انگشت، جعل ورودي يا وارد كردن يك ورودي به جاي ورودي واقعي مي باشد. اين حمله ساده ترين راهكار براي يك مهاجم است تا بتواند با اثر انگشت مصنوعي و ساختگي، فرآيند تصديق هويت را انجام دهد.

تاكنون تحقيق ها و پژوهش هاي بسياري براي جلوگيري از ورود ويژگي هاي زيست سنجی غيرواقعي و ساختگي پيشنهاد شده است كه تا حد قابل قبولي توانسته اند اين سيستم ها را امن نمايند. يكي از راه هايي كه براي غلبه بر ورودي هاي نامعتبر و جعلي در سيستم هاي تشخيص هويت بر پايه اثر انگشت وجود دارد، روش تشخيص زنده نام دارد. بدين معني كه از تأييد اثر انگشت ساختگي و مصنوعي توسط عرق كردن يا حرارتي كه روي انگشتان وجود دارد از نشانه هايي براي تازگي و زنده بودن انگشت استفاده مي شود كه اين ويژگي ها در انگشت مصنوعي يا ساير روش هاي جعل وجود ندارد.

  • * كيفيت پايين ورودي: تكنيك هاي تطابق اثر انگشت به 2 صورت ممكن است انجام گيرند: بر پايه جزييات يا بر اساس همبستگي. در تكنيك هاي ويژگي محور، ابتدا نقاط يا ويژگي ها مشخص مي شود و سپس محل نسبي آن روي انگشت نگاشت مي شود. زماني كه كيفيت پايين باشد استخراج دقيق نقاط ويژگي مشكل مي باشد.

راه حل غلبه بر مشكل كيفيت پايين نمونه ها استفاده از توابع پيش پردازش است كه با كمك آن، تيرگي و ابهام موجود در نمونه هاي تصاوير، كاهش يافته و وضوح تصاوير افزايش مي يابد. همچنين انجام عمل پيش فيلترينگ روي پشت زمينه نمونه ها، نقاط تيره و مبهم را به كمترين مقدار خود كاهش مي دهد. در كنار اين اقدام ها، قطعه بندي نمونه هاي اثر انگشت نيز به وسيله شناسايي ميزان ويژگي ها در محل مورد نظر انجام مي شود كه به آن ROI (روشي است كه در آن به جاي اين كه مجبور باشيم كل تصوير را پردازش كنيم فقط ناحيه به خصوصي را كه مد نظرمان است يا كانال به خصوصي را كه مي خواهيم بر روي آن كار كنيم، پردازش مي كنيم) مي گويند.
در اين روش، از يك وب كم يا سنسور ساده در ورودي استفاده مي شود كه فقط كافي است انگشت در چند سانتي متري عدسي دوربين يا سنسور نگه داشته شود. امروزه روش هاي ديگري هم براي بهبود كيفيت تصاوير گرفته شده وجود دارد كه مي توان از آن ها نيز استفاده كرد.

  • * تغيير در پايگاه داده زيست سنجی: اولين مرحله در سيستم هاي تشخيص بيومتريك، ذخيره نمونه هاي منحصر به فرد به منظور استفاده از آن ها در فرآيند تصديق هويت مي باشد. در اكثر سيستم ها يك پايگاه داده براي ذخيره اين نمونه ها در نظر گرفته مي شود. فرآيندي كه كاربر براي اولين بار در آن اقدام به ثبت اثر انگشت مي كند، فرآيند ثبت نام دارد.
  • * تغيير در استخراج كننده ويژگي ها: استخراج كننده ويژگي يكي از بخش هاي سيستم تشخيص زيست سنجی است كه ممكن است اين بخش توسط مهاجم مورد حمله قرار گرفته و كاركرد آن را تغيير يابد. مهاجم با ربودن تصاوير اثر انگشت از پايگاه داده، نمونه هاي تقلبي خود را جايگزين آن ها مي كند. در اين صورت، سيستم هنگام تشخيص نمونه ها، يك اثر انگشت معتبر را رد و يك اثر انگشت نامعتبر را تأييد مي كند.

يكي از روش هايي كه براي حفاظت نمونه ها از تقلب و جابه جايي وجود دارد استفاده از الگوريتم ها و كدهاي عددي به جاي مقايسه تصاوير، براي تحليل اطلاعات است يعني استفاده از نسخه تحريف شده سيگنال زيست سنجی يا بردار ويژگي است. همچنين واترماركينگ (واترماركينگ، استگانوگرافي يا نهان نگاري، دانش يا هنر پنهان كردن اطلاعات يا ارتباطات است به گونه اي كه يك پيام در بطن پيام ديگر مخفي مي شود. در اين صورت به پيامي كه قرار است مخفي شود، واترمارك و بهسيگنالي گفته مي شود) و پنهان سازي اطلاعات (Steganography ) از ديگر تكنيك هايي است كه براي افزايش امنيت تصاوير اثر انگشت موجود در پايگاه داده مورد استفاده قرار مي گيرد.

مشكلات عملي زيادي در سيستم هاي شناسايي اثر انگشت وجود دارد. مثلاً هر دفعه كه يك اثر انگشت گرفته مي شود، ممكن است به خاطر قابليت كشساني پوست، تحريف هايي در شكل و محل اثر انگشت ايجاد شود. علاوه بر اين، اطمينان بالا و پردازش بلادرنگ، فاكتورهاي مهم مورد نياز در سيستم خودكار شناسايي اثر انگشت هستند.

از ديگر روش هايي كه امروزه در فناوري زيست سنجی از آن استفاده مي شود انجام برخي از حركات يا رفتارهاي خاص بر روي تجهيزات جمع آوري كننده اطلاعات مي باشد. از نمونه هاي اين روش مي توان به دستگاه هايي اشاره كرد كه از كاربر مي خواهد تا با دست خويش، عمل خاصي را انجام داده يا شكل مشخصي را در صفحه ثبت كننده اطلاعات، ترسيم نمايد. اندازه گيري و ثبت ويژگي هايي همچون اندازه، طول، سرعت، شتاب، انحنا، ميزان فشار وارده، دامنه لرزش اعضاي حركتي بدن، درجه حرارت بدن و … و مقايسه آن ها با اطلاعات از قبل ثبت شده، از كاركردهاي اين دستگاه ها مي باشد. از مشكلات خاص اين روش نيز مي توان به عدم بهره گيري از آن ها در هنگام بيماري افراد در روش ايي كه نيازمند انجام حركات رفتاري خاص هستند يا آموختن بعضي از روش هاي اجرايي حركات و رفتارها اشاره نمود.

يكي ديگر از روش هاي زيست سنجی، تأييد هويت افراد بر اساس كف دست آن ها مي باشد. در اين روش، كف دست به صورت كامل بر روي دستگاه هاي جمع آوري كننده داده ها قرار گرفته و اطلاعات خاصي از آن استخراج مي شود. اين شيوه نيز با مشكلاتي مشابه روش زيست سنجشي اثر انگشت روبرو مي باشد كه مي توان با استفاده از درجه حرارت و رطوبت كف دست كاربر و همچنين شدت فشار آن بر روي صفحه دستگاه، صحت اطلاعات دريافتي را بررسي نمود.
هندسه دست نيز يكي ديگر از روش هاي مورد استفاده در فناوري زيست سنجی است كه مي تواند با مشكلات مربوط به ويژگي زيست سنجی كف دست مواجه گردد كه به كارگيري ويژگي هاي تشخيصي، مي تواند خطاهاي وارده را كاهش دهد.
استفاده از عنبيه چشم در تأييد هويت كاربران، يكي ديگر از روش هاي مورد استفاده در فناوري زيست سنجی مي باشد. مشكلاتي همچون نور كم محيط در هنگام تأييد عنبيه چشم مي تواند باعث تار بودن تصوير شده و در كاهش عملكرد اين روش تأثير بگذارد.
در روش تأييد هويت بر اساس تشخيص چهره كه از شيوه هاي ديگر فناوري زيست سنجی مي باشد افراد مي توانند تصويز يا ويديوهاي جعلي را در مقابل دوربين قرار داده و موجب عدم كارايي اين روش گردند.
نرم افزارهاي مورد استفاده در فناوري زيست سنجی نيز بايد علاوه بر سهولت كاربري و واسط گرافيكي پيشرفته، اثرهاي زيست سنجی جمع آوري شده را به صورت امن ذخيره كرده و قادر به گزارش هاي متنوع و همچنين ثبت خطاها و رويدادها باشد. تجهيزات و دستگاه هاي جمع آوري داده هاي زيست سنجی هم بايد داده هاي دريافتي را به صورت امن ارسال كرده و از روش هاي رمزنگاري قابل اطمينان در طول فرآيند انتقال داده ها استفاده نمايند. همچنين پايگاه هاي داده اي كه اطلاعات زيست سنجی در آن ذخيره مي گردد بايد اطلاعات را به صورت رمزگذاري شده نگهداري نموده و از تكنيك هاي ويژه اي همچون سايه زني و مخفي سازي داده ها بر روي تصاوير و يا الگوريتم هاي رمزنگاري پيشرفته، به منظور تأمين امنيت بيشتر و چلوگيري از تحريف داده ها استفاده نمايند.
امروزه وسايل و تجهيزات زيست سنجی خاصي براي انواع مختلفي از خدمات الكترونيك ابداع شده اند كه در آن ها، تصديق هويت با استفاده از يك عامل امنيتي هوشمند انجام مي شود كه اين عامل هوشمند داراي خاصيت تشخيص زنده بودن فرد است. لازم است كه اين عامل در فعاليت هاي زيست سنجی كه از راه دور انجام مي گيرند به هر فرد يك شناسه به همراه آدرس IP اختصاص دهد به گونه اي كه فرد ديگري قادر به استفاده از آن ها توسط رايانه ديگري نباشد.

پس از ثبت داده زيست سنجی توسط عامل هوشمند، براي اين كه اطمينان حاصل گردد نمونه هاي جمع آوري شده داراي كمترين مقدار تيرگي و نويز هستند، عمل پيش پردازش روي آن ها انجام مي گيرد. سپس بررسي زنده بودن نمونه ثبت شده توسط عامل هوشمند، اولين آزمايشي است كه روي نمونه انجام مي شود. اين كار، براي جلوگيري از به كارگيري روش هاي جعلي در تصديق هويت صورت مي گيرد. پس از عمليات مقداردهي اوليه، اين نمونه هاي جمع آوري شده با نمونه هاي موجود در پايگاه هاي داده سرورهاي زيست سنجی كه به صورت رمزشده ذخيره شده اند، تطبيق داده مي شود. اگر در هر لحظه از زمان، آزمايش هاي صورت پذيرفته با موفقيت همراه نباشد فوراً خدمات الكترونيك متوقف شده و نتيجه به ارايه كنندگان آن خدمات اطلاع داده خواهد شد. اين فرآيند در تمام مدت زمان ارايه خدمات الكترونيك انجام مي گيرد.

در پايان بهتر است يادآور شد كه به منظور اجراي امنيت كامل، تلفيق چند ويژگي متفاوت زيست سنجشي در قالب يك روش واحد، ضروري بوده و منجر به امنيت پايدار و اثربخشي بهتري براي سيستم هاي بهره گير از اين فناوري خواهد شد. معمول ترين و كاربردي ترين شيوه اي نيز كه در اين روش مورد استفاده قرار مي گيرد تلفيق اثر انگشت و تصوير چهره براي تأييد هويت كاربران مي باشد كه اگرچه هر كدام به تنهايي، يك ويژگي مطلوب به شمار نمي روند اما بهره گيري از آن ها به موازات هم، مي تواند منجر به اثربخشي و كارايي بالاتري در احراز هويت كاربران گردد.

منبع

تشخیص هویت زیست سنجی و بیومتریک قسمت 1
تشخیص هویت زیست سنجی و بیومتریک قسمت 2
تشخیص هویت زیست سنجی و بیومتریک قسمت 3
تشخیص هویت زیست سنجی و بیومتریک قسمت 4
تشخیص هویت زیست سنجی و بیومتریک قسمت 5

 تشخیص هویت زیست‌سنجی و بیومتریک

زیست سنجی ، یا بیومتریک (به انگلیسی: Biometrics)، به نوع خاصی از روش‌های امنیتی گفته می‌شود که در آن برای کنترل دسترسی و برقراری امنیت از خواص قابل اندازه‌گیری بدن انسان یا هر موجود زندهٔ دیگر استفاده می‌شود. همانگونه که از کلمهٔ بیومتریک بر می‌آید در این روش با استفاده از الگوریتم‌های ریاضی از اندام‌ها برداشت‌های ثابت و یکتایی می‌شود که می‌توان از آن به عنوان یک کلمهٔ عبور یکسان و غیرقابل تقلید و گاه غیرقابل تغییر استفاده کرد. به هر خصوصیت زیستی یا فیزیکی که با رایانه قابل اندازه‌گیری و بازشناسی خودکار باشد زیست‌سنجه گفته می‌شود.

اگرچه ممکن است این اسم به نظر غریب و جدید بیاید اما واقعیت این است که بشر مدت زیادی‌است که از آن بهره می‌برد و مثال زندهٔ آن استفاده از عکس‌هایی‌است که در کارت‌های مختلف از آن بهره می‌بریم. در واقع در تمامی آن کارت‌ها شخص کنترل‌کننده با دیدن عکس و مقایسه آن با چهره واقعی شما از اصول اولیه زیست سنجی (بیومتری) پیروی می‌کند یکی دیگر از اینگونه مثال‌ها استفاده از اثر انگشت است که قدمتی بس طولانی در بین اذهان عمومی بشر دارد.

 

Biometricsec.jpg

 

شرایط اصلی برای تبدیل یک خاصیت قابل اندازه‌گیری بدن به یک خاصیت مناسب جهت استفاده به عنوان یک متود شناسایی :برای اینکه یک عضو بدن بتواند به عنوان یک وسیله اندازگیری مطرح شود باید شرایط خاصی داشته باشد به عنوان مثال باید ثابت باشد مثلاً شما نمی‌توانید رنگ مو یا وزن را به عنوان یک خاصیت بیومتریک در نطر بگیرید زیرا دائماً در حال تغییر و تبدیل هستند، در ضمن خواص انتخاب شده می‌بایست نشان‌دهنده یک انسان خاص باشند و می‌بایست به سهولت قابل دسترسی باشند یعنی برای بررسی آن نیاز به زحمت زیادی نباشد.

بطور کلی ویژگی‌های بیومتریک به دو دسته تقسیم می‌شوند: ۱- خصوصیات وابسته به فیزیک انسان، این دسته از ویژگی‌ها به مجموعه‌ای از خصوصیات همراه انسان اعم از اثرانگشت، عنبیه چشم، چهره، DNA و غیره اشاره دارد، این ویژگی‌ها عمدتاً از بدو تولد انسان و گهگاه قبل از تولد انسان شروع به شکل گیری نموده و تا آخر عمر در بدن انسان ثابت و غیرقابل تغییر (گهگاه تغییرات اندک) می‌مانند.

۲- خصوصیات رفتاری انسان‌ها، این ویژگی‌ها در حقیقت خصوصیات ناشی از رفتارهای انسان هاست نظیر راه رفتن انسان، نحوه فشردن دکمه‌ها (مثلاً موبایل) و غیره که می‌تواند بیانگر مشخصات یک انسان خاص باشد نظیر راه رفتن یک انسان که گاهی با نگاه کردن آن از پشت سر می‌توان تشخیص داد که وی کدام یک از دوستانتان است.

 

انواع روش‌های تعیین هویت زیست سنجی موجود

تعیین هویت از طریق اثر انگشت تعیین هویت از طریق بررسی دقیق کف دست تعیین هویت از طریق رگ‌های کف دست تعیین هویت از طریق کنترل شبکیه چشم تعیین هویت از طریق کنترل رگ‌های چشم تعیین هویت از طریق صورت تعیین هویت از طریق امضا تعیین هویت از طریق شناسایی صدا تعیین هویت از طریق عنبیه چشم تعیین هویت از طریق راه رفتن تعیین هویت از طریق چهره

ارزیابی ویژگی‌های بیومتریک انسان

معمولاً ویژگی‌های انسان‌ها با ۹ پارامتر مورد ارزیابی قرار می‌گیرد که عبارتند از:

۱- عمومیت، هر شخص دارای آن ویژگی باشد.

۲- یکتایی، چه تعداد نمونه متفاوت را می‌توان تفکیک کرد.

۳- دوام، معیاری برای آنکه سنجش شود یک ویژگی چه مدت عمر می‌کند.

۴- قابلیت ارزیابی، سهولت استفاده برای ارزیابی نمونه‌های متفاوت.

۵- کارایی، دقت، سرعت و پایداری روش مورد استفاده.

۶- مقبولیت، میزان پذیرش تکنولوژی.

۷- جایگزین، سهولت در استفاده از جایگزین

۸- تصدیق هویت، در تصدیق هویت مشخصه یک فرد به پایگاه اطلاعات ارسال می‌شود و هدف بررسی آن به منظور تصدیق هویت آن فرد می‌باشد که پاسخ سیستم الزاماً مثبت یا منفی است.

۹- تشخیص هویت، در سیستم‌های تشخیص هویت مشخصه بیومتریک فرد به سیستم ارائه می‌شود و سیستم با جستجوی پایگاه اطلاعات مشخصات فرد را در صورت موجود بودن استخراج می‌کند.

مزایای استفاده از روش‌های امنیتی زیست سنجی

با این روش شما می‌توانید تقریباً مطمئن باشید که همان کسی که باید به منابع دسترسی دارد برای مثال اثر انگشت همواره یکتا و یکسان است، مشکلاتی مانند فراموش کردن رمز عبور یا گم کردن آن در این روش وجود ندارد. سرعت بسیار بالایی دارد و برای کاربران عادی نیاز به آموزش ندارد، امکان سرقت آلات بیومتری (زیست سنجشی) نیز بسیار کم است! یا در پاره ایی از مواقع صفر است.

منبع


بیومتریک

معرفی علم بیومتریک

این مقاله به معرفی سیستم‌های تشخیص هویت که مهمترین و دقیق‌ترین آنها بیومتریک است خواهد پرداخت. پس از تعریف بیومتریک به تعریف معماری سیستم‌های بیومتریک می‌پردازیم و درمی‌یابیم که هر سیستم بیومتریک با چه معماری‌ای کار می‌کند. در این مقاله همچنین در مورد چند تکنولوژی بیومتریک هم توضیح داده می‌شود مانند اثر انگشت، عنبیه چشم، نحوه راه رفتن، چهره و … اما به دلیل اینکه سیستم اثر انگشت از اهمیت بیشتری نسبت به دیگر سیستم‌ها برخوردار است بیشتر به تجزیه و تحلیل این سیستم خواهیم پرداخت و ابتدا به معرفی خطوط و نقاط مشخصه انگشت که در اصطلاح به آنها ریزه‌کاری گفته می‌شود می‌پردازیم و سپس روش‌های پردازش این نقاط برای رسیدن به الگویی برای شناسایی هویت را بیان خواهیم نمود.

پس از آن سنسورهای مختلف که همگی همراه با شکل برای فهم بیشتر مطرح شده‌اند مورد بحث قرار خواهند گرفت و سپس این سنسورها با هم مقایسه می‌شوند و مزیت هر یک بیان می‌شود. سپس به معرفی سایر سیستم‌ها خواهیم پرداخت و در انتها به معرفی مفهوم ترکیبات بیومتریک و روش‌های متنوع آن خواهیم پرداخت. استفاده از روش ترکیب بیومتریک کارایی، امنیت، دقت سیستم را افزایش می‌دهد.

علم بیومتریک اشاره دارد به تکنولوژیی برای اندازه‌گیری و آنالیز مشخصات بدن افراد جهت تشخیص هویت شخص.

همه سیستم‌های بیومتریک دارای معماری ویژه‌ای برای پردازش نمونه مورد بررسی و احراز هویت می‌باشند. روش‌های مختلفی برای تشخیص هویت در بیومتریک وجود دارد که هر یک با توجه به دقت و کارایی مورد استفاده قرار می‌گیرند. اثر انگشت به دلیل اینکه برای هر فرد منحصربه‌فرد است و با گذشت زمان هیچ گونه تغییری نمی‌کند، در میان سیستم‌های بیومتریک بیشتر مورد استفاده قرار می‌گیرد. البته سیستم‌های دیگر مانند: عنبیه چشم، شبکیه چشم و نمودار حرارتی چهره هم از فردی به فرد دیگر متفاوت هستند. برای افزایش کارایی و امنیت و دقت سیستم می‌توانیم از ترکیبات بیومتریک استفاده کنیم.

مقدمه

از دیر باز انسان برای بقا، نیاز به تشخیص دوست از دشمن داشته است و تشخیص هویت برای وی امری حیاتی بوده و هست، لذا امروزه سعی در مکانیزه سازی سیستمهای شناسایی یا تشخیص هویت شده است. «این پیشرفتها دلیل بر نیاز جامعه و جهان است». نیازی که پیشرفت در آن باعث کاهش تخلفات، افزایش امنیت، تسریع در امور روزمره و … شده است.

در گذشته جهت شناسایی جرم و جنایتکار، از روال شناسایی اثر انگشت و چهره‌نگاری استفاده می‌شده، اما اکنون سیستمهای مکانیزه‌ای ایجاد شده است.

سیستمهای تشخیص هویت

توکن معمولاً چیزی است که شما به همراه خود دارید و می‌توان گفت سند هویت شماست، مانند: کارتهای هوشمند، کارتهای مغناطیسی، کلید، پاسپورت، شناسنامه و … این اشیاء دارای نواقصی هستند همچون: گم شدن، عدم همراه بودن شخص، فرسوده شدن و جعل شدن.

دومین نوع سیستمهای شناسایی دانش نام دارد، یعنی چیزی که شما بخاطر می‌سپارید مانند: پسورد و پین کد. البته این سری نیز دارای نواقصی هستند مانند: فراموش کردن و لو رفتن.

دسته سوم سیستمهای مبتنی بر بیومتریک است. این سیستمها از خصیصه‌های فیزیولوژیکی و رفتاری انسان جهت شناسایی استفاده می‌کنند. این روش دیگر معایب روشهای قبل را ندارد و امنیت و دقت را تا حد بسیار زیادی افزایش داده است.

بیومتریک چیست؟

  • اندازه‌گیری و تحلیل آماری داده‌های بیولوژیکی
  • بیومتریک اشاره دارد به تکنولوژیی برای اندازه‌گیری و آنالیز مشخصات بدن افراد جهت تشخیص هویت شخص
  • شناسایی اتوماتیک یک شخص با استفاده از ویژگیهای اختصاصی (مشخصات فیزیولوژیکی یا رفتاری)(تعریف در کنسرسیوم بیومتریک)

دو اصطلاح مهم در بیومتریک: تطابق یک به یک، عمل تطابق الگوهای کاربر با داده‌های ذخیره شده. تطابق یک به چند، یافتن یک الگو از میان الگوهای ذخیره شده جهت شناسایی کاربر.

طبقه‌بندی متدهای بیومتریک

عموماً در سیستمهای بیومتریک از دو نوع ویژگی مختلف افراد جهت شناسایی استفاده می‌شود که در ذیل به آنها اشاره می‌کنیم.

  • (پارامترهای فیزیولوژیکی)

اساس شناسایی در این کلاس، اندازه‌گیری و آنالیز مشخصه‌های ثابت یک شخص می‌باشد.

  • (پارامترهای رفتاری)

شناسایی الگوهای رفتاری مشخص یک فرد

پارامترهای فیزیولوژیکی:

  • (اثر انگشت)
  • (شناسایی از روی شبکیه چشم)
  • (شناسایی از طرق عنبیه چشم)
  • (شناسایی از روی هندسه دست)

پارامترهای رفتاری:

  • (شناسایی از طریق امضاء)
  • (شناسایی از طریق صدا)
  • (شناسایی از روی شدت ضربه شخص بر روی کیبورد)

در این مقاله ما سعی بر معرفی این سیتمها داریم.

معماری سیستمهای بیومتریک

تمامی سیستمهای بیومتریک دارای یک معماری کلی یکسان در ساخت هستند که به آنها اشاره می‌کنیم.

  • درخواست داده‌ها
  • پردازش سیگنال
  • تطبیق
  • تصمیم‌گیری
  • فضای ذخیره‌سازی
  • محیط انتقال داده‌ها

زیر سیستم درخواست داده در این زیر سیستم داده‌های خام، که از یک فرد، توسط یک سنسور ویژه اسکن شده است، وارد سیستم می‌شود. فرایندی که در این زیر سیستم انجام می‌شود:

  • دریافت داده‌ها توسط سنسور
  • تبدیل داده‌های (سیگنالها) دریافتی از سنسورها به فرم مناسبی (A/D) جهت ارسال به زیر سیستم پردازش سیگنال

زیرسیستم پردازش سیگنال عملیات این زیر سیستم به شرح ذیل می‌باشد:

  1. دریافت داده‌های خام از زیر سیستم جمع‌آوری داده
  2. استخراج خصیصه
  3. عملیات فیلترینگ جهت حذف نویز
  4. اصلاح داده‌ها
  5. تبدیل داده‌های دریافتی به فرم لازم (تولید الگو) برای زیر

سیستم تطبیق.

از داده‌های دریافت شده در این زیر سیستم، پس از پردازش، یک الگو از برخی ویژگیهای موجود تولید و ذخیره می‌شود. در واقع این الگوی تولید شده مورد مقایسه و شناسایی قرار می‌گیرد.

ماهیت این الگو که از روی یک شابلون از پیش تعریف شده تولید می‌شود (یک استاندارد ثابت)، ماتریسی از صفر و یک می‌باشد. در واقع این شابلون قسمتهای مورد اندازه‌گیری از یک نمونه را برمی‌گرداند.

زیرسیستم تطبیق

خروجی این زیر سیستم از مقایسه دو الگو بدست می‌آید. فرایند این زیر سیستم شامل:

دریافت داده‌های پردازش شده (الگو) از زیر سیستم قبل و دریافت الگوهای ذخیره شده مقایسه الگوی تولید شده در زیر سیستم قبل، با الگوهای موجود

زیر سیستم تصمیم‌گیری

این زیر سیستم پس از اجرای زیر سیستم قبل فراخوانی می‌شود که وظیفه آن تصمیم‌گیری بر روی تطابق انجام شده متناسب با درخواست است. در این مرحله یک حد یا آستانه در نظر گرفته شده است. اگر امتیاز بیشتر یا برابر این آستانه باشد، کاربر تأیید می‌شود در غیر اینصورت کاربر پذیرفته نمی‌شود.

زیر سیستم فضای ذخیره‌سازی

شامل الگوهایی است که در هنگام ثبت نام از کاربران بدست آمده است. ممکن است برای هر کاربر یک یا چند الگو ذخیره شده باشد.

زیر سیستم محیط انتقال

وظیفه این بخش انتقال داده‌ها، بین اجزاء یک سیستم بیومتریک است.

پارامترهای مهم در سیستم‌های بیومتریک

در همه سیستمهای بیومتریک پارامترهایی موجودند که ویژگیها و قابلیتهای سیستم شما را معرفی می‌کنند.

  1. نرخ پذیرش اشتباه

این پارامتر تعیین کننده امکان پذیرش کاربر جعلی از کاربر اصلی می‌باشد. این پارامتر باید تا جای ممکن کوچک باشد.

  1. نرخ عدم پذیرش اشتباه

این مقیاس نمایانگر اینست که تا چه اندازه شخص اصلی اشتباهاً پذیرش نمی‌شود (حساسیت بسیار بالا). این پارامتر نیز باید تا حد مورد نیاز کم باشد.

  1. نرخ خطای مساوی:

کاهش نرخ پذیرش اشتباه باعث افزایش غیر تعمدی نرخ عدم پذیرش اشتباه می‌شود. نقطه‌ای که میزان نرخ عدم پذیرش اشتباه با نرخ پذیرش اشتباه برابر می‌شود نقطه نرخ خطای مساوی است. هرچه میزان این پارامتر کمتر باشد نمایانگر اینست که سیستم دارای یک حساسیت بهتر و توازن خوبی است.

  1. نرخ ثبت نام نادرست

احتمال خطایی که در هنگام نمونه بردای جهت ثبت در پایگاه داده، در خصوص تشخیص صحیح ممکن است رخ هد.

تکنولوژیهای بیومتریک

  • اثر انگشت
  • هندسه دست
  • اندازه‌گیری شبکیه چشم
  • اندازه‌گیری عنبیه
  • تشخیص چهره
  • تشخیص امضاء
  • تشخیص صدا
  • آزمایش دی‌ان‌ای
  • تشخیص از روی سیاهرگ دست
  • نمودار حرارتی چهره
  • شدت ضربه بر روی صفخه کلید
  • شکل گوش
  • بوی بدن

شناسایی از طریق اثر انگشت

به دلیل اهمیت این سیستم، بیشتر به تجزیه و تحلیل آن خواهیم پرداخت. یکی از قدیمی‌ترین روشهای تشخیص هویت، روش شناسایی از طریق اثر انگشت می‌باشد. نوک انگشت دارای یکسری خطوط است که از یک طرف انگشت به طرف دیگر ادامه دارد. این خطوط دارای یکسری نقاط مشخصه می‌باشند که به آنها ریزه کاری گویند.

این ریزه کاریها شامل کمانها، مارپیچها، حلقه‌ها، انتهای لبه‌ها، انشعابها، نقطه‌ها (شیارهای نزدیک به لبه‌ها)، جزایر (دو انشعاب نزدیک به هم)، تقاطع (نقطه تلاقی دو یا چند لبه)، منفذها می‌باشند. در واقع ما در این سری از سیستمها الگوهای تولید شده از این ریزه کاریها را مورد مقایسه قرار می‌دهیم.

در تشخیص اثر انگشت دو روش عمده وجود دارد: در روش اول یک شابلون از محل قرار گیری ریزه کاریهای: “انتهای لبه‌ها، انشعابها، کمانها، مارپیچها و حلقه هاً تهیه می‌شود و الگوها بر این اساس تولید می‌شوند.

در حالت دیگر مابقی ریزه کاریهای ذکر شده نیز الگو برداری می‌شوند.”با مقایسه نوع، راستا (جهت) و ارتباط (موقعیت) ریزه کاریها عمل شناسایی انجام می‌شود. ”

در روش دوم از مقایسه نواحی در برگیرنده همه ریزه کاریهای ذکر شده و نیز علامت‌های مجزای دیگر و داده‌های حاصل از مقایسه مجموعه لبه‌ها در این نواحی، استفاده می‌شود.

عموماً سایز الگو در روش دوم دو الی سه برابر بزرگتر از روش اول می‌باشد. در روش اول تقریباً امکان ندارد که بتوان تصویر اثر انگشت را از الگوی مبنا بدست آورد به دلیل اینکه از تعدادی از ریزه کاریها الگوبرداری مشود و مابقی ترتیب اثر داده نمی‌شوند، ولی از روش دوم می‌توان به اثر انگشت نیز رسید.

مراحل پردازش تصویر در شناسایی بر اساس اثر انگشت

حالت اول شمای یک اثر انگشت پردازش نشده را نمایش می‌دهد. در مرحله دوم جهت خطوط اثر انگشت توسط متدهای خاصی تولید می‌شود تا از آن بتوان در شناخت جهت هر ریزه کاری استفاده کرد.

در حالت سوم نویزهای موجود در تصویر اول را حذف کرده سپس مرز بین لبه‌ها و شیارها مشخص می‌شود.

در مرحله چهارم میزان رنگ تصویر حاصله را کاهش می‌دهند تا نویزهای کوچک باقی‌مانده نیز حذف شوند و نیز حجم تصویر نیز کاهش یابد. در مرحله پنجم ریزه کاریها علامت گذاری می‌شوند و در مرحله آخر نیز این ریزه کاریها بیکدیگر متصل می‌گردند که ماتریس حاصل از شکل بدست آمده از این نواحی و ماتریس حصل از جهتها در شکل دوم و نیز ماتریس شامل نوع ریزه کاریهای در نظر گرفته شده، الگوی ما را تولید می‌کند. مراحل در شکل زیر به نمایش گذاشته شده‌اند:

سنسورهای مورد استفاده در روش شناسایی با استفاده از اثر انگشت:

۱-سنسور نوری

در این تکنولوژی کاربر انگشت خود را بر روی یک سطح پلاستیکی یا شیشه‌ای تمییز قرار می‌دهد، سپس یک اسکنر) CCD (شروع به اسکن کردن و تصویر برداری از انگشت می‌کند. این اسکنرها دارای تعدادی گیرنده نوری هستند که بصورت سطری در کنار یکدیگر قرار گرفته‌اند، که نوسانات و تغییرات شدت نور دریافتی را اندازه‌گیری می‌کنند. با تابش یک دسته شعاع نوری با شدت ثابت به انگشت، بازتاب این شعاع نوری توسط این دوربینهای CCD اندازه‌گیری می‌شود. این آرایه‌های CCD تصویری با رزولوشن ۷۲–۶۰۰dpi را نمایش می‌دهند؛ که البته قابلیت تصویر برداری تا ۱۰۰۰dpi را دارا می‌باشند. تصویر اثر انگشت تولیدی بصورت یکسری لبه‌های تاریک و شیارهای روشن نشان داده می‌شود که در ابتدا نامفهومند و با عملیات پردازش تصویر، تصویر واضحی از اثر انگشت تولید می‌شود

۲-سنسور خازنی

عملیات این سری از سنسورها بصورت جوشن خازنی است (یک ماتریس از خازنهای کنار هم). با تماس انگشت بر سطح سنسور، بین لبه‌های اثر انگشت و سنسور، یک ظرفیت خازنی مطابق با شکل ایجاد می‌شود که با اندازه‌گیری این سطوح خازنی و پردازش این سیگنالها، یک تصویر دیجیتالی بصورت ترکیبی از رنگهای مشکی، سفید و خاکستری (روشن و تیره) ۸بیتی بدست می‌آید. شکل زیر بیانگر این موضوع است. همان‌طور که در شکل مشاهده می‌کنید، انگشت باعث برقراری ارتباط بین دو الکترود می‌شود که این امر باعث بوجود آمدن فضای خازنی در بین این دو الکترود شده است. تغییرات فاصله‌ای که بین لبه‌ها و شیارهای انگشت وجود دارد، باعث پیدایش یک سیگنال ولتاژی در فضای خازنی می‌شود که در شکل دوم نشان داده شده است.

با توجه به اینکه فاصله بین پیک لبه و شیار از یک نقطه به یک نقطه دیگر تغییر می‌کند، داده خام برگردانده شده توسط سنسور به یک تصویر درهم که دارای یکسری سایه‌های خاکستری است، تبدیل می‌شود؛ که از یک الگوریتم دیگر جهت تکمیل و تصحیح این تصویر استفاده می‌شود رزولوشن این تصویر توسط اندازه و تقسیم‌بندی سلولهای سنسور تعیین می‌گردد. بعنوان مثال برای یک رزولوشن ۵۰۰dpi به یک سنسور با اندازه سلول ۵۰۰ میکرون نیاز است. عموماً این سری سنسورها رزولوشن ۲۵۰–۵۰۰dpi را تولید می‌کنند. دقت این سنسورها تا اندازه‌ای پایین است و نیاز به بازسازی تصویر بیشتری دارند.

۳-سنسور آلتراسوند

این سنسورها از یکسری فرستنده- گیرنده‌های صوتی استفاده می‌کنند. آنها امواج آلتراسوند را به شئ ساطع می‌کنند، سپس به حالت گیرنده رفته و امواج بازگشتی را ذخیره می‌کنند. (مطابق شکل) این امواج توسط تکنیکهای ویژه تصور صوتی پردازش می‌شوند. نحوه الگو برداری از یک سطح کثیف توسط سنسورهای آلتراسوند فرکانس ارسالی و دریافتی این سنسورها قابل تنظیم است. این ویژگی باعث می‌شود که فرکانسهای ناهمگن دریافتی را حذف کند. فرکانسهای این سنسورها را می‌توان طوری تنظیم نمود که از سلولهای بیجان عبور کنند که این یک مزیت بزرگ سنسورهای آلتراسوند است. مزایای سیستم‌های اندازه‌گیری اثر انگشت:

  1. هر شخص دارای اثر انگشت منحصربه‌فردی است
  2. اثر انگشت در برابر گذشت زمان مقاوم است
  3. این تکنولوژی به بلوغ خود رسیده است
  4. استفاده از آن بسیار راحت است
  5. دارای نرخ خطای مساوی پایینی می‌باشد
  6. ارزان است
  7. عامه پسند است

شناسایی از طریق چهره

فرم هندسی یک چهره نیز از پارامترهای مورد اندازه‌گیری در سیستمهای بیومتریک است ولی نمی‌توان گفت که جزء خصیصه‌های منحصربه‌فرد افراد است لذا این سیستمها در جاهایی که تعداد کاربران کم است و نیز زمانهای الگوبرداری درازمدت نیست، این سیستمها مناسبند. از دیگر کاربردهای این سیستمها، استفاده در سیستمهای مالتی بیومتریک جهت افزایش دقت است. تصویر چهره یک کاربر می‌تواند توسط یک دوربین سیاه و سفید با استاندارد که یک رزولوشن ۲۴۰*۳۲۰ و اقلاً ۳ تا ۴ فریم را تولید کند، گرفته می‌شود. دو روند اصلی برای تشخیص چهره انجام می‌شود

  • روند کلی یا کل چهره
  • خصوصیات پایه‌ای چهره

بر شناسایی و تشخیص نقاط ثابت و معین در چهره که با مرور زمان کمترین حساسیت و تغییری را از خود نشان می‌دهند شامل: قسمتهایی از چشم، اطراف بینی و دهان و بخشهایی که استخوان گونه را احاطه کرده‌اند تکیه دارد.

یا روند کلی یا کل چهره

در این روش یک تصویر کامل و یکجا از چهره، بدون لوکالیزه کردن نقاط ویژه مورد پردازش قرار می‌گیرد. این متد از تکنولوژیهای زیرجهت پردازش چهره بهره می‌گیرد:

  • تحلیل آماری
  • شبکه‌های عصبی

در کل سیستمهای این چنینی دارای دقت بالایی نیستند به دلیل اینکه چهرها کاملاً منحصربه‌فرد نیستند و گاه اتفاق می‌افتد که دو نفر (مخصوصا دوقلوها) از نظر چهره با هم مشابهند؛ لذا از اینگونه سیستمها فقط در مکانهایی استفاده می‌شوند که امنیت تا حد بسیار زیاد مورد نظر نباشد.

تشخیص هویت زیست سنجی و بیومتریک قسمت 1
تشخیص هویت زیست سنجی و بیومتریک قسمت 2
تشخیص هویت زیست سنجی و بیومتریک قسمت 3
تشخیص هویت زیست سنجی و بیومتریک قسمت 4
تشخیص هویت زیست سنجی و بیومتریک قسمت 5

ریشه شناسی ربات (اتیمولوژی)

واژه ربات برای اولین بار توسط کارل چاپک نویسنده اهل جمهوری چک و در نمایشنامه کارخانه ربات‌سازی روسوم در سال 1920 مورداستفاده قرار گرفت. این نمایشنامه در یک کارخانه شروع می شود که در آن از یک ماده شیمیایی به‌جای پروتوپلاسم(بخش زنده سلول) استفاده می شود تا بتوان انس آن‌هایی زنده ولی ساده را تولید کرد که به آن‌ها ربات گفته می شود. این نمایشنامه بر روی جزئیات تکنولوژیکی ساخت این موجودات زنده تمرکز نمی کند اما ظاهر این موجودات، دربردارنده ایده های اولیه ربات‌های انسان‌نما ( اندروید) می باشد. این ربات‌های کارگر که به طور انبوه تولید شده‌اند، به‌صورت بسیار پربازده ولی بدون احساس، ناتوان از فکر کردن به‌صورت ابتکاری و بی تفاوت نسبت به حفظ جان خود به تصویر کشیده شده‌اند.

یکی از مشکلات مطرح‌شده در این نمایشنامه این است که آیا ربات‌ها مورد بهره کِشی قرار می‌گیرند یا نه و در ادامه تبعات وابستگی شدید انسان به نیروی کار مصنوعی نمایش داده می شود( به‌خصوص بعد از این‌که تعدادی از ربات‌های ساخته‌شده با روشی خاص، به خودآگاهی می رسند و ربات‌های سرتاسر دنیا را به شورش علیه انسان‌ها تحریک می کنند).

کارل چاپک خودش این واژه را اختراع نکرد. او نامه ای کوتاه به بخش ریشه شناسی فرهنگ لغت انگلیسی آکسفورد نوشت و در آن برادرش جوزف چاپک را که یک نویسنده و نقاش بود به‌عنوان خالق اولیه کلمه ربات معرفی کرد.

چاپک در مقاله ای که در مجله Lidové noviny (متعلق به جمهوری چک) منتشر شد توضیح داد که در ابتدا قصد داشت این موجودات را laboři( کارگر به زبان لاتین) نام‌گذاری کند اما از این کلمه خوشش نمی آمد، بنابراین از برادرش مشورت گرفت. جوزف نیز به او کلمه ی  roboti را پیشنهاد کرد.

Robota در زبان چک، از نظر ادبی به معنای بیگاری و کار اجباری و همچنین به‌صورت تلویحی به معنای کار سخت و دشوار است و همچنین در بسیاری از زبان‌های اسلاوی( مانند بلغاری،روسی، صربی، لهستانی، مقدونیه ای،اوکراینی و مجارستانی)، این واژه به معنای عمومی کار و نیروی کار است.

به طور سنتی، Robota مدت زمانی بود که یک کارگر باید به‌صورت اجباری در اختیار اربابش قرار می گرفت. این مدت به طور معمول 6 ماه از سال در نظر گرفته می‌شد. ریشه این کلمه در زبان اسلاوی کلیسایی باستان است که در آن rabota به معنی بندگی و خدمت اجباری است که البته خود این واژه نیز از ریشه  *orbh- متعلق به زبان پوروا هندواروپایی گرفته شده  است. واژه ربات با ریشه آلمانی Arbeit( به معنی کار) هم ریشه تلقی می شود.

واژه رباتیک به که برای توصیف علم بررسی ربات‌ها استفاده می شود، اولین بار توسط ایزاک آسیموف، نویسنده داستان‌های علمی-تخیلی استفاده شد. آسیموف، زمینه ای به نام “سه قانون اصلی رباتیک” را ساخت که در داستان‌های مختلف او مورداستفاده قرار گرفته است.

این قوانین در داستان‌های تخیلی دیگر که توسط نویسنده های مختلفی نوشته شده نیز مورداستفاده قرار گرفته اند ( سه قانون مطرح‌شده توسط آسیموف کاملا تخیلی هستند و هیچ فناوری که تاکنون ساخته‌شده باشد توانایی درک یا پیروی از آن‌ها را ندارد. درحقیقت، بسیاری از ربات‌ها برای کاربردهای نظامی ساخته می‌شوند که کاملا بر خلاف آنچه در قانون اول آسیموف گفته شده، است و در برخی موارد، قانون سوم او را نیز نقض می کند).

پروفسور Joanna Bryson از دانشگاه University of Bath در این باره می گوید: “مردم اغلب در مورد قانون های آسیموف فکر می کنند؛ اما این قوانین برای این طراحی شده بودند تا نشان دهند یک سیستم اخلاقی ساده هرگز موثر نخواهد بود؛ اگر داستان‌های کوتاه آسیموف را بخوانید خواهید دید که در تمامی آن‌ها، عدم پیروی ربات‌ها از قوانین آسیموف منجر به اتفاقات اصلی داستان می شود. پس می‌توان گفت این قوانین کاملا غیر کاربردی هستند”.

انواع ربات‌های مدرن

ربات‌های متحرک

ربات‌های متحرک می‌توانند در محیط اطرافشان حرکت کنند و به یک موقعیت مکانی مشخص محدود نیستند. به‌عنوان مثالی از یک ربات متحرک می‌توان به ارابه یا ربات های حمل و نقل خود راهنما (AGVs) اشاره کرد. AGV یک ربات متحرک به شمار می‌رود که علامت ها و یا سیم های بر روی کف زمین را دنبال می کند و یا با کمک دید خود و یا استفاده از لیرزها، از نقطه ای به نقطه دیگر جابجا می شود. AGV ها در ادامه مطلب به طور گسترده تری مورد بررسی قرار می‌گیرند.

نمونه ای از ربات های متحرک مشهور به ارابه یا ربات های حمل و نقل خود راهنما – AVGs

نمونه ای از ربات های متحرک مشهور به ارابه یا ربات های حمل و نقل خود راهنما – AVGs

ربات‌های متحرک در محیط های صنعتی، نظامی و امنیتی مورداستفاده قرار می‌گیرند. همچنین در بعضی موارد از این ربات‌ها به‌عنوان کالای مصرفی و به منظور سرگرمی یا انجام دادن کارهایی مشخص مانند جارو کردن خانه نیز استفاده می شود. ربات‌های متحرک موضوع اصلی بسیاری از تحقیقاتی هستند که در حال حاضر در زمینه رباتیک در حال انجام است و تقریباً هر دانشگاه بزرگی، یک یا دو آزمایشگاه را به تحقیق بر روی ربات‌های متحرک اختصاص داده است.

ربات‌های متحرک اغلب در محیط هایی که کنترل دقیقی بر روی آن‌ها صورت می‌گیرد، مثلا در خطوط مونتاژ، مورداستفاده قرار می‌گیرند زیرا این ربات‌ها در واکنش نشان دادن به دخالت های غیر منتظره مشکل خواهند داشت. به همین دلیل نیز انسان‌ها به ندرت با این گونه ربات‌ها روبرو می‌شوند. با این وجود، ربات‌های خانگی که برای تمیز کردن و نگهداری منزل به کار می روند در بسیاری از کشور های توسعه یافته متداول هستند. از ربات‌های متحرک در کاربردهای نظامی نیز استفاده می شود.

ربات‌های صنعتی

ربات‌های صنعتی اغلب از یک بازوی مفصل دار( بازوی مکانیکی چند قسمتی) و بخش انتهایی آن که به یک سطح ثابت متصل می شود، تشکیل شده‌اند. یکی از متداول ترین انواع بخش انتهایی، گیره ها هستند.

سازمان بین المللی استانداردسازی تعریف ربات صنعتی(بازوی مکانیکی) را در استاندارد  ISO 8373 به شرح زیر تعریف کرده است:

“یک بازوی مکانیکی با کنترل خودکار، قابل برنامه ریزی و چندکاره که می‌توان آن را در سه محور مختلف(یا بیشتر) برنامه ریزی کرد. این ربات می‌تواند به‌صورت ثابت در محل و یا متحرک، در کاربردهای اتوماسیون صنعتی مورداستفاده قرار بگیرد.”

این تعریف توسط فدراسیون بین المللی رباتیک، شبکه تحقیقات رباتیک اروپا (Euron) و بسیاری از کمیته های استاندارد کشور های مختلف مورد قبول واقع شده است.

ربات‌های خدماتی

بیشتر ربات‌های صنعتی و بازو های مکانیکی به‌صورت ثابت هستند و به منظور تولید و توزیع کالا ها مورداستفاده قرار می‌گیرند. اما واژه “ربات‌های خدماتی” به خوبی ربات‌های صنعتی تعریف نشده است. فدراسیون بین المللی رباتیک، تعریف اولیه ای را برای این گونه ربات‌های مشخص کرده است:” یک ربات خدماتی، رباتی است که برای ارائه خدماتی که رفاه انسان‌ها و تجهیزات مفید است، به‌صورت نیمه یا تمام خودگردان عمل می کند. این ربات در فعالیت های تولیدی شرکت نمی کند.”

نمونه ای از یک ربات خدماتی مشهور به TWENDY-ONE

نمونه ای از یک ربات خدماتی مشهور به TWENDY-ONE

ربات‌های آموزشی

می‌توان از ربات‌ها به‌عنوان وسایل کمک آموزشی برای معلمان استفاده کرد. از دهه 1980، ربات‌هایی به شکل لاک پشت در مدارس مورداستفاده قرار می گرفتند و دانش آموزان با استفاده از زبان برنامه‌نویسی لوگو، آن‌ها را برنامه ریزی می‌کردند.

امروزه کیت های رباتی مانند Lego Mindstorms NXT،  BIOLOID، OLLO و یا ربات‌های آموزشی شرکت BotBrain در بازار موجود هستند. این کیت ها به کودکان کمک می کنند تا در مورد ریاضی، فیزیک، برنامه‌نویسی و الکترونیک چیز های مختلفی یاد بگیرند. ربات‌ها حتی از طریق مسابقات رباتیک، وارد زندگی دانش آموزان مقاطع ابتدایی و دبیرستان نیز شده است و هر ساله مسابقات مختلفی  در سرتاسر جهان برگزار می شود.

کیت رباتیLego Mindstorms NXT از سری ربات های آموزشی

کیت رباتیLego Mindstorms NXT از سری ربات های آموزشی

البته دستگاه‌هایی نیز وجود دارند که به شکل ربات طراحی شده‌اند که به‌عنوان نمونه می‌توان به کامپیوتر معلم به نام  Leachim و یا  2-XL که یک اسباب بازی آموزشی به شکل ربات است اشاره کرد. هر دو این وسایل توسط  Michael J. Freeman ساخته‌شده‌اند.

ربات‌های ماژولار (تکه ای)

ربات‌های ماژولار، نسل جدیدی از ربات‌ها هستند که قرار است با تکه ای کردن ساختار ربات‌ها، موارد کاربرد آن‌ها را بیشتر کنند. بهبود عملکرد و بازده ربات‌های ماژولار نسبت به ربات‌های معمولی آسان تر است. این ربات‌ها از یک نوع ماژول (تکه) مشابه یا چند نوع ماژول مختلف و یا ماژول های شبیه به هم که اندازه آن‌ها با هم متفاوت است، ساخته می‌شوند. ساختار این ربات‌ها باعث می شود تا امکان تغییر شکل های زیادی داشته باشند. در واقع می‌توان ربات‌های ماژولار را با بیش از 8 درجه آزادی نیز طراحی کرد. با این وجود، برنامه‌نویسی و سینماتیک و دینامیک معکوس برای این دسته از ربات‌ها نسبت به ربات‌های معمولی پیچیده تر است.

ربات‌های ماژولار ممکن است از ماژول های L شکل، ماژول های مکعبی، ماژول های H شکل و ماژول های U شکل تشکیل شوند. فناوری ANAT که اولین فناوری مخصوص برای ساخت ربات‌های ماژولار است و توسط شرکت Robotics Design طراحی شده، امکان ساخت ربات‌های ماژولار با ماژول های H و U شکل را فراهم می کند به طوری که این ماژول ها در زنجیره هایی به یکدیگر متصل هستند. از چنین سیستمی برای ساخت ربات‌های ماژولار با شکل های همگن و یا غیرهمگن استفاده می شود.

نمونه ای از ربات ماژولار

نمونه ای از ربات ماژولار

ربات‌های ساخته‌شده با فناوری ANAT را می‌توان با n درجه آزادی در نظر گرفت زیرا در این سیستم هر ماژول، یک سیستم رباتیک متحرک کامل است که به راحتی در برابر حرکت ماژول های قبل و بعد از خود در زنجیره، حرکت می کند و جابجا می شود. در نتیجه هر یک ماژول، امکان داشتن یک درجه​ آزادی را فراهم می کند. بنابراین، هرچقدر ماژول هایی بیشتری به یکدیگر متصل باشند، مجموعه آن‌ها درجه آزادی بیشتری خواهد داشت. ماژول های L شکل را نیز می‌توان به‌صورت زنجیره ای در آورد، البته با افزایش اندازه زنجیره، اندازه ماژول ها باید به ناچار کمتر شود زیرا در غیر این صورت، با اضافه شدن باری که به دو انتهای زنجیره وارد می شود، کرنش وارد بر ماژول هایی که در وسط زنجیره هستند افزایش می یابد.

ربات‌های ANAT با ماژول های H شکل از این مشکل رنج نمی‌برند زیرا طراحی آن‌ها به‌گونه‌ای است که به ربات اجازه می دهد تا فشار و ضربه‌ی وارده را به طور یکنواخت در سرتاسر ماژول ها پخش کند و در نتیجه با افزایش طول ربات، ظرفیت باربری آن کاهش نمی یابد. ربات‌های ماژولار را می‌توان به‌صورت دستی و یا خودکار مجددا تغییر شکل داد تا به رباتی دیگر تبدیل شود. در این فرآیند حتی ممکن است کاربرد ربات نیز عوض شود. به دلیل این‌که ربات‌های ماژولار با ساختار مشابه، از ماژول هایی تشکیل شده‌اند که برای ربات‌های مختلف استفاده می‌شوند، می‌توان یک ربات ماژولار به شکل مار را با رباتی مشابه ترکیب کرد تا یک ربات چند بازویی به دست آورد، یا حتی می‌توان آن را به ربات‌های کوچک تری تقسیم کرد که هر کدامشان باز هم می‌توانند به ربات‌های کوچکتری تقسیم شوند. این قابلیت به یک ربات ماژولار اجازه می دهد در یک وظیفه مشخص،  به‌صورت کاملا تخصصی عمل کند یا توانایی انجام چند وظیفه مختلف را به طور همزمان داشته باشد.

فنّاوری ربات‌های ماژولار امروزه در حمل و نقل هیبریدی، اتوماسیون صنعتی، نظافت و تعمیر کانال های تهویه هوا مورداستفاده قرار می‌گیرد. بسیاری از مراکز تحقیقاتی و دانشگاه ها نیز بر روی این فنّاوری تحقیق کرده‌اند و حتی توانسته اند نمونه های اولیه موفقی را نیز بسازند.

ربات‌های مشارکتی

ربات‌های مشارکتی یا همکار که به آن‌ها کوبات نیز گفته می شود، ربات‌هایی هستند که می‌توانند در حین انجام مسئولیت‌های صنعتی ساده، به‌صورت ایمن و موثر با کارگران تعامل داشته باشند. با این وجود بازوهای ربات و سایر شرایط محیطی در کارگاه ممکن است باعث ایجاد حوادثی شوند؛ در نتیجه لازم است تا قبل از از هرگونه استفاده واقعی، تحلیل خطرات احتمالی انجام شود.

ربات‌های مشارکتی که امروزه در صنعت مورداستفاده قرار می‌گیرند عمدتاً ساخت شرکت  Universal Robots در کشور دانمارک هستند.

شرکت Rethink Robotics که توسط  Rodney Brooks تاسیس شده، در سپتامبر سال 2012 رباتی به نام  Baxter را معرفی کرد. این ربات، یک ربات صنعتی است که به‌گونه‌ای طراحی شده تا بتواند با سایر کارگران در محیط کارگاه، به طور ایمن تعامل داشته باشد و بتوان آن را برای انجام کار های ساده برنامه ریزی کرد.

ربات‌های Baxter در صورتی که انسانی در مسیر بازو های رباتیک آن‌ها قرار داشته باشد متوقف می‌شوند و همچنین کلید های مخصوص خاموش کردن ربات نیز به‌صورت برجسته بر روی بدنه آن‌ها نصب شده است. این ربات‌ها که با هدف فروش به کسب و کار های کوچک ساخته‌شده‌اند، به‌عنوان معادل رباتیک یک کامپیوتر شخصی تلقی می‌شوند. تا ماه مِی 2014، 190 شرکت در ایالات‌متحده ربات‌های Baxter را خریداری کرده‌اند و این ربات‌ها در بریتانیا نیز به‌صورت تجاری مورداستفاده قرار می‌گیرند.

ربات‌ها در جامعه

تقریباً نصف ربات‌های جهان در قاره آسیا، 32 درصد در اروپا، 16 درصد در آمریکای شمالی، 1 درصد در استرالیا و 1 درصد نیز در آفریقا هستند. 40 درصد تمام ربات‌های جهان در کشور ژاپن هستند که این کشور را به بزرگترین کشور از نظر تعداد ربات‌ها تبدیل می کند.

استقلال ربات‌ها و سوالات اخلاقی مطرح‌شده

با پیشرفته تر شدن ربات‌ها، این سوال که چه قوانین اخلاقی  می‌تواند رفتار آن‌ها کنترل کند توسط متخصصان و دانشگاهیان متعددی بررسی شده است. سوال دیگری که در این زمینه مطرح است این است که آیا ربات‌ها می‌توانند داشتن هر نوع حق اجتماعی، فرهنگی، اخلاقی یا حقوقی را ادعا کنند یا خیر. یک تیم از دانشمندان اعلام کرده که ممکن است تا سال 2019، مغز رباتیک ساخته شود. عده ای دیگر پیش بینی می کنند هوش رباتیک تا سال 2050 به طرز چشمگیری گسترش خواهد یافت. پیشرفت های اخیر، رفتار ربات‌ها را بسیار پیچیده تر از قبل کرده است. تاثیر اجتماعی ربات‌های هوشمند موضوع مستندی به نام  Plug & Pray محصول سال 2010 میلادی است. Vernor Vinge

(متخصص و رمان نویس آمریکایی) اعلام کرده ممکن است زمانی برسد که کامپیوتر ها و ربات‌ها از انسان باهوش تر شوند. او این پدیده را تکینگی فناوری نامیده است. او همچنین معتقد است این پدیده می‌تواند برای انسان‌ها تا حدودی یا حتی به مقدار زیادی خطرناک باشد. عواقب احتمالی و راهکار مناسب برای این پدیده در مکتبی که به نام سینگولاریتاریانیسم (Singularitarianism)  شناخته می شود، مورد بحث و بررسی قرار می‌گیرد.

در سال 2009، متخصصان در کنفرانسی به میزبانی انجمن پیشبرد هوش مصنوعی (AAAI) شرکت کردند و در مورد این‌که آیا ممکن است ربات‌ها بتوانند هرگونه استقلالی به دست بیاورند و در صورت استقلال آن‌ها، این امر چقدر می‌تواند برای انسان‌ها تهدید یا خطر به شمار رود، بحث و گفتگو کردند. آن‌ها به این مطلب اشاره کردند که برخی از ربات‌ها توانسته اند به شکل های مختلفی از نیمه استقلال برسند. برای مثال بعضی از ربات‌ها می‌توانند خودشان منبع انرژی را پیدا کنند و یا به طور کاملا مستقل، از بین دشمنان، اهدافی را انتخاب کرده و با استفاده از سلاح هایشان به آن‌ها حمله کنند. آن‌ها همچنین به این مطلب اشاره کردند که برخی از ویروس های کامپیوتری می‌توانند در مقابل پاک سازی مقاومت کنند و به درجه “هوش سوسک ها” رسیده اند. البته دستیابی ربات خودآگاهی کامل، یعنی مشابه آنچه در بسیاری از کتاب ها و فیلم های علمی-تخیلی دیده می شود، محتمل نیست، اما خطرات و مشکلات احتمالی دیگری وجود دارد. منابع رسانه ای و گروه های علمی مختلفی به روند تغییرات مشابهی در بخش های مختلف رباتیک اشاره کرده‌اند که در کنار هم ممکن است منجر به افزایش کاربردهای ربات‌ها و خودگردانی و استقلال آن‌ها شود که طبیعتا نگرانی‌هایی را نیز در بر خواهد داشت. در سال 2015،  نشان داده شد که ربات‌های Nao alderen توانایی داشتن درجه ای از خودآگاهی را نیز دارند. محققین آزمایشگاه هوش مصنوعی و منطق موسسه پلی تکنیک   Rensselaer  در نیویورک، آزمایشی را انجام دادند که در آن ربات به خودآگاهی رسید؛ و وقتی این اتفاق افتاد ربات جواب قبلی خود به یک سوال مشخص را اصلاح کرد.

ربات‌های نظامی

بعضی از متخصصان و اعضای جامعه دانشگاهی، استفاده از ربات‌ها برای نبرد نظامی، به‌خصوص زمانی که دارای قابلیت‌های خودگردانی و استقلال نسبی باشند را زیرسوال برده اند. همچنین نگرانی‌هایی نیز در مورد فناوری که امکان کنترل ربات‌های مسلح را توسط ربات‌های دیگر فراهم می کند وجود دارد. نیروی دریایی ایالات‌متحده، با بودجه خود گزارشی را تهیه کرده که می گوید با پیچیده تر شدن و پیشرفت ربات‌های نظامی، باید به پیامد های تصمیم گیری آن‌ها به‌صورت مستقل، توجه بیشتری شود. یکی از محققان اعلام کرده که ربات‌های خودگردان می‌توانند رفتار انسانی تری داشته باشند زیرا می‌توانند به طور موثری تصمیم گیری کنند اما سایر متخصصان این مطلب را قبول ندارند.

در سال 2012، ربات چهارپای نظامی Cheetah که نسخه تکامل یافته BigDog می باشد با شکستن رکورد ربات دوپایی MIT که مربوط به سال 1989 بود به‌عنوان سریع ترین ربات دنیا شناخته شد.

در سال 2012، ربات چهارپای نظامی Cheetah که نسخه تکامل یافته BigDog می باشد با شکستن رکورد ربات دوپایی MIT که مربوط به سال 1989 بود به‌عنوان سریع ترین ربات دنیا شناخته شد.

رباتی که نگرانی های عمومی زیادی را در این زمینه ایجاد کرده است  EATR نام دارد. این ربات می‌تواند سوخت مورد نیاز خود را به طور پیوسته و با استفاده از مواد آلی تامین کند. موتور EATR به‌گونه‌ای طراحی شده تا با استفاده از بیومَس و پوشش گیاهی که به طور مشخص توسط سنسورهایش انتخاب می شود کار کند. ربات می‌تواند این مواد را در میدان جنگ و یا در محل های دیگر پیدا کند. البته مسئولین پروژه اعلام کرده‌اند که این ربات می‌تواند از چربی مرغ نیز به‌عنوان سوخت استفاده کند.

Manuel De Landa، نویسنده و فیلسوف آمریکایی معتقد است موشک های هوشمند و بمب های خودگردان که به درک مصنوعی مجهز هستند نیز می‌توانند به‌عنوان ربات تلقی شوند زیرا می‌توانند به در بعضی موارد به‌صورت مستقل تصمیم بگیرند. او معتقد است این کار، روندی مهم و بسیار خطرناک است که در آن انسان‌ها، مسئولیت اتخاذ تصمیم های مهم را به ماشین‌ها واگذار می کنند.

ربات چیست؟ قسمت 1
ربات چیست؟ قسمت 2
ربات چیست؟ قسمت 3
ربات چیست؟ قسمت 4
ربات چیست؟ قسمت 5
ربات چیست؟ قسمت 6
ربات چیست؟ قسمت 7
ربات چیست؟ قسمت 8

آسیمو ربات انسان نمای دوپا

ربات چیست؟ قسمت 1
ربات چیست؟ قسمت 2
ربات چیست؟ قسمت 3
ربات چیست؟ قسمت 4
ربات چیست؟ قسمت 5
ربات چیست؟ قسمت 6
ربات چیست؟ قسمت 7
ربات چیست؟ قسمت 8

ربات (که تهدیدی قطعی علیه بشریت است) یک دستگاه الکترو-مکانیکی یا یک نرم‌افزار هوشمند برای جایگزینی با انسان به هدف انجام وظایف گوناگون است.یک ماشین که می‌تواند برای عمل به دستورهای گوناگون برنامه‌ریزی گردد یا یک سری کارهای ویژه انجام دهد. به ویژه آن دسته از کارها که فراتر از توانایی‌های طبیعی و سرشتی بشر باشند. این ماشین‌های مکانیکی برای بهتر به انجام رساندن کارهایی چون احساس کردن، دریافت نمودن و جابجایی اشیا یا کارهای تکراری مانند جوشکاری فراوری می‌شوند.

آسیمو، یک روبات انسان‌نما، ساختهٔ شرکت هوندا.

 آسیمو، یک روبات انسان‌نما، ساختهٔ شرکت هوندا.

 تاریخچه

در سال ۱۹۲۳ میلادی کارل چاپک نویسنده اهل کشور چک برای اولین بار از کلمه ربات در نمایش‌نامه خود به‌عنوان آدم مصنوعی استفاده کرد. کلمه روبات گرفته شده از واژه Robota در زبان چک و به‌معنی برده و کارگر است. (مستنداتی از این کلمه پیدا نشد) در سال۱۹۴۰ شرکت وستینگهاوس سگی به نام اسپارکو ساخت که برای نخستین بار در ساخت آن، هم از قطعات مکانیکی و هم از قطعات الکتریکی استفاده شده بود.
دردهه ۱۹۵۰ میلادی با پیشرفت فناوری رایانه، صنعت کنترل متحول شد. یکی از اولین روبات‌ها، روبات‌های Hidden Mafia ساختهٔ جورج دوول و جو انگلبرگر در دهه‌های ۱۹۵۰ و ۱۹۶۰ بودند. انگلبرگر اولین شرکت روباتیک را با نام «RoboBand» بنیان نهاد و خود وی نیز امروزه پدر علم روباتیک لقب گرفته‌است.
در ژانویه ۲۰۱۳ چین اعلام کرد که در خصوص تولید و توسعه فناوری ساخت روبات‌های صنعتی پیشرفت چشمگیری داشته‌است. مقام‌های این کشور نرخ پیشرفت این صنعت را ۱۰٪ در یک سال گزارش کرده‌اند.

از انواع ربات می‌توان به

  • روبات‌های پرنده
  • روبات‌های خزنده
  • روبات‌های ماهی
  • روبات‌های جنگجو
  • روبات‌های فوتبالیست
  • روبات انسان‌نما
  • روبات مین یاب
  • روبات مسیریاب
  • روبات خانه‌دار

اشاره کرد.

ساختار ربات

یک ربات معمولاً یک سیستم الکترومکانیکی می‌باشد که با حرکت یا ظاهرش مفهومی از خود یا از ارباب خود را انتقال می‌دهد. از جایی‌که واژهٔ «ربات» هم به ربات‌های فیزیکی و هم به ربات‌های مجازی اطلاق می‌شود، برای ربات‌های مجازی لفظ «بات» بکار برده می‌شود که معمولاً به صورت نمایندگان نرم‌افزاری می‌باشند.

نمونه

روبات های صنعتی

امروزه کارهای سخت دیگر برای انسانها نمی باشد. سیستم های جدید صنعتی یا رباتها می توانند کارگرانی باشند که سخت کار می کنند. رباتهای صنعتی عموما برای وظایف تکراری و مشخصی استفاده می شوند. اما برای استفاده از رباتهای صنعتی برای جایگزینی به جای انسان ها باید دانست که ربات ها به تنهایی توان تشخیص و تصمیم گیری نسبت به موقعیت خود را ندارند. در این صورت استفاده از ربات هایی که با استفاده از  تکنولوژی بینایی ماشین قابلیت دیدن داشته و با استفاده از هوش مصنوعی قابلیت تفکر دارند به ما کمک خواهد کرد تا از آن ها در مکان هایی استفاده کنیم که قبلا توان استفاده از آنها را نداشته ایم.

روبات راه رونده با چاپگر سه بعدی

تیمی از لابراتوار هوش مصنوعی و علوم کامپیوتر دانشگاه MIT معتقدند یک راه جدید برای ساخت روباتی کامل توسط پرینتر سه بعدی یافته‌اند. پرینترهای سه‌بعدی افق‌های تازه‌ای در حوزه‌های مختلف علمی به‌وجود آورده‌اند که آخرین نمونه آن، امکان پرینت و استفاده از یک روبات کامل است. روش به‌کار گرفته شده در این تجربه، به صورتی بود که بخش‌های مختلف یک روبات به صورت طرح اولیه به پرینتر داده شد و با پرینت گرفته شدن پمپ‌های هیدرولیک و قطعات متحرک، این روبات آماده نصب موتور و باتری برای حرکت بوده و همانند روبات‌های بیگ داگ قابل حرکت روی سطوح مختلف است.

روبات جنگجو یا آدمکش

روبات کشنده یک اسلحه کاملاً خودکار است که بدون دخالت انسان می‌تواند هدف را برگزیده و با آن وارد نبرد شود. آنها ابزارهای کشنده خودکار هستند. یک چنین ماشین‌هایی در حال حاضر وجود ندارند ولی به خاطر پیشرفت‌های سریع در رشته روباتیک ساخت آنها به واقعیت نزدیک تر شده‌است. روش‌های فراوانی وجود دارد که این امکان را به روبات‌ها می‌دهد تا قوی‌تر، مؤثرتر و مستقل‌تر رفتار کنند، مانند روبات‌هایی که در صورت آسیب دیدن باز هم کار می‌کنند (مانند روبات شش پایی که پس از آسیب با استفاده از روش «آزمون و خطای هوشمندانه»، می‌تواند در کمتر از ۲ دقیقه بیاموزد که چگونه دوباره راه برود و سپس با استفاده از این روش بهترین راه را برای ادامه گام برداشتن می‌یابد). یا روبات‌هایی که در محیط‌های نامطمئن و بی‌برنامه، بتوانند تطبیق پیدا کنند و در شرایط دشوار و متفاوت همچنان به حرکت خود ادامه داده و جابه‌جا شوند (مانند روبات سگ بزرگ (Big Dog)). در حال حاضر مهندسان روی روبات‌های خودآموز متمرکزند، دیگران در حال ساخت روبات‌ها و موادی هستند که می‌توانند در صورت خرابی «خوددرمانگر» باشند.

نخستین گفتگوی مستقل روبات با انسان

روز آدینه، ۲۹ آذر ۱۳۹۲ (۲۰ دسامبر ۲۰۱۳)، سازندگان یک روبات فضانورد ژاپنی (به نام کایروبو) متن گفتگوی از پیش برنامه‌ریزی نشده این دستگاه با یک فضانورد ژاپنی (کوئیچی واکاتا) را منتشر کردند که نخستین مورد ثبت شده از گفتگوی ارادی، ابتکاری و مستقل یک ماشین ساخت انسان است. این روبات در ماه اوت با یک سفینه حامل تدارکات برای ایستگاه بین‌المللی فضایی به فضاپرتاب شد و روز ۱۰ اوت به این ایستگاه رسید. کایروبو و واکاتا در مورد هدیه کریسمس و بی‌وزنی گفتگو کردند.

کایروبو تقریباً به اندازه یک گربه کوچک است و از سیستم عامل اندروید در مغز آن استفاده شده‌است. مغز این روبات به شکلی طراحی و ساخته شده‌است که بتواند پرسش‌هایی را که از آن می‌شود پردازش کند و با استفاده از مجموعه واژگانی که در اختیار دارد، پاسخی مناسب را برای این پرسش‌ها بیابد. توموتاکا تاکاهاشی، طراح این روبات است.

پرسش و پاسخ
  • فرمانده ژاپنی از روبات می‌پرسد: “کایروبو، تو از بابا نوئل چه هدیه‌ای خواهی خواست” و روبات پاسخ می‌دهد “بیایید از بابا نوئل یک سفینه اسباب بازی بخواهیم.”
  • روبات در پاسخ به این پرسش که سفر در سفینه به سوی ایستگاه فضایی چه طور بود، می‌گوید: “مهیج بود!”
  • کایروبو در پاسخ به این پرسش که در مورد وضعیت بی‌وزنی چه فکر می‌کند هم گفت: “بهش عادت کرده‌ام، اصلاً مشکلی ندارم.”

گفتگوی کایروبو با فضانورد ژاپنی در درون ایستگاه فضایی بین‌المللی چند دقیقه به طول می‌انجامد و در طول آن، این روبات به ابراز «نظر کلی» در مورد موضوعات گوناگون می‌پردازد.

روبات‌های انسان‌نمای ایرانی

ایران توانسته روبات‌های انسان‌نمایی با نام‌های سورنا۱ و سورنا۲ و سورنا۳ بسازد. سورنا۳ از دو روبات قبلی پیشرفته‌تر است و ارتقایافتهٔ همان دو روبات قبلی است. از قابلیت‌ها و توانایی‌های این روبات می‌توان به بالا رفتن از پله، حفظ تعادل روی یک پا، بیشتر شدن سرعت نسبت به نمونه‌های قبلی، شناسایی چهره و… را نام برد. سورنا۱ در سال ۱۳۸۷ رونمایی شد.

Puma Robotic Arm - GPN-2000-001817.jpg Asimo look new design.jpg PlaceC5.jpg Roomba original.jpg 2005-11-14 ShadowLeg Finished medium.jpg
2005-11-14 ShadowLeg Finished medium.jpg Shadow Hand Bulb large.jpg Robosnakes.jpg Kismet robot 20051016.jpg SwarmRobot org.jpg

ربات و رباتیک چیست؟

ربات چیست

ربات چیست

هر دستگاه الکترومکانیکی که عمل خاصی را انجام دهد ربات نامیده می شود. این دستگاه می تواند جهت انجام یک وظیفه خاص برنامه ریزی شود. تفاوت ربات با انسان از بسیاری جهات قابل چشم پوشی نیست. مثلا خستگی ناپذیری و انجام یک کار تکراری با دقت فراوان و یا کارهایی که توان زیادی نیاز دارند و بازوهای انسان توان لازم برای انجام آن را ندارند به راحتی از عهده ربات ها بر می آید. در اینجا یک کلیپ جالب از رباتی که برای چیدن نارگیل از درختان بالا میرود قرارداده شده است.

رباتها میتوانند بسیار ساده و یا با ساختاری پیچیده باشند ولی در همه حالتها ربات ترکیب علوم مکانیک و الکترونیک است، امروزه رشته ویژه ای به نام مکاترونیک ویژه رباتیک در دانشگاهها تدریس می گردد.

ربات هایی که امروزه بسیار بسیار در حال تکاملند ربات های انسان نما هستند، ژاپن به عنوان پیشتاز این عرصه هر روز در حال تکمیل این پروژه عظیم می باشد، چارچوب بدن ، اعضای مهم مانند چشم( چشمی که قابلیت دیدن و تشخیص دادن را داشته باشد) تاکنون طراحی وساخته شده اند و سالهای اخیر در حال طراحی چهره هم به لحاظ ظاهری (سایز و رنگ و ابعاد) وهم به لحاظ باطنی (به گونه ای که غم و شادی و عصبانیت را نشان دهد) میباشد. محققان ژاپنی اعلام کرده اند تا سال 2050 ربات های انسان نما با قابلیت های یک انسان کامل (احساسات و عواطف، عقل و درک شرایط و …) را به بازار عرضه خواهند نمود..

در چنین شرایط کشور مانیز جایگاه ویژه ای پیدا کرده و جوانان و محققان ایران نیز ربات های بسیاری ساخته اند و در بسیاری از مسابقات رتبه های عالی کسب کرده اند، تیم روباتیک دانشگاه آزاداسلامی قزوین در رقابتهای جهانی 2011 ترکیه در رشته ربات شبیه ساز امداد قهرمان جهان شد. همچنین تیم MRL دانشگاه آزاد اسلامی قزوین در این رقابتها که در شهر استانبول ترکیه جریان داشت به طور مشترک با تیم دانشگاه شهید بهشتی بر سکوی قهرمانی ایستاد.

ایده ساخت ربات از کجا می آید؟

دو نکته در بوجود آمدن و ایده اصلی ربات اهمیت دارد ابتدا اینکه یک مشکل یا سختی کار وجود دارد و باید حل گردد. دوم اینکه در طبیعت موجودی آن را حل کرده یا نه؟ مثلا تونل زدن زیر خاک یک مشکل بیان میگردد. و در طبیعت یک کرم کوچولو براحتی می تواند زیر خاک حرکت نماید این دو باعث طراحی و ساخت یک ربات می گردد که به صورت اتوماتیک تونل کنده و پیش می رود. همین طور حرکت های سریع ماهی یا کوسه زیر آب و …

ربات‌ها چه کارهایی انجام می‌دهند؟

بیشتر ربات‌ها امروزه در کارخانه‌ها برای ساخت محصولاتی مانند اتومبیل؛ الکترونیک و همچنین برای اکتشافات زیرآب یا در سیارات دیگر مورد استفاده قرار می‌گیرد.

ربات‌ها از چه ساخته می‌شوند؟

ربات‌ها دارای سه قسمت اصلی هستند:
مغز که معمولاً یک کامپیوتر است.
محرک و بخش مکانیکی شامل موتور، پیستون، تسمه، چرخ‌ها، چرخ دنده‌ها و …
سنسور که می‌تواند از انواع بینایی، صوتی، تعیین دما، تشخیص نور، تماسی یا حرکتی باشد.
با این سه قسمت، یک ربات می‌تواند با اثرپذیری و اثرگذاری در محیط کاربردی‌تر شود.

رباتیک

تأثیر رباتیک در جامعه

علم رباتیک در اصل در صنعت به‌کار می‌رود و ما تأثیر آن را در محصولاتی که هر روزه استفاده می‌کنیم، می‌بینیم. که این تأثیرات معمولاً در محصولات ارزان‌تر دیده می‌‌شود.

ربات‌ها معمولاً در مواردی استفاده می‌شوند که بتوانند کاری را بهتر از یک انسان انجام دهند یا در محیط پر خط فعالیت نمایند مثل اکتشافات در مکان‌های خطرناک مانند آتش‌فشان‌ها که می‌توان بدون به خطر انداختن انسان‌ها انجام داد.

مشکلات رباتیک

البته مشکلاتی هم هست. یک ربات مانند هر ماشین دیگری، می‌تواند بشکند یا به هر علتی خراب شود. ضمناً آن‌ها ماشین‌های قدرتمندی هستند که به ما اجازه می‌دهند کارهای معینی را کنترل کنیم.

خوشبختانه خرابی ربات‌ها بسیار نادر است زیرا سیستم رباتیک با مشخصه‌های امنیتی زیادی طراحی می‌شود که می‌تواند آسیب‌ آن‌ها را محدود ‌کند.

در این حوزه نیز مشکلاتی در رابطه با انسان‌های شرور و استفاده از ربات‌ها برای مقاصد شیطانی داریم. مطمئناً ربات‌ها می‌توانند در جنگ‌های آینده استفاده شوند. این می‌تواند هم خوب و هم بد باشد. اگر انسان‌ها اعمال خشونت آمیز را با فرستادن ماشین‌ها به جنگ یکدیگر نمایش دهند، ممکن است بهتر از فرستادن انسان‌ها به جنگ با یکدیگر باشد. ربات‌ها می‌توانند برای دفاع از یک کشور در مقابل حملات استفاده می‌شوند تا تلفات انسانی را کاهش دهد. آیا جنگ‌های آینده می‌تواند فقط یک بازی ویدئویی باشد که ربات‌ها را کنترل می‌کند؟

رباتیک

 مزایای رباتیک

مزایا کاملاً آشکار است. معمولاً یک ربات می‌تواند کارهایی که ما انسان‌ها می‌خواهیم انجام دهیم را ارزان‌تر انجام‌ دهد. علاوه بر این ربات‌ها می‌توانند کارهای خطرناک مانند نظارت بر تأسیسات انرژی هسته‌ای یا کاوش یک آتش‌فشان را انجام دهند. ربات‌ها می‌توانند کارها را دقیقتر از انسان‌ها انجام دهند و روند پیشرفت در علم پزشکی و سایر علوم کاربردی را سرعت ‌بخشند. ربات‌ها به ویژه در امور تکراری و خسته کننده مانند ساختن صفحه مدار، ریختن چسب روی قطعات یدکی و… سودمند هستند.

تاثیرات شغلی

بسیاری از مردم از اینکه ربات‌ها تعداد شغل‌ها را کاهش دهد و افراد زیادی شغل خود را از دست دهند، نگرانند. این تقریباً هرگز قضیه‌ای بر خلاف تکنولوژی جدید نیست. در حقیقت اثر پیشرفت‌ تکنولوژی مانند ربات‌ها (اتومبیل و دستگاه کپی و…) بر جوامع ، آن است که انسان بهره‌ورتر می‌شود.

آینده رباتیک

جمعیت ربات‌ها به سرعت در حال افزایش است. این رشد توسط ژاپنی‌ها که ربات‌های آن‌ها تقریباً دو برابر تعداد ربات‌های آمریکا است، هدایت شده است.
همه ارزیابی‌ها بر این نکته تأکید دارد که ربات‌ها نقش فزاینده‌ای در جوامع مدرن ایفا خواهند کرد. آن ها به انجام کارهای خطرناک، تکراری، پر هزینه و دقیق ادامه می‌دهند تا انسان‌ها را از انجام آن‌ها باز دارند.

منبع


کلمه ربات توسط Karel Capek  نویسنده نمایشنامه R.U.R  (روبات‌های جهانی روسیه) در سال 1921 ابداع شد. ریشه این کلمه، کلمه چک اسلواکی(robotnic) به معنی کارگر می‌باشد.
در نمایشنامه وی نمونه ماشین، بعد از انسان بدون دارا بودن نقاط ضعف معمولی او، بیشترین قدرت را داشت و در پایان نمایش این ماشین برای مبارزه علیه سازندگان خود استفاده شد.
البته پیش از آن یونانیان مجسمه متحرکی ساخته بودند که نمونه اولیه چیزی بوده که ما امروزه ربات می‌نامیم.
امروزه معمولاً کلمه ربات به معنی هر ماشین ساخت بشر که بتواند کار یا عملی که به‌طور طبیعی توسط انسان انجام می‌شود را انجام دهد، استفاده می‌شود.

بیشتر ربات‌ها امروزه در کارخانه‌ها برای ساخت محصولاتی مانند اتومبیل؛ الکترونیک و همچنین برای اکتشافات زیرآب یا در سیارات دیگر مورد استفاده قرار می‌گیرد.

ربات یک ماشین الکترومکانیکی هوشمند است با خصوصیات زیر:

  می توان آن را مکرراً برنامه ریزی کرد.
*  چند کاره است.
*  کارآمد و مناسب برای محیط است.

  قانون رباتیک مطرح شده توسط آسیموف:

1- ربات ها نباید هیچگاه به انسانها صدمه بزنند.
2- رباتهاباید دستورات انسانها را بدون سرپیجی از قانون اوّل اجرا کنند.
3- رباتها باید بدون نقض قانون اوّل و دوم از خود محافظت کنند.

ربات‌ها دارای سه قسمت اصلی هستند:

مغز که معمولاً یک کامپیوتر است.
محرک و بخش مکانیکی شامل موتور، پیستون، تسمه، چرخ‌ها، چرخ دنده‌ها و …
سنسور که می‌تواند از انواع بینایی، صوتی، تعیین دما، تشخیص نور، تماسی یا حرکتی باشد.
با این سه قسمت، یک ربات می‌تواند با اثرپذیری  و اثرگذاری در محیط کاربردی‌تر شود.

 اجزاي يك ربات با ديدي ريزتر :

 *  وسایل مکانیکی و الکتریکی شامل :
 شاسی، موتورها، منبع تغذیه،
  حسگرها (برای شناسایی محیط):
  دوربین ها، سنسورهای sonar، سنسورهای ultrasound، …
  عملکردها (برای انجام اعمال لازم)
  بازوی ربات، چرخها، پاها، …
  قسمت تصمیم گیری (برنامه ای برای تعیین اعمال لازم):
  حرکت در یک جهت خاص، دوری از موانع، برداشتن اجسام، …
  قسمت کنترل (برای راه اندازی و بررسی حرکات روبات):
*  نیروها و گشتاورهای موتورها برای سرعت مورد نظر، جهت مورد نظر، کنترل مسیر، …

مزایای ربات ها:

 1- رباتیک و اتوماسیون در بسیاری از موارد می توانند ایمنی، میزان تولید، بهره و کیفیت محصولات را افزایش دهند.
2-  رباتها می توانند در موقعیت های خطرناک کار کنند و با این کار جان هزاران انسان را نجات دهند.
3-  رباتها به راحتی محیط اطراف خود توجه ندارند و نیازهای انسانی برای آنها مفهومی ندارد. رباتها هیچگاه خسته نمی شوند.
4-  دقت رباتها خیلی بیشتر از انسانها است آنها در حد میلی یا حتی میکرو اینچ دقت دارند.
5-  رباتها می توانند در یک لحظه چند کار را با هم انجام دهند ولی انسانها در یک لحظه تنها یک کار انجام می دهند.

 معایب ربات ها:

1-  رباتها در موقعیتهای اضطراری توانایی پاسخگویی مناسب ندارند که این مطلب می تواند بسیار خطرناک باشد.
2-  رباتها هزینه بر هستند.
3-  قابلیت های محدود دارند یعنی فقط کاری که برای آن ساخته شده اند را انجام می دهند.

برای مثال امروزه برای بررسی وضعیت داخلی رآکتورها از ربات استفاده می شود تا تشعشعات رادیواکتیو به انسانها صدمه نزند.

تأثیر رباتیک در جامعه:

علم رباتیک در اصل در صنعت به‌کار می‌رود و ما تأثیر آن را در محصولاتی که هر روزه استفاده می‌کنیم، می‌بینیم. که این تأثیرات معمولاً در محصولات ارزان‌تر دیده می‌‌شود.
ربات‌ها معمولاً در مواردی استفاده می‌شوند که بتوانند کاری را بهتر از یک انسان انجام دهند یا در محیط پر خط فعالیت نمایند مثل اکتشافات در مکان‌های خطرناک مانند آتش‌فشان‌ها که می‌توان بدون به خطر انداختن انسان‌ها انجام داد.

 مشکلات رباتیک:

البته مشکلاتی هم هست. یک ربات مانند هر ماشین دیگری، می‌تواند بشکند یا به هر علتی خراب شود. ضمناً آن‌ها ماشین‌های قدرتمندی هستند که به ما اجازه می‌دهند کارهای معینی را کنترل کنیم.
خوشبختانه خرابی ربات‌ها بسیار نادر است زیرا سیستم رباتیک با  مشخصه‌های امنیتی زیادی طراحی می‌شود که می‌تواند آسیب‌ آن‌ها را محدود ‌کند.
در این حوزه نیز مشکلاتی در رابطه با انسان‌های شرور و استفاده از ربات‌ها برای مقاصد شیطانی داریم. مطمئناً ربات‌ها می‌توانند در جنگ‌های آینده استفاده شوند. این می‌تواند هم خوب و هم بد باشد. اگر انسان‌ها اعمال خشونت آمیز را با فرستادن ماشین‌ها به جنگ یکدیگر نمایش دهند، ممکن است بهتر از فرستادن انسان‌ها به جنگ با یکدیگر باشد. ربات‌ها می‌توانند برای دفاع از یک کشور در مقابل حملات استفاده می‌شوند تا تلفات انسانی را کاهش دهد. آیا جنگ‌های آینده می‌تواند فقط یک بازی ویدئویی باشد که ربات‌ها را کنترل می‌کند؟

مزایای رباتیک:

مزایا کاملاً آشکار است. معمولاً یک ربات می‌تواند کارهایی که ما انسان‌ها می‌خواهیم انجام دهیم را ارزان‌تر انجام‌ دهد. علاوه بر این ربات‌ها می‌توانند کارهای خطرناک مانند نظارت بر تأسیسات انرژی هسته‌ای یا کاوش یک آتش‌فشان را انجام دهند. ربات‌ها می‌توانند کارها را دقیقتر از انسان‌ها انجام دهند و روند پیشرفت در علم پزشکی و سایر علوم کاربردی را سرعت ‌بخشند. ربات‌ها به ویژه در امور تکراری و خسته کننده مانند ساختن صفحه مدار، ریختن چسب روی قطعات یدکی و… سودمند هستند.

 تاثیرات شغلی:

بسیاری از مردم از اینکه ربات‌ها تعداد شغل‌ها را کاهش دهد و افراد زیادی شغل خود را از دست دهند، نگرانند. این تقریباً هرگز قضیه‌ای بر خلاف تکنولوژی جدید نیست. در حقیقت اثر پیشرفت‌ تکنولوژی مانند ربات‌ها (اتومبیل و دستگاه کپی و…) بر جوامع ، آن است که انسان بهره‌ورتر می‌شود.

آینده رباتیک:

جمعیت ربات‌ها به سرعت در حال افزایش است. این رشد توسط ژاپنی‌ها که ربات‌های آن‌ها تقریباً دو برابر تعداد ربات‌های آمریکا است، هدایت شده است.
همه ارزیابی‌ها بر این نکته تأکید دارد که ربات‌ها نقش فزاینده‌ای در جوامع مدرن ایفا خواهند کرد. آن ها به انجام  کارهای خطرناک، تکراری، پر هزینه و دقیق ادامه می‌دهند تا انسان‌ها را از انجام آن‌ها باز دارند.

ربات چیست؟ قسمت 1
ربات چیست؟ قسمت 2
ربات چیست؟ قسمت 3
ربات چیست؟ قسمت 4
ربات چیست؟ قسمت 5
ربات چیست؟ قسمت 6
ربات چیست؟ قسمت 7
ربات چیست؟ قسمت 8

الگوریتم کلونی زنبور عسل مصنوعی Artificial Bee Colony (ABC) Algorithm

الگوریتم جستجوی جدیدی مبتنی بر جمعیت به نام الگوریتم زنبور عسل (BA) ارایه شده است . الگوریتم  کلونی زنبور عسل رفتار جست و جوی غذای گروه زنبورهای عسل را تقلید می کند . در مدل پایه ای آن الگوریتم نوعی از جستجوی همسایگی ترکیب شده با جستجوی تصادفی را انجام می دهد و می تواند برای هر دوی بهینه سازی ترکیبی یا بهینه سازی تابعی مورد استفاده قرار گیرد.

مقدمه

طبیعت الهام بخش محققان برای توسعه مدل هایی برای حل مسائل و مشکلات آنهاست. به عنوان مثال “بهینه سازی” زمینه ای است که بارها این مدل ها توسعه و به کار برده شده اند . الگوریتم ژنتیک انتخاب طبیعی و عملگرهای ژنتیک را شبیه سازی می کند ، الگوریتم بهینه سازی خرده گروه ها ، دسته های پرندگان و مدرسه ماهی ها را شبیه سازی می کند، سیستم حفاظتی مصنوعی توده های سلولی سیستم حفاظتی را شبیه سازی می کند ، الگوریتم بهینه سازی کلونی مورچه ها رفتار کاوشی مورچه ها را شبیه سازی می کند و الگوریتم کلونی زنبورهای مصنوعی رفتار کاوشی زنبورهای عسل را شبیه سازی می کند. اینها نمونه هایی بود از الگوریتم های بهینه سازی الهام شده از طبیعت . الگوریتم دیگری که رفتار کاوشی زنبورها را با یک مدل الگوریتمی متفاوت شبیه سازی می کند الگوریتم زنبور عسل BA است .
در این مقاله دو الگوریتم کلونی زنبورهای مصنوعی و الگوریتم زنبور عسل را معرفی می کنیم.

1. الگوریتم کلونی زنبورهای مصنوعی

الگوریتم کلونی زنبورهای مصنوعی (ABC) توسط کارابوگا در سال 2005 برای بهینه سازی واقعی پارامترها ارایه شد، این الگوریتم یک الگوریتم بهینه سازی جدیدا معرفی شده است و رفتار کاوشی کلونی زنبورها را برای مسایل بهینه سازی بدون محدودیت شبیه سازی می کند. برای حل مسائل بهینه سازی با محدودیت یک روش اداره محدودیت با این الگوریتم ترکیب می شود.

در یک کلونی زنبور عسل واقعی ، وظایفی وجود دارد که توسط افراد تخصصی شده انجام می شود. این زنبورهای متخصص تلاش می کنند تا میزان شهد ذخیره شده در کندو را با انجام تقسیم کار و خودسازماندهی موثر حداکثر کنند. مدل کمینه انتخاب جستجوی غذا توسط گروه های هوشمند زنبور در یک کلونی زنبور عسل ، که الگوریتم ABC اتخاذ کرده است ، شامل سه نوع زنبور است : زنبورهای کارگر ، زنبورهای ناظر ، و زنبورهای پیشاهنگ (یا دیده ور) .

نصف کلونی شامل زنبورهای کارگر است و نصف دیگر آن شامل زنبورهای ناظر است. زنبورهای کارگر مسئول بهره برداری از منابع شهدی هستند که قبلا کشف شده اند و نیز دادن اطلاعات به سایر زنبورهای منتظر (زنبورهای ناظر) در کندو درباره کیفیت مکان مواد غذایی که در حال استخراج آن هستند . زنبورهای ناظر در کندو می مانند و مطابق با اطلاعاتی که زنبورهای کارگر به اشتراک گذاشته اند درباره یک منبع غذایی برای بهره برداری شدن تصمصم گیری می کنند. پیشاهنگ ها به صورت تصادفی محیط را برای یافتن یک منبع غذایی جدید براساس یک انگیزش درونی یا مدارک امکانی خارجی یا تصادفی جستجو می کنند. مراحل اصلی الگوریتم ABC که این رفتار را شبیه سازی می کند در ادامه آورده می شود :

1- مقدار دهی اولیه به موقعیت های منابع غذایی
2- هر زنبور کارگر یک منبع غذایی جدید در مکان منبع غذایی خود تولید می کند و منبع بهتر را استخراج می کند .
3- هر زنبور دیده ور یک منبع را وابسته به کیفیت راه حلش انتخاب می کند و یک منبع غذایی جدید رادر مکان منبع غذایی انتخاب شده تولید می کند و منبع بهتر را استخراج می کند.
4- تعیین منبعی که باید متروک شود و تخصیص زنبورهای کارگر آن به عنوان دیده ور برای جستجوی منابع غذایی جدید.
5- بخاطر سپردن بهترین منبع غذایی پیدا شده تا کنون.
6- تکرار مرحله های 2 – 5 تا زمانی که معیار توقف مقتضی شود.

در مرحله اول الگوریتم ، xi (i = 1, . . . , SN) راه حل ها به صورت تصادفی تولید می شوند که در آن SN تعداد منابع غذایی است . در مرحله دوم الگوریتم ، برای هر زنبور کارگر ، که تعداد کل آنها برابر با نصف تعداد منابع غذایی است ، یک منبع جدید بوسیله رابطه زیر تولید می شود:

vij = xij + φij (xij – xkj) (1

φij یک عدد تصادفی بطور یکنواخت توزیع شده در بازه [-1,1] است که تولید موقعیت منابع غذایی همسایه را در اطراف xij کنترل می کند، K شاخص راه حل است که به صورت تصادفی از کلونی انتخاب شده است (K=int(rand ∗ SN) + 1), j = 1, . . .,D و D ابعاد مسئله است . بعد از تولید vi این راه حل جدید با xi مقایسه می شود و زنبور کارگر منبع بهتر را استخراج می کند . در مرحله سوم الگوریتم ، یک زنبور ناظر یک منبع غذایی را با احتمال (2) انتخاب می کند و منبع جدیدی را در مکان منبع غذایی انتخاب شده توسط (1) تولید می کند و به همان شکل روش زنبور کارگر، منبع بهتر برای استخراج شدن مورد تصمیم گیری قرار می گیرد.

Fiti میزان شایستگی راه حل xi است.

بعد از آنکه تمام زنبورهای ناظر در منابع توزیع شدند، منابع مورد بررسی قرار می گیرند که آیا باید ترک شوند یا خیر . اگر تعداد چرخه هایی که یک منبع نمی تواند بهبود یابد بزرگتر از محدوده از قبل تعیین شده باشد آن منبع به عنوان منبع تمام شده در نظر گرفته می شود . زنبور کارگر مربوط به منبع تمام شده یک زنبور دیده ور شده و یک جستجوی تصادفی را در قلمرو مسئله به وجود می اورد .

بوسیله رابطه (3) xij = xj min + (xj max – xjmin )*rand

منبع : http://www.ecg-pnum.ir


2. الگوریتم زنبور عسل

2.1. زنبورها در طبیعت

یک کلونی زنبور عسل می تواند خود را در فواصل دور (بیشتر از 10 کیلومتر) و به صورت هم زمان در چندین جهت گسترش دهد تا از تعداد زیادی از منابع غذایی بهره برداری کند. یک کلونی با گسترش زنبورهای دیده ور خود در دشتهای خوب به موفقیت دست می یابد. به طور کلی قطعه زمینهای گلدار با میزان شهد یا گرده فراوان که می توانند با تلاش کمتری جمع آوری شوند باید توسط زنبورهای بیشتری ملاقات شوند، در حالی که قطعه زمین های گلدار با شهد یا گرده کمتر باید زنبورهای کمتری را دریافت کنند.

فرآیند جستجوی غذا در یک کلونی با فرستادن زنبورهای دیده ور برای جستجوی گلهایی با احتمال گرده و شهد بیشتر آغاز می شود. زنبورهای دیده ور از یک قطعه زمین به قطعه زمین دیگر حرکت می کنند. درطی فصل برداشت، یک کلونی کاوش خود را ادامه می دهد و درصدی از جمعیت را به عنوان زنبورهای دیده ور آماده نگه می دارد.

هنگامی که زنبورها به کندو باز می گردند، آن زنبورهای دیده وری که قطعه زمینی آنها در درجه بالایی از یک حد آستانه معین ارزیابی شده اند (به عنوان ترکیبی از چند جزء اصلی،مثل ظرفیت شکر اندازه گیری شده است) شهد و گرده های خود را ذخیره کرده و به سالن رقص می روند تا رقصی را که به عنوان «رقص چرخشی» شناخته می شود انجام دهند.

این رقص اسرار آمیز برای ارتباطات کلونی حیاتی است، و شامل سه قسمت از اطلاعات راجع به قطعه زمین گل است: جهتی که آن قطعه زمین پیدا خواهد شد، مسافت آن از کندو، و نرخ کیفیت آن (شایستگی).

این اطلاعات به کلونی کمک می کند تا بدون استفاده از راهنماها یا نقشه ها زنبورهایش را به دقت به قطعه زمین های گل ارسال کند. دانش هر زنبور عسل از محیط بیرون منحصراً از رقص چرخشی بدست آمده است. این رقص کلونی را قادر می سازد تا شایستگی نسبی قطعه زمین های متفاوت را مطابق با کیفیت غذایی که فراهم می کنند، و میزان انرژی که نیاز است تا محصول آن را برداشت کنند ارزیابی کند. بعد از رقص چرخشی در سالن رقص، رقاص (یعنی همان زنبور دیده ور) همراه با زنبورهای پیروی که درون کندو منتظر بودند به طرف قطعه زمین گل باز می گردند.

زنبورهای پیرو بیشتری به قطعه زمین هایی با امید بخشی بیشتر فرستاده می شود این موضوع به کلونی اجازه می دهد تا غذا را سریعتر و کارآمدتر جمع آوری کند.

تا زمانی که از یک قطعه زمین محصول برداشت می شود، زنبورها سطح غذای آن را بازبینی می کنند. که برای تصمیم گیری در طی رقص پیچشی بعدی هنگامی که آن زنبورها به کندو باز می گردند ضروری است. اگر قطعه زمین هنوز به اندازه کافی به عنوان یک منبع غذایی خوب باشد، در نتیجه در رقص پیچشی بعدی اعلان خواهد شد و زنبورهای بیشتری به آن منبع فرستاده می شود.

2.2. الگوریتم زنبور عسل معرفی شده

همان طور که اشاره شد، الگوریتم زنبور عسل یک الگوریتم بهینه سازی است که از رفتار کاوشی طبیعی زنبورهای عسل برای پیدا کردن راه حل بهینه الهام شده است. شکل 1 شبهه کد الگوریتم را در ساده ترین حالت آن نشان می دهد. این الگوریتم نیازمند تنظیم تعدادی پارامتر است: تعداد زنبورهای دیده ور (n)، تعداد مکانهای انتخاب شده از مکانهای بازدید شده (m)، تعداد بهترین مکان ها از مکانهای انتخاب شده (e)، تعداد زنبورهای تازه نفس استخدام شده برای بهترین مکانهای e (nep)، تعداد زنبورهای استخدام شده برای سایر (m-e) مکان های انتخاب شده (nsp)، اندازه اولیه قطعه زمینها (ngh) که شامل مکان و همسایه های آن می شود و معیار توقف الگوریتم.

الگوریتم با n زنبور دیده ور که به صورت تصادفی در فضای جستجو قرار می گیرند شروع می شود . تابع شایستگی مکان هایی که توسط زنبورهای دیده ور ملاقات می شوند در مرحله 2 ارزیابی می شود.

1- مقدار دهی اولیه جمعیت با راه حلهای تصادفی
2- ارزیابی تابع شایستگی جمعیت
3- تا زمانی که (شرط توقف ملاقات نشده است)
// تشکیل جمعیت جدید.
4- انتخاب مکان هایی برای جستجوی همسایه ها
5- استخدام زنبورها برای مکانهای جدید (زنبورهای بیشتر برای بهترین مکان های e)
6- انتخاب مناسب ترین زنبور از هر قطعه زمین گل
7- تخصیص زنبورهای باقی مانده برای جستجوی تصادفی و ارزیابی شایستگی های آنها
8- پایان حلقه

در مرحله 4 زنبورهایی که بالاترین شایستگی را دارند به عنوان “زنبورهای انتخاب شده” انتخاب می شوند و مکان های ملاقات شده توسط آنها برای جستجوی همسایگی انتخاب می شود. سپس، در مرحله های 5 و 6، الگوریتم جستجوها را در همسایگی های مکانهای انتخاب شده هدایت می کند، و زنبورهای بیشتری را نزدیک بهترین مکانهای e تخصیص می دهد. زنبورها می توانند مستقیماً بر اساس شایستگی مکان هایی که آنها ملاقاتش کرده اند انتخاب شوند. متناوباً ، مقادیر شایستگی برای تعیین احتمال اینکه کدام زنبورها انتخاب خواهند شد استفاده می شوند.

جستجوها در همسایگی بهترین مکانهای e که راه حلهای امید بخشتری را ارائه می دهد ، نسبت به سایر زنبورهای انتخاب شده ، به واسطه فرستادن زنبورهای تازه نفس بیشتر برای پیروی از آنها با جزئیات بیشتری همراه می شود. همراه با دیده وری، این نفر گیری تفاضلی کلید عملیات در الگوریتم زنبور عسل است.

به هر حال، در مرحله 6 برای هر قطعه زمین تنها زنبور عسلی با بالاترین شایستگی انتخاب خواهد شد تا جمعیت زنبور عسل بعدی را تشکیل دهد. در طبیعت چنین محدودیتی وجود ندارد، این محدودیت در اینجا برای کاهش نقاط مورد کاوش قرار گرفته معرفی شده است. در مرحله 7، زنبورهای باقی مانده در جمعیت به صورت تصادفی در اطراف فضای جستجو تخصیص می یابند تا برای راه حلهای بالقوه جدید دیده وری کنند. این مراحل تا زمانی که یک معیار توقف ملاقات شود تکرار می یابد. در انتهای هر تکرار، کلونی دو بخش در جمعیت جدید خود دارد.

– نمایندگانی از هر قطعه زمین انتخاب شده و سایر زنبورهای دیده وری که برای انجام جستجوهای تصادفی تخصیص می یابند. 

منبع


شرح الگوریتم زنبور عسل

یک کلونی زنبور عسل می‌تواند در مسافت زیادی و نیز در جهت‌های گوناگون پخش شود تا از منابع غذایی بهره‌برداری کند. قطعات گلدار با مقادیر زیادی نکتار و گرده که با تلاشی کم قابل جمع آوری است، به وسیله­ی تعداد زیادی زنبور بازدید می‌شود؛ به طوری که قطعاتی از زمین که گرده یا نکتار کمتری دارد، تعداد کمتری زنبور را جلب می‌کند. پروسهٔ جستجوی غذای یک کلونی به وسیلهٔ زنبورهای دیده­بان آغاز می‌شود که برای جستجوی گلزارهای امید بخش (دارای امید بالا برای وجود نکتار یا گرده) فرستاده می‌شوند. زنبورهای دیده‌بان به صورت کتره‌ای از گلزاری به گلزار دیگر حرکت می‌کنند. در طول فصل برداشت محصول (گل‌دهی)، کلونی با آماده نگه داشتن تعدادی از جمعیت کلونی به عنوان زنبور دیده‌بان به جستجوی خود ادامه می‌دهند.

هنگامی که جستجوی تمام گلزارها پایان یافت، هر زنبور دیده‌بان، بالای گلزاری که اندوختهٔ کیفی مطمئنی از نکتار و گرده دارد، رقص خاصی را اجرا می‌کند. این رقص که به نام رقص چرخشی شناخته می‌شود، اطلاعات مربوط به جهت تکه گلزار (نسبت به کندو)، فاصله تا گلزار و کیفیت گلزار را به زنبورهای دیگر انتقال می‌دهد. این اطلاعات زنبورهای اضافی و پیرو را به سوی گلزار می‌فرستد. بیش‌تر زنبورهای پیرو به سوی گلزارهایی می­روند که امید بخش­تر هستند و امید بیش‌تری برای یافتن نکتار و گرده در آن‌ها وجود دارد. وقتی همهٔ زنبورها به سمت ناحیه‌ای مشابه بروند، دوباره به صورت تصادفی و به علت محدوده­ی رقصشان در پیرامون گلزار پراکنده می‌شوند تا به موجب این کار سرانجام نه یک گلزار، بلکه بهترین گل­های موجود درون آن تعیین موقعیت شوند.

الگوریتم زنبور عسل هر نقطه را در فضای پارامتری – متشکل از پاسخ‌های ممکن- به عنوان منبع غذا تحت بررسی قرار می‌دهد. زنبورهای دیده‌بان – کارگزاران شبیه‌سازی شده – به صورت تصادفی فضای پاسخ­ها را ساده می­کنند و به وسیله­ی تابع شایستگی کیفیت موقعیت­های بازدید شده را گزارش می­دهند. جواب‌های ساده شده رتبه بندی می‌شوند و دیگر زنبورها نیروهای تازه­ای هستند که فضای پاسخ‌ها را در پیرامون خود برای یافتن بالاترین رتبه محل‌ها جستجو می‌کنند که گلزار نامیده می‌شود. الگوریتم به صورت گزینشی دیگر گلزارها را برای یافتن نقطه­ی بیشینه­ی تابع شایستگی جستجو می‌کند

کاربردها 

برخی کاربردهای الگوریتم زنبور در مهندسی:

* آموزش شبکه عصبی برای الگو شناسی

* زمان بندی کارها برای ماشین‌های تولیدی

* دسته‌بندی اطلاعات

* بهینه‌سازی طراحی اجزای مکانیکی

* بهینه‌سازی چند گانه

* میزان کردن کنترل کننده‌های منطق فازی برای ربات‌های ورزشکار

هم چنبن نوشته ای با عنوان مقاله های الگوریتم کلونی زنبور عسل (Artificial Bee Colony (ABC) Algorithm) و کاربردهای آن شامل مقالات داخلی و خارجی در همین سایت قرار داده شده است.

الگوریتم زنبور شامل گروهی مبتنی بر الگوریتم جستجو است که اولین بار در سال 2005 توسعه یافت ؛ این الگوریتم شبیه سازی رفتار جستجوی غذای گروههای زنبور عسل است. در نسخه ابتدایی این الگوریتم، الگوریتم نوعی از جستجوی محلی انجام می دهد که با جستجوی کتره ای (Random) ترکیب شده و می تواند برای بهینه سازی ترکیبی {زمانی که بخواهیم چند متغیر را همزمان بهینه کنیم.}یا بهینه سازی تابعی به کار رود.

جستجوی غذا در طبیعت

یک کلونی زنبور عسل می تواند در مسافت زیادی و نیز در جهت های گوناگون پخش شود تا از منابع غذایی بهره برداری کند.
قطعات گلدار با مقادیر زیادی نکتار و گرده که با تلاشی کم قابل جمع آوری است،به وسیلهی تعداد زیادی زنبور بازدید می شود؛ به طوری که قطعاتی از زمین که گرده یا نکتار کمتری دارد، تعداد کمتری زنبور را جلب می کند.
پروسه ی جستجوی غذای یک کلونی به وسیله ی زنبورهای دیده بان آغاز می شود که برای جستجوی گلزار های امید بخش (دارای امید بالا برای وجود نکتار یا گرده) فرستاده می شوند.

زنبورهای دیده بان به صورت کتره ای(Random) از گلزاری به گلزار دیگر حرکت می کنند.
در طول فصل برداشت محصول (گل دهی)، کلونی با آماده نگه داشتن تعدادی از جمعیت کلونی به عنوان زنبور دیده بان به جستجوی خود ادامه می دهند. هنگامی که جستجوی تمام گلزار ها پایان یافت، هر زنبور دیده بان ، بالای گلزاری که اندوخته ی کیفی مطمئنی از نکتار و گرده دارد، رقص خاصی را اجرا می کند.

این رقص که به نام “رقص چرخشی”(حرکتی مانند حرکت قرقره) شناخته می شود، اطلاعات مربوط به جهت تکه گلزار(نسبت به کندو)، فاصله تا گلزار و کیفیت گلزار را به زنبور های دیگر انتقال می دهد. این اطلاعات زنبور های اضافی و پیرو را به سوی گلزار می فرستد.
بیشتر زنبور های پیرو به سوی گلزار هایی میروند که امید بخش تر هستند و امید بیشتری برای یافتن نکتار و گرده در آنها، وجود دارد.
وقتی همه ی زنبور ها به سمت ناحیه ای مشابه بروند، دوباره به صورت کتره ای (Random) و به علت محدوده ی رقصشان در پیرامون گلزار پراکنده می شوند تا به موجب این کار سرانجام نه یک گلزار ، بلکه بهترین گل های موجود درون آن تعیین موقعیت شوند.

الگوریتم

الگوریتم زنبور هر نقطه را در فضای پارامتری_ متشکل از پاسخ های ممکن_به عنوان منبع غذا تحت بررسی قرار می دهد.”زنبور های دیده بان”_ کارگزاران شبیه سازی شده _به صورت کتره ای (Random) فضای پاسخ ها را ساده می کنند و به وسیله ی تابع شایستگی کیفیت موقعیت های بازدید شده را گزار ش می دهند. جواب های ساده شده رتبه بندی می شوند، و دیگر “زنبورها” نیروهای تازه ای هستند که فضای پاسخ ها را در پیرامون خود برای یافتن بالا ترین رتبه محل ها جستجو می کنند(که “گلزار” نامیده می شود) الگوریتم به صورت گزینشی دیگر گلزار ها را برای یافتن نقطه ی بیشینه ی تابع شایستگی جستجو می کند.

الگوريتم زنبور عسل

الگوریتم زنبور شامل گروهی مبتنی بر الگوریتم جستجو است که اولین بار در سال 2005 توسعه یافت ؛ این الگوریتم شبیه سازی رفتار جستجوی غذای گروه های زنبور عسل است. در نسخه ابتدایی این الگوریتم نوعی از جستجوی محلی انجام می دهد که با جستجوی کتره ای{Random } ترکیب شده و می تواند برای بهینه سازی ترکیبی {زمانی که بخواهیم چند متغیر را همزمان بهینه کنیم.}یا بهینه سازی تابعی به کار رود.

جستجوی غذا در طبیعت

یک کلونی زنبور عسل می تواند در مسافت زیادی و نیز در جهت های گوناگون پخش شود تا از منابع غذایی بهره برداری کند.

قطعات گلدار با مقادیر زیادی نکتار و گرده که با تلاشی کم قابل جمع آوری است،به وسیله ی تعداد زیادی زنبور بازدید می شود؛ به طوری که قطعاتی از زمین که گرده یا نکتار کمتری دارد، تعداد کمتری زنبور را جلب می کند.

پروسه ی جستجوی غذای یک کلونی به وسیله ی زنبورهای دیده بان آغاز می شود که برای جستجوی گلزار های امید بخش {دارای امید بالا برای وجود نکتار یا گرده}فرستاده می شوند. زنبورهای دیده بان به صورت کتره ای{Random } از گلزاری به گلزار دیگر حرکت می کنند.
در طول فصل برداشت محصول{گل دهی}، کلونی با آماده نگه داشتن تعدادی از جمعیت کلونی به عنوان زنبور دیده بان به جستجوی خود ادامه می دهند. هنگامی که جستجوی تمام گلزار ها پایان یافت، هر زنبور دیده -بان ، بالای گلزاری که اندوخته ی کیفی مطمئنی از نکتار و گرده دارد، رقص خاصی را اجرا می کند.
این رقص که به نام “رقص چرخشی”{حرکتی مانند حرکت قرقره} شناخته می شود، اطلاعات مربوط به جهت تکه گلزار{نسبت به کندو}، فاصله تا گلزار و کیفیت گلزار را به زنبور های دیگر انتقال می دهد. این اطلاعات زنبور های اضافی و پیرو را به سوی گلزار می فرستد.
بیشتر زنبور های پیرو به سوی گلزار هایی میروند که امید بخش تر هستند و امید بیشتری برای یافتن نکتار و گرده در آنها، وجود دارد.
وقتی همه ی زنبور ها به سمت ناحیه ای مشابه بروند، دوباره به صورت کتره ای {Random } و به علت محدوده ی رقصشان در پیرامون گلزار پراکنده می شوند تا به موجب این کار سرانجام نه یک گلزار ، بلکه بهترین گل های موجود درون آن تعیین موقعیت شوند.

الگوریتم زنبور هر نقطه را در فضای پارامتری- متشکل از پاسخ های ممکن- به عنوان منبع غذا تحت بررسی قرار می دهد.”زنبور های دیده بان”- کارگزاران شبیه سازی شده – به صورت کتره ای{Random } فضای پاسخ ها را ساده می کنند و به وسیله ی تابع شایستگی کیفیت موقعیت های بازدید شده را گزار ش می دهند. جوابهای ساده شده رتبه بندی می شوند، و دیگر “زنبورها” نیروهای تازه ای هستند که فضای پاسخ ها را در پیرامون خود برای یافتن بالا ترین رتبه محل ها جستجو می کنند{که “گلزار” نامیده می شود} الگوریتم به صورت گزینشی دیگر گلزار ها را برای یافتن نقطه ی بیشینه ی تابع شایستگی جستجو می کند.

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

منبع: http://faraebtekari.ir


الگوریتم های الهام گرفته شده از کلونی زنبورها

تلاشهای زيادی برای مدل کردن رفتارهای خاص و هوشمندانه تجمع زنبورهای عسل انجام گرفته است Tereshko و Loengarov کلونی زنبور را به عنوان يک سيستم پويا درنظر گرفتند که از محيط اطراف اطلاعات جمع اوری میکند و رفتار خود را براساس اين اطلاعات بدست آمده تنظيم می نمايد. آنها يک ايده روباتی با توجه به رفتار کاوشی زنبورها مطرح کردند. غالبا اين روباتها به صورت فيزيکی و عملکردی يکسان هستند. در نتيجه هر روبات میتواند به طور تصادفی جايگزين ديگر روباتها گردد. تجمع، قابليت تحمل خطا را دارد. با رخ دادن خطا در يک عامل کار کل سيستم مختل نخواهد شد. روباتهای مجزا، مانند حشرات، دارای قابليتها وتواناييهای محدودی هستند. همچنين دانش محدودی از محيط دارند. به عبارتی ديگر تجمع)ازدحام)، هوش جمعی همکارانه را بهبود میدهد. همچنين اين آزمايش نشان میدهد که روباتهای حشره مانند در انجام وظايف حقيقی روباتها، موفق هستند.

به علاوه آنها يک مدل کمينه از از رفتار کاوشگرانه زنبورها ارائه داند. اين مدل شامل سه مولفه مهم میباشد: 1)منبع غذايي ۲(زنبورهای کارگر ۳(زنبورهای غيرکارگر. اين مدل دو نوع رفتار را دربرمیگيرد: سربازگيری برای يک منبع شهد و ترک منبع. Teodorovic پيشنهاد داد تا از هوش جمعی زنبورها در توسعه و بهبود سيستمهای مصنوعی با هدف حل مسائل پيچيده در حمل و نقل و ترافيک استفاده شود، همچنين او الگوريتم BCO (Bee Colony Optimization)را ارائه کرد که قادر است مسائل ترکيبی قطعی را همانند مسائل ترکيبی به خوبی حل نمايد. Drias يک روش هوشمندانه جديد را معرفی نمود با نام BSO که الهام گرفته از زنبورهای واقعی است. Wedde يک الگوريتم مسيريابی جديد با نام BeeHive ارائه کرد که الهام گرفته از متدهای ارتباطی و ارزيابی و همچنين رفتار زنبورهای عسل میباشد. در اين الگوريتم عاملها در منطقه شبکه که محدودهی کاوش ناميده میشود، در طول مسيرشان اطلاعات وضعيتی شبکه را به منظور بهنگام سازی جدول مسيريابی محلی جمع آوری می کنند.

کارهای انجام شده که در پاراگراف های قبلی ذکرشد، شامل انواع مختلفی از مسائل بود. تنها دو الگوريتم بهينه سازی عددی در مقالات مبتنی بر رفتار جمعی زنبورهای عسل وجود دارد. Yang الگوريتم زنبورهای مجازی برای حل( (VBAبهينه سازی توابع عددی ارائه داده است. در ابتدا يک تجمع از زنبورهای مجازی ايجاد میشود و تجمع شروع به حرکت کردن در فضای مسئله به صورت تصادفی مینمايد. اين زنبورها هنگامی که يک يا چند منبع غذايي را يافتند که متناظر است با يافتن مقدار تابع، با يکديگر تعامل برقرار میکنند راهحل برای مسئله بهينه سازی از شدت و قوت تعاملات زنبورها با يکديگر بدست خواهد آمد. برای بهينه سازی توابع چندمتغييره Karaboga الگوريتم کلونی زنبورهای مصنوعی ( ABC ) را ارئه داد که با الگوريتم زنبورهای مجازی تفاوت دارد.

الگوریتم زنبور عسل

الگوریتم کلونی زنبور عسل مانند سایر الگوریتم های هوش ازدحامی مرتبط بر رفتار تصادفی المان های آن است و برای حل مسائل بهینه سازی کاربرد دارد. بسیاری از الگوریتم های هوش ازدحامی با الهام گرفتن از طبیعت ایجاد شده اند مانند الگوریتم کلونی مورچگان، الگوریتم پرندگان، الگوریتم فاخته و الگوریتم کلونی زنبور عسل یا Artificial bee colony algorithm که به صورت مخفف BCO نامیده میشود (Bee Colony Optimization) .

بسیاری از مسائل به روش های معمول ریاضی قابل حل نیستند و یا حل کردن آنها زمان بسیار زیادی را می طلبد. در این نوع از مسائل ما به دنبال پیدا کردن یک نقطه بهینه در مسئله هستیم که اصطلاحا به آن نقطه، نقطه بهینه می گوییم. نقطه بهینه زمانی بدست می آید که ما کمترین خطا در مسئله را داشته باشیم. الگوریتم هایی تصادفی مانند الگوریتم ژنتیک و الگوریتم های تکاملی برای حل مسائل بهینه سازی استفاده می شوند.

یکی دیگر از روش های حل مسائل بهینه سازی الگوریتم های هوش ازدحامی است که الگوریتم زنبور عسل از جمله این الگوریتم ها است. الگوریتم زنبور (Bee Algorithm) یک الگوریتم گروهی مبتنی بر جستجو است که در سال ۲۰۰۵ میلادی ابداع شده است.این الگوریتم شبیه‌ سازی رفتار جستجوی غذای گروه‌های زنبور عسل است. در نسخه ابتدایی این الگوریتم، الگوریتم نوعی از جستجوی محلی انجام می‌دهد که با جستجوی تصادفی کتره­­ا ترکیب شده و می‌تواند برای بهینه سازی ترکیبی یا بهینه‌ سازی تابعی استفاده شود.

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

منبع: http://faraebtekari.ir


الگوریتم کلونی زنبور عسل (ABC)

چندین الگوریتم اکتشافی جدید برای حل مسایل بهینه سازی عددی و توابع ترکیبی توسعه یافته اند. این الگوریتم ها می توانند به گروههای مختلف طبقه بندی شوند با توجه به ضوابطی که در نظر گرفته شده: مانند بر اساس جمعیت ، مبتنی بر تکرار شونده ، تصادفی ، قطعی ، و غیره. در حالی که الگوریتم با یک مجموعه راه حل هاکار میکند و در جهت بهبود آنها تلاش می کنند که مبتنی بر جمعیت نامیده می شوند ، یکی از کاربرد تکرار های چندگانه برای پیداکردن راه حل مطلوب که به عنوان الگوریتم تکرار شونده نام گذاری شده است.

اگر یک الگوریتم یک قانون احتمالی را برای بهبود راه حل بکار بگیرد سپس آن را احتمال یا اتفاقی نامیده میشود. یکی دیگر از طبقه بندی را می توان بسته به ماهیت پدیده توسط الگوریتم شبیه سازی کرد.این نوع طبقه بندی ، عمدتا دارای دو گروه مهم از الگوریتم جمعیت هستند که براساس : الگوریتم های تکاملی (EA) و الگوریتم های مبتنی بر هوش جمعی. از محبوب ترین الگوریتم های تکاملی الگوریتم ژنتیک(GA) است. درGA تلاش شده است تکامل طبیعی یک پدیده شبیه سازی شود. در تکامل طبیعی ، هر گونه جستجو برای سازگاری سودمند در یک محیط در حال تغییر است. به عنوان یک گونه تکامل یافته ، ویژگی های جدیدی در کروموزوم های فردی کد گذاری می شوند.

این اطلاعات توسط جهش تصادفی تغییرمی یابد ، اما بطورواقعی نیروی محرکه باعث توسعه تکاملی درترکیب و جایگزینی مواد کروموزومی در طول تولید مثل میشود. اگر چه تلاش های متعددی برای گنجاندن این اصول در روال بهینه سازی دراوایل دهه 1960انجام شده ، الگوریتم های ژنتیک برای اولین بار بر یک مبنای نظری صوتی ایجاد شده بودند. این اصطلاح جمعی در حالت کلی برای اشاره به هر مجموعه دار از تعامل افراد مورد استفاده قرار می گیرد. به عنوان یک مثال کلاسیک از ازدحام زنبورهایی که در اطراف کندوی خود تجمع کردند ، اما در استعاره به راحتی می توان به سیستم هایی معماری مشابهی دارند توسعه داد. در کلونی مورچه ها،مورچه ها می توانند به عنوان گروهی ازعوامل تصور شوند ، همچنین ازدحام پرندگان گروهی از پرندگان است. یک سیستم ایمنی ، گروهی از سلول ها ومولکول ها است در حالی که یک جمعیت شامل گروهی از مردم است.

الگوریتم بهینه سازی ازدحام ذرات (PSO) شبیه سازی می کند رفتار اجتماعی پرندگان یا ماهی ها توسط ابرهارت و کندی در سال 1995 معرفی شده است. روش های گوناگونی به مدل رفتار هوشمند خاص ازدحام زنبور عسل پیشنهاد شده است و برای حل مسایل از نوع ترکیبی استفاده شده است.آنها یک ایده روبات بر رفتار جستجوی غذا از زنبورها را ایجاد کرده اند . معمولا ، همه %