فاصله اقلیدسی و منهتن در متلب
مسائل مربوط به فاصلهی اقلدیسی و فاصلهی منهتن، مسائلی ریاضی هستند که برای محاسبهی فاصلهی دو نقطه در صفحه استفاده میشوند. در این نوشته توابع دستی برای این محاسبه توسط نرمافزار متلب را برای شما آماده کردهایم. محاسبهی فاصلهی اقلیدسی و محاسبهی فاصلهی منهتن در مباحث و علوم مختلفی به کار میرود همانطور در بحثهای هوش مصنوعی در موضوعاتی نظیر شناسایی الگو کاربردهای فراوانی دارد.
فاصله اقلیدسی و منهتن در متلب
فاصله اقلیدسی چیست؟
با استفاده از مفهومی به نام فاصله اقلیدسی که در انگلیسی با Euclidean Distance شناخته میشود به سادگی میتوانید کوتاهترین فاصلهی بین دو نقطه روی یک صفحه مختصات را برطبق رابطهی معروف فیثاغورث، محاسبه کنید. اگر x و y دو نقطه در مولفهی p شوند. فاصله اقلیدسی بین این دو به صورت زیر قابل محاسبه است:
نتیجهی نهایی رابطهی اقلدیسی هیچ گاه منفی نمیشود.
فاصله اقلیدسی در متلب
برای محاسبه ی فاصلهی اقلیدسی در نرمافزار متلب از کد زیر استفاده کنید:
function distance = euclideanDistance(x1, y1, x2, y2) distance = sqrt( ((x1 - y1) ^ 2) + ((x2 - y2) ^ 2) ); end
نکته: کد بالا یک تابع نرمافزار متلب است که با نام euclideanDistance.m در کنار پروژهی شما استفاده میشود.
نکته: تابع زیر برای محاسبه ی فاصلهی اقلیدسی دو نقطه مقدار x و y هر نقطه را دریافت میکند و با فرمول معروف این رابطه به محاسبهی آن میپردازد.
فاصله منهتن چیست؟
اگر به جای مربع فاصلههای بین دو نقطه، از عملگر قدر مطلق فاصله بین نقاط استفاده شود، تابع فاصلهای که بدست میآید را منهتن یا در زبان انگلیسی Manhatan میگوییم. این نام به علت تقاطع منظم خیابانهای موجود در محلهی منهتن شهر نیویورک انتخاب شده است. البته فاصلهی منهتن در بین افراد گاهی به نام فاصلهی تاکسی یا Taxicab شناخته میشود. گاها شاید به جای فاصلهی منهتن یا فاصلهی تاکسی این مفهوم را با عنوان بلوک شهری یا City Block صدا کنند.
نتیجهی نهایی رابطهی منهتن هیچ گاه منفی نمیشود.
فاصله منهتن در متلب
برای محاسبهی فاصلهی منهتن در نرمافزار متلب از کد زیر استفاده کنید:
function distance = manhattanDistance(x1, y1, x2, y2) distance = abs((x1 - y1)) + abs((x2 - y2)); end
نکته: کد بالا یک تابع نرمافزار متلب است که با نام manhattanDistance.m در کنار پروژهی شما قابل استفاده است.
اگر نیاز به یادگیری نرمافزار متلب را دارید این لینک را دنبال کنید. در صورتی که روش های بهتری برای تمرین بالا در اختیار دارید برای ما ارسال کنید.
ارسال پاسخ