سامانه های هوشمند

مقدمه

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

گاهی در شناسایی جنبه هوشمندانه یک محصول دچار تردید می شویم؛ چرا یخچالی که با بسته شدن درش، چراغش خاموش می شود را هوشمند نمی گوییم ولی ماشین لباسشویی که بر اساس وزن لباس ریخته شده در آن، آب مصرف می کند را هوشمند می دانیم؟

این مساله از اینجا اهمیت می یابد که میخواهیم بدانیم یک سامانه هوشمند چیست و چه تفاوتی با سایر نرم افزارها دارد.

سامانه هوشمند چیست؟

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

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

 

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

در سامانه های هوشمند از چه تکنولوژی هایی استفاده می شود؟

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

  1. هوش مصنوعی شامل هوش مصنوعی محدود، هوش مصنوعی عمومی و سوپر هوش مصنوعی

  2. یادگیری ماشین

  3. یادگیری عمیق

  4. داده کاوی

  5. ماشین واکنش گرا

  6. ماشین هایی با حافظه محدود

  7. نظریه ذهن

  8. خود آگاهی

مزایای سامانه های هوشمند چیست؟

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

فرایند تولید سامانه های هوشمند چیست؟

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

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

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

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