معرفی زبان برنامه نویسی متلب (MATLAB)

متلب در ابتدا نه یک زبان برنامه‌نویسی، بلکه صرفاً یک ماشین‌حساب ماتریسی تعاملی ساده بود؛ برنامه و ابزاری در آن وجود نداشت و گرافیکی به چشم نمی‌خورد. مجموعه‌ای از مقالات تحقیقاتی ویلکینسون ((Wilkinson و ۱۸ نفر از همکارانش که بین سال‌های 1965 و 1970 منتشر شد، مبنای ریاضی اولین نسخه متلب را تشیکل می‌داد. این تحقیقات که بعدها در دفترچه راهنمایی به اسم Handbook for Automatic Computation گردآوری شدند، الگوریتم‌هایی برای حل مسائلی مانند معادلات خطی ماتریس ارائه می‌کردند.

با گذشت زمان، متلب برای پاسخگویی به نیازهای مهندسان و دانشمندان تکامل پیدا کرد. البته که ریشه‌های ریاضیاتی ماتریسی حفظ شدند، اما ویژگی‌هایی مانند جعبه‌ابزار قوی، گرافیک، ODE و FFT نیز برای کاربران تعبیه شد. این امکانات، متلب را به یکی از محبوب‌ترین زبان‌های برنامه‌نویسی، مخصوصاً میان پژوهشگران، تبدیل کرده است.

در ادامه این مقاله، توضیحات بیشتری درباره اینکه زبان متلب چیست و چه ویژگی‌هایی دارد، ارائه خواهیم کرد.

متلب (MATLAB) چیست؟

پاسخ‌های مختلفی برای سؤال «زبان برنامه نویسی متلب چیست؟» وجود دارد:

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

زبان متلب چیست

به‌وسیله متلب، می‌توانید ماتریکس‌ها را دست‌کاری کرده و علاوه بر پیاده‌سازی الگوریتم‌های مختلف و ایجاد رابط کاربری، توابع و داده‌های مختلف را رسم کنید. این زبان، همچنین به شما امکان می‌دهد تا از ارتباط بین کدهای متلب و زبان‌های دیگری مانند C، C++، جاوا (Java) و فرترن ((Fortran بهره‌مند شوید.

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

تاریخچه زبان برنامه نویسی متلب

کلیو مولر (Cleve Moler)، ریاضی‌دان و برنامه‌نویس کامپیوتر، متلب را اختراع کرد. او ایده ابداع این نرم‌افزار را از پایان‌نامه دکترای خود گرفت که در دهه ۱۹۶۰ ارائه داده بود. مولر بعد از این که استاد دانشگاه نیومکزیکو شد، برای راحتی دانشجویان خود، به تولید تولید و توسعه متلب پرداخت. کلیو مولر، برنامه‌ریزی‌های اولیه جبر خطی متلب را در سال ۱۹۶۷ به همراه مشاور پایان‌نامه‌اش، جورج فورسایت (George Forsythe)، انجام داد. مخترع متلب می‌گوید: «متلب در ابتدا یک زبان برنامه‌نویسی نبود، بلکه یک ماشین حساب ماتریسی تعاملی ساده بود.»

منظور او از «در ابتدا»، قبل از انتشار نسخه ۱.۰ است. اولین نسخه متلب در اواخر دهه ۱۹۷۰ تکمیل شد. این نرم‌افزار برای اولین‌بار در فوریه ۱۹۷۹ در دانشکده تحصیلات تکمیلی نیروی دریایی کالیفرنیا در معرض دید عموم قرار گرفت. نسخه‌های اولیه MATLAB، ماشین‌حساب‌های ماتریسی ساده با ۷۱ تابع از پیش ساخته شده بودند. آن زمان متلب به صورت رایگان در دانشگاه‌ها توزیع می‌شد و مولر نسخه‌هایی از برنامه خود را در اختیار دانشگاه‌هایی که بازدید می‌کرد می‌گذاشت.

به زودی این نرم‌افزار طرفدارهای زیادی (مخصوصاً در دانشکده‌های فنی و ریاضی دانشگاه‌ها) پیدا کرد. در دهه ۱۹۸۰ کلیو مولر با جان ان. لیتل (John N. Little) آشنا شد. آن‌ها تصمیم گرفتند که متلب را مجدداً بر پایه زبان C برنامه‌نویسی کرده و آن را برای رایانه‌های رومیزی شرکت IBM که در آن زمان جایگزین رایانه‌های قبلی می‌شدند، به بازار عرضه کنند. جان لیتل و برنامه‌نویسی به نام استیو بنگرت (Steve Bangert) متلب را دوباره به زبان C نوشتند و جعبه‌ابزار آن را توسعه دادند.

کاربردهای زبان متلب چیست؟

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

این نرم‌افزار در تمامی جنبه‌های ریاضیات محاسباتی استفاده می‌شود؛ اما رایج‌ترین موارد استفاده از زبان متلب چیست؟

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

مزایای زبان متلب

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

کاربری آسان

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

متلب (MATLAB)

پلتفرم مستقل

سیستم‌های کامپیوتری مختلفی از متلب پشتیبانی می‌کنند. از این نظر، کاربران آزادی عمل زیادی در استفاده از این نرم‌افزار دارند. زبان برنامه‌نویسی متلب در ویندوز ۲۰۰۰/ویستا/XP و نسخه‌های جدیدتر، لینوکس (Linux)، نسخه‌های مختلف یونیکس (Unix و مکینتاش Macintosh) ارائه شده است. برنامه‌های نوشته‌شده روی هر پلتفرم، روی پلتفرم‌های دیگر هم اجرا می‌شوند؛ در نتیجه برنامه‌های نوشته‌شده در متلب نیز در صورت تغییر نیاز کاربر، به‌راحتی می‌توانند به پلتفرم‌های دیگر منتقل شوند.

توابع از پیش تعریف شده

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

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

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

نقشه‌برداری مستقل از دستگاه

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

رابط کاربری گرافیکی

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

کامپایلر (Compiler) متلب

کامپایل برنامه‌های متلب در یک «کد پی» مستقل از ماشین و سپس تفسیر دستورالعمل آن در زمان اجرا، باعث سازگاری و استقلال از پلتفرمی می‌شود که توسط متلب شاهدیم. این روش معادل روشی است که توسط زبان ویژوال بیسیک (Visual Basic) مایکروسافت استفاده می‌شود. متاسفانه، برنامه‌ها با این روش گاهی اوقات به کندی اجرا می‌شوند؛ زیرا کد MATLAB به جای کامپایل، تفسیر می شود.

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

معایب زبان متلب

زبان برنامه‌نویسی متلب دو ایراد اساسی دارد:

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

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

بخش‌های مختلف نرم افزار متلب

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

زبان متلب:

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

اپراتورها و کاراکترهای خاص  ops
ساختارهای زبان برنامه‌نویسی lang
رشته‌های کاراکتر strfun
ورودی-خروجی فایل iofun
زمان و تاریخ timefun
انواع داده‌ها و ساختارها datatypes

محیط کاری متلب:

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

  • دستورات اهداف عمومی (General)

هندل گرافیکس (Handle Graphics)

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

گراف‌های دوبعدی graph2d
گراف‌های سه‌بعدی graph3d
گراف‌های تخصصی specgraph
ابزارهای کاربردی graphics
ابزارهای رابط کاربری گرافیکی uitools

کتابخانه تابع ریاضی متلب

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

ماتریس‌های ابتدایی و دست‌کاری ماتریس elmat
توابع ریاضی ابتدایی elfun
توابع ریاضی تخصصی specfun
توابع ماتریسی-جبر خطی عددی matfun
تجزیه و تحلیل داده‌ها و تبدیل فوریه datafun
الحاق و چندجمله‌ای‌ها polyfun
توابع تابع و حل کننده‌های ODE funfun
ماتریس‌های پراکنده sparfun

رابط برنامه‌نویسی متلب یا (API)

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

2/5 - (4 امتیاز)

ارسال شده در 08 آبان 1401

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *