منبع اصلی این پست، پلیلیست Essence of Linear Algebra از کانال یوتیوب 3blue1brown میباشد. لطفاً برای حفظ حقوق منتشر کننده اصلی، ویدیوهارو از منبع اصلی دنبال کنید. همچنین، در عنوان تصاویری که از ویدیو اصلی آورده شده، دقیقه و ثانیه متناظر با ویدیو ذکر شده است.
سعی کردم هرچیزی که از ویدیوها فهمیدم رو به صورت متن در بیارم و در این پلتفورم با بقیه به اشتراک بذارم. کل ویدیوها 16 تاست که سعی میکنم هفتهای یک الی دو جلسه رو منتشر کنم. تا جایی که تونستم سعی کردم خوب و کامل بنویسم، اما اگر جایی ایرادی داشت، حتما تو کامنتها بهم بگید تا درستش کنم.
اگه تا به حال عبارتی مثل عبارت زیر رو دیدین، ولی هیچوقت درک نکردین که شهودش چیه و اصلاً داره چیو نشون میده، پس حتماً این جلسه رو تا انتها دنبال کنید.
همونطور که در جلسات ابتدایی دیدیم، هر برداری در فضای اولیه رو میتونیم از ترکیب خطی بردارهای پایه i و j نشون بدیم.
حالا ما اومدیم بردارهای پایه رو تو این فضا به صورت i و j در نظر گرفتیم. انگار فرضمون این بوده که بردار پایه i بیاد به صورت افقی باشه و اولین مولفه رو مشخص کنه و بردار j هم به صورت عمودی باشه و دومین مولفه رو نشون بده. از طرفی اندازه هر دو بردار i و j هم برابر با یک باشه.
همونطور که یکم قبلتر هم گفتیم، بردارهای پایه دستگاه مختصات دو بعدی اولیه همون بردارهای i و j هستن.
حالا فرض کنید یه آدمی به نام کوکب (تو ویدیو از اسم جنیفر استفاده میکنه، من خواستم اسمش کوکب باشه) میاد و در دنیای خودش بردارهای پایه رو به صورت زیر تعریف میکنه و دو بردار پایه رو با b1 و b2 نشون میده.
حالا فرض کنید ما در دنیای عادی هستیم (منظور دستگاه مختصات عادیه که بردارهای پایهش برابر با i و j هست)، بعد بردار زیر رو داریم با مختصات (2 ,3) نشون میدیم.
حالا کوکب میخواد همین بردار زرد رنگ رو تو دنیای خودش با بردارهای پایهای که خودش داره تعریف کنه. بردار زرد رنگ تو دنیای کوکب به صورت زیر میشه و با مختصاتی که تو تصویر پایین نشون داده شده تعریف میشه.
حالا این دفعه، کوکب میاد در دنیای خودش یک بردار زرد رنگ دیگه تعریف میکنه که مختصاتش در تصویر زیر نشون داده شده.
اگه ما بیایم از مختصاتی که کوکب برای تعریف بردار زرد استفاده کرده استفاده کنیم، نتیجهای که حاصل میشه کلاً متفاوته و بردار حاصل در دنیای ما فرق میکنه با چیزی که در دنیای کوکب وجود داشت.
اگه ما بخوایم تو دنیای خودمون بردارهای پایه کوکب رو مختصاتش رو مشخص کنیم، به اعدادی که در تصویر زیر نشون داده شده میرسیم.
ولی به این نکته توجه کنید که این بردارهای پایه از دید ما مختصاتش اینطوره، از دید خود کوکب طول بردارهای پایهای که داره برابر با 1 هست و به صورت زیره. تو دنیای کوکب دستگاه مختصات به صورت زیر تعریف میشه.
پس چی شد تا الان؟ چیز خاصی نشد. ما صرفاً دو آدم از دو دنیای مختلف با دو زبان متفاوت هستیم. دنیا و زبان ما، دنیا و زبان کوکب. بردار زرد رنگی که تو تصویر زیر اومده در واقع یک چیزه ولی در هر دنیایی به یک نحوی تعریف میشه. در دنیای ما مختصاتش (2 ,3) هست ولی در دنیای کوکب فرق میکنه.
گرید (خطوط آبی) و بردارهای پایه در دنیای ما به صورت زیر هست:
در حالیکه گرید و بردارهای پایه در دنیای کوکب به شکل زیره:
نکتهای که وجود داره اینکه مبدا مختصات در هر دو دنیا باهم یکیه. یعنی بردار با مختصات (0 ,0) چه در دنیای ما چه در دنیای کوکب یک چیزه. ولی خب جهت و راستای محورها و گریدی که ساخته میشه با توجه به برداهای پایه تعریف میشه و در دو دنیا باهم فرق دارن.
حالا سوال اینجاست که ما چجوری باید حرف هم دیگه رو بفهمیم؟ چجوری حرفهامون رو ترجمه کنیم و بهم بگیم؟ مثلاً برداری که در دنیای کوکب مختصاتش به صورت زیر هست، در دنیای ما معادل با چه مختصاتی میشه؟ چجوری باید به دست بیاریمش؟
اگه بخوایم از دنیای خودمون به جهان کوکب نگاه کنیم، میفهمیم که بردارهای پایهای که کوکب تعریف کرده مختصاتش به ترتیب میشه (1 ,2) و (1 ,1-). از طرفی کوکب در دنیای خودش کافی بود بردار پایه سبز رنگش رو در 1- اسکیل کنه و بردار پایه قرمز رنگش رو در 2 تا بردار زرد رنگ رو نشون بده.
حالا که ما میدونیم بردارهای پایه کوکب چه مختصاتی در دنیای ما دارن، میتونیم بفهمیم که حرف کوکب چیه و مختصاتی که داره تو دنیای خودش تعریف میکنه، تو دنیای ما معادل با چی میشه. فقط کافیه بیایم اعداد 1- و 2 رو در مختصاتی که برای بردارهای پایه کوکب به دست آوردیم اسکیل کنیم و بعد باهم جمع کنیم.
کاری که اینجا کردیم دقیقاً معادل هست با ضرب ماتریس در بردارها که در جلسات قبلی با یه دید دیگه کاملاً بررسی کردیم. ماتریسی که داره ضرب میشه هر ستونش معادل با یکی از بردارهای پایهای هست که در دنیای کوکب وجود داره و وقتی تو برداری که داریم ضرب بشه، بهمون میگه مختصات بردار زرد رنگ که در دنیای کوکب مختصاتش (2 ,1-) بود، در دنیای ما معادل با چه مختصاتی میشه.
حالا بردار با مختصات (2 ,1-) در دنیای ما به صورت زیر تعریف میشه:
در حالی که همین بردار با همین مختصات در دنیای کوکب به صورت زیر بیان شده:
ماتریس تبدیلی که مختصات بردارهای پایه کوکب رو توش به صورت ستونی گذاشتیم بهمون کمک میکنه که بفهمیم منظور کوکب از مختصات (2 ,1-) چیه و خب یه جورایی قبلاً هم دیدیم که چجوری شد.
این ماتریس تبدیل، به صورت هندسی انگار میاد میگه که گرید دنیای ما در دنیای کوکب چه شکلی میشه. ولی به صورت عددی اگه بررسی کنیم، در واقع بهمون میگه که برداهای دلخواهی که در دنیای کوکب تعریف شدن در واقع در دنیای ما دارای چه مختصاتی خواهند شد.
برای بررسی بیشتر بریم سراغ اون مثالی که در اول مطرح کردیم. برداری که در دنیای خودمون به این شکل تعریف میشه:
و در دنیای کوکب به صورت زیر:
میخوایم این رو بفهمیم که چجوری اومدیم مختصات بردار رو در دنیای کوکب حساب کردیم.
بالاتر در مورد ماتریس تبدیل چی گفتیم؟ گفتیم اون ماتریس داره بهمون میگه که اگه بخوایم مختصاتها رو در دنیای کوکب بفهمیم و به زبان خودمون ترجمه کنیم از اون ماتریس استفاده میکنیم. یعنی اون ماتریس تبدیل بهمون میگه که مختصاتهای دنیای کوکب در دنیای ما کجا میرن.
حالا اینجا میخوایم چی رو بفهمیم؟ میخوایم بفهمیم مختصاتها در دنیای ما اگه برن به دنیای کوکب چه شکلی میشن و به چه اعدادی مپ میشن. دقیقاً بر عکس حرف بالا. پس باید چیکار کنیم؟ باید به جای خود ماتریس تبدیل، باید از وارون ماتریس تبدیل استفاده کنیم! در واقع وارون ماتریس تبدیل، میاد حرفهای دنیای مارو به حرفهای دنیای کوکب ترجمه میکنه.
حالا معکوس ماتریس تبدیل چیه؟ داره میگه من میخوام بیام تبدیلی بزنم که اون فضای تبدیل یافته رو به فضای عادی برگردونم. قبلاً در موردش مفصلاً توضیح دادیم.
حالا، اومدیم و و معکوس ماتریس تبدیل رو حساب کردیم و به صورت زیر شد:
اگه بخوایم بفهمیم مختصات بردارهایی که در دنیای ما تعریف میشن، در دنیای کوکب چه مختصاتی میگیرن، باید ماتریس وارون رو ضرب کنیم در مختصات بردارهایی که در دنیای خودمون تعریف کردیم.
بیاید چیزایی که تا اینجا بررسی کردیم رو یه جمعبندی کنیم.
دو دنیای مختلف وجود داره. یکی دنیای ماست که دستگاه مختصات عادیه و با بردارهای پایه i و j تعریف میشه. یکی دنیای کوکب هست که تبدیل یافته دنیای ماست و با بردارهای پایهای که خودش دوست داشته تعریف کرده. ما از دنیای کوکب این رو میدونیم که بردارهای پایهای که تعریف کرده به زبون دنیای خودمون چی میشه. و اون بردارهای پایه رو در یک ماتریسی به نام A به صورت ستونی قرار دادیم. یعنی هر ستون ماتریس A نشون میده که مختصات بردارهای پایه کوکب به زبون دنیای ما چی میشه. تو تصویر زیر هم آورده شده.
حالا سمت راست تصویر زیر رو ببینید. بردار صورتی رنگ مختصاتی هست که کوکب داره اعلام میکنه. مختصات بردار صورتی برای کوکب معلومه که چیه ولی ما نمیفهمیم حرفش رو و بایدبه زبون دنیای خودمون ترجمه کنیم. برای اینکه بفهمیم کوکب چی میگه، باید بیایم ماتریس A رو در حرف کوکب ضرب کنیم. جواب این ضرب میشه ترجمه شده حرف کوکب! یعنی ما میفهمیم مختصاتی که کوکب داره به زبون خودش میگه در دنیای ما معادل با چه مختصاتی میشه.
حالا ما اینجا فهمیدیم که چجوری حرفهای کوکب رو به زبون دنیای خودمون ترجمه کنیم. کوکب چجوری باید حرفهای مارو بفهمه؟ کوکب چجوری حرفهای مارو به زبون دنیای خودش ترجمه کنه؟ اینجا برعکس چیزی که بالا گفتیم میشه. یعنی کوکب برای اینکه بفهمه ما چی میگیم، باید بیاد مختصات دنیای مارو در وارون ماتریس A ضرب کنه و حرف مارو به این شکل به زبون دنیای خودش ترجمه کنه.
حالا ما تا اینجا فهمیدیم که بردارهارو باید چجوری بین زبانهای مختلف در دنیای خودمون و در دنیای کوکب ترجمه کنیم و حرف هم دیگه رو بفهمیم، ولی فقط که بردار نیست! مثلاً چجوری باید تبدیلهای خطی رو مشخص کنیم؟ اگه متوجه منظورم نمیشید تصاویر و توضیحات زیر رو ببینید.
فرض کنید ما در دنیای خودمون هستیم و یک تبدیل خطی زدیم که باعث شده دستگاه مختصات اولیهمون 90 درجه در خلاف جهت عقربههای ساعت بچرخه. مختصات بردارهای پایه رو هم بعد از تبدیل در یک ماتریس قرار دادیم. واضحه که همه چیز رو داریم به زبون دنیای خودمون اینجا تعریف میکنیم.
حالا سوال اینجاست که کوکب در دنیای خودش چجوری میاد تبدیل خطیای که ما در دنیای خودمون تعریف کردیم رو تعریف میکنه. یعنی وقتی میاد دستگاه مختصات دنیای خودش رو 90 درجه در خلاف جهت عقربههای ساعت میچرخونه ماتریس تبدیلی که داره چه مختصاتی میگیرن.
ممکنه یکی بیاد اینطور جواب سوال رو بده، که بیایم اون ماتریس تبدیل رو که در دنیای خودمون به دست آوردیم، ستونهاش رو به زبون کوکب ترجمه کنیم. ولی این حرف کاملاً درست نیست. چرا درست نیست؟ چون اون ماتریس داره نشون میده که بردارهای پایه i و j که در دنیای خودمون داریم بعد از تبدیل کجا میرن نه بردارهای پایه دنیای کوکب. ماتریسی که کوکب دنبالشه باید این رو نشون بده که بردارهای پایهای که کوکب خودش در دنیای خودش تعریف کرده، بعد از اعمال تبدیل خطی rotation کجا میرن.
جواب دادن به این سوال یکم ممکنه پیچیده بشه. سعی کنید هر مرحله رو به خوبی دنبال کنید و پیشنهادم اینکه بعد از مطالعه این مقاله حتماً ویدیو مرتبط با این جلسه رو هم ببینید.
یه بار دیگه بگیم که دنبال چی هستیم. تا اینجا فهمیدیم که چجوری بردارهارو از زبان دنیای کوکب به زبان دنیای خودمون و از زبان دنیای خودمون به زبان دنیای کوکب ترجمه کنیم. رفتیم سراغ تبدیل خطی rotation که باعث میشه دستگاه مختصات 90 درجه در خلاف جهت عقربههای ساعت بچرخه. دنبال این بودیم که بفهمیم این rotation رو که یک ماتریس هست چطور از زبان دنیای خودمون به زبان دنیای کوکب ترجمه کنیم. یعنی دنبال ترجمه کردن ماتریسها در این دو دنیا هستیم.
در گام اول، فرض کنید بردار زیر یک مختصاتی باشه که به زبان دنیای کوکب تعریف شده:
در گام دوم، ما میخوایم بفهمیم مختصات برداری که به زبان کوکب بیان شده به زبان خودمون معادل با چی میشه. پس برای اینکار باید بیایم ماتریسی که نشون میده مختصات بردارهای پایه دنیای کوکب، به زبان دنیای ما چی میشه رو ضرب کنیم در این بردار داده شده به زبان کوکب. حاصل این ضرب میاد بردار دنیای کوکب رو به زبان دنیای ما ترجمه میکنه.
در گام سوم، میایم ماتریس تبدیل rotation رو که در دنیای خودمون تعریف کرده بودیم ضرب میکنیم در چیزی که تا اینجا به دست اومده. تو این سه گام تا اینجا چیو داریم نشون میدیم؟ داریم میگیم کوکب بهمون یه مختصاتی داده بود به زبان خودش. ما اول اومدیم اون رو به زبان دنیای خودمون ترجمه کردیم. بعد الان با ضرب ماتریس rotation در دو گام قبلی، میفهمیم که اگه رو مختصات بردار کوکب rotation بزنیم، در دنیای ما مختصاتش چی میشه و کجا میره.
در گام آخر، باید بیایم معکوس ماتریسی که مختصات بردارهای پایه دنیای کوکب رو در دنیای ما نشون نشون میداد ضرب کنیم تو چیزی که تا اینجا به دست اومده. چرا این کار رو میکنیم؟ چون نتیجهای که در گام سوم به دست اومد، داشت این رو نشون میداد که مختصات برداری که کوکب بهمون داده بعد از rotation در دنیای ما چی میشه. اگه کوکب بخواد بفهمه برداری که داشته بعد از rotation در دنیای خودش مختصاتش چی میشه باید نتیجهای که به دست اومده و به زبون دنیای خودمون هست رو به زبون دنیای کوکب ترجمه کنیم. پس برای این کار میایم معکوس ماتریس بردارهای پایه کوکب که به زبان خودمون هست رو در نتیجه گام سوم ضرب میکنیم تا چیزی که در دنیای ما قابل فهمه، برای کوکب هم قابل فهم بشه.
در نتیجهی این چهار گام، کوکب میتونه بفهمه برداری که به زبون خودش مختصات (2 ,1-) داشته بعد از اعمال rotation 90 درجه به چه مختصاتی در دنیای خودش مپ میشه.
وقتی ما میتونیم برای یک بردار با مختصات رندوم این مراحل رو انجام بدیم، یعنی میتونیم برای هر برداری مثل بردار v همین مراحل رو جلو ببریم. به سه گام دوم، سوم و چهارم، ترجمه کردن ماتریس rotation از زبان دنیای ما به زبان دنیای کوکب گفته میشه. یعنی الان رابطه پایین داره این رو نشون میده که rotation 90 درجه در دنیای کوکب به چه صورتی انجام میشه. به عبارتی دیگه، با رابطه زیر، کوکب میتونه بفهمه که هر بردار دلخواهی در دنیای خودش بعد از rotation 90 درجه کجا میفته.
اگه بیایم محاسبات رو برای سه ماتریس انجام بدیم نتیجه نهایی به صورت زیر میشه:
کوکب با ضرب کردن ماتریس بالا در هر بردار دلخواهی از دنیای خودش، میفهمه که اون بردار بعد از چرخش 90 درجه در دنیای خودش به کجا مپ میشه. مثلا بردار زیر رو که در دنیای خودش مختصات (2 ,1) داره، میخواد ببینه بعد از 90 درجه چرخش کجا میفته.
بعد از ضرب ماتریس محاسبه شده در بردار، میفهمه که برداری که داشت، بعد از 90 درجه چرخش، مپ میشه به مختصات (1 ,1-) که در تصویر پایین نشون داده شده.
خب رسیدیم به قسمت هیجانانگیزناک این جلسه! این همه داستان سر هم کردیم و از دنیای خودمون و دنیای کوکب حرف زدیم تا به این نتیجه برسیم که هر وقت یه عبارتی مثل عبارت زیر دیدین، بفهمین که شهود هندسیش چیه و داره بهمون چیو نشون میده. ماتریس A داره این رو نشون میده که بردارهای پایه i و j که در دنیای ما تعریف شدن، در دنیای یک فرد دیگهای مثل کوکب کجا میرن (البته که مختصاتی که دارن به زبان دنیای خودمون هست) و ماتریس M هم داره ماتریس تبدیل خطیای رو نشون میده که در دنیای خودمون رو دستگاه مختصات اولیه زده شده.
به صورت کلی عبارت بالا میخواد این رو بگه که اگه ما در دنیای عادی خودمون باشیم و یک تبدیل خطی روی دستگاه مختصات اولیه خودمون اعمال کنیم، اون تبدیل خطی اعمال شده در دنیای کوکب یا در دنیای اصغر یا در دنیای هر آدم دیگهای که با دنیاش با دنیای ما فرق داره به چه صورت اعمال میشه.
پیشنهاد میکنم که حتما ویدیو این جلسه رو یه نگاهی بهش بندازید تا بهتر مطالب در ذهنتون جا بگیره.
شهود عبارت زیر رو به صورت هندسی بررسی کردیم و جزییاتش رو دیدیم.
اگر جایی ایراد یا مشکلی بود، حتما بهم بگید تا تصحیحش کنم.