سرآغاز
تاریخچه محاسبات دیجیتال به دو بخش عهد عتیق و عهد جدید قابل تقسیم است. پیشوایان عهد قدیم به سرپرستی لایبنیتز (Gottfreid Wilhelm Leibniz) در سال 1670 میلادی منطق مورد نیاز ماشینهای محاسباتی دیجیتال را فراهم کرده و پیشروان عهد جدید به سرپرستی فون نویمان (John von Neumann) در سال 1940 خود این ماشینها را ساختند. آلن تورینگ، که در سال 1912 متولد شده است، جایی در میان این دو عصر مهم قرار گرفته و شاید بتوان وی را به نوعی پیوند دهنده این دو عهد مهم به شمار آورد. وی در سال 1936، درست در زمانی که به تازگی از کالج کینگ در دانشگاه کمبریج فارغالتحصیل شده و به دانشگاه پرینستون در نیوجرسی امریکا رفته بود، با نگارش و انتشار مقالهای با عنوان «درباره اعداد رایانشپذیر، با کاربردی بر مسئله تصمیمگیری» (On Computable Numbers, with an application to the Entscheidungs problem )، راهنمای پیادهسازی ماشینهای با منطق ریاضی شد.
در این مقاله، تورینگ قصد داشت تا مسئله Entscheidungs problem ریاضیدان آلمانی، دیوید هیلبرت (David Hilbert) را که در سال 1928 طرح کرده بود، حل کند. موضوع نهایی مسئله فوق، تصمیمگیری درباره این بود که آیا یک روال مکانیکی میتواند صحت یک عبارت منطقی را در تعداد محدودی حرکت تعیین کند یا خیر؟ تورینگ در این مقاله، ایده و تصور رایج در دهه 1930 از یک کامپیوتر (یک شخص مجهز به یک مداد، کاغذ و دستورالعملهای مشخص) را در نظر گرفته و با حذف تمام رگههای هوشمندی (Intelligence) از آن به غیر از امکان پیروی از دستورالعملها و امکان خواندن و نوشتن علامتهایی از یک الفبای خاص روی یک رول کاغذ با طول بی نهایت، ماشینی را معرفی کرد که بعدها به ماشین تورینگ معروف شد و سرآغاز طلوع ماشینهای محاسباتی دیجیتال امروزی شد. ماشین تورینگ، یک جعبه سیاه ریاضیاتی بود که از یک سری دستورالعمل از پیش تعیین شده پیروی میکرد. این دستورالعملها با استفاده از علامتهايي مشخص که روی کاغذ یا نوع خاصی از حافظه نوشته میشد به ماشین تحویل داده میشد. این ماشین میتوانست در هر لحظه، یک علامت را از روی یک خانه خوانده، نوشته یا پاک کند و خانه مذکور را که یک واحد کوچک موجود روی رول کاغذ است به سمت چپ یا راست هدایت کند. علامتهای پیچیده میتوانند بهصورت دنبالهای از علامتهای سادهتر پیادهسازی شوند و در این حالت، پیچیدگی احتمالی، تشخیص تفاوت بین دو علامت مختلف و وجود یا نبود فاصلههای خالی روی نوار است. «بیت»های اطلاعاتی در این ماشین میتوانند دو فرم مختلف داشته باشند: الگوهایی در فضا که در طول زمان ارسال میشوند و حافظه مدتدار خوانده میشوند یا الگوهایی در زمان که در فضا ارسال شده و کد نامیده میشوند. در ماشین تورینگ، زمان بهصورت رشتهای از اتفاقات یکسان نیست، بلکه به صورت دنبالهای از تغییر حالات در ماشین مذکور قابل تصور خواهد بود.
ایده ماشینهای بدون قطعیتِ پیشگو، به اساس کار هوش نزدیکتر بود؛ شهود و بینش، پرکننده فاصله میان عبارات منطقی است.
در ادامه مقاله، تورینگ امکان وجود ماشین منفردی را مطرح کرد که میتواند هر توالی محاسباتی را محاسبه کند. «چنین ماشین محاسباتی جامعی میتواند رفتار هر ماشین دیگری را با استفاده از شرح کار کد شده آن تقلید کند.» بنابراین، با ذکر این عبارت، تورینگ ایده «نرمافزار» را در حدود 76 سال قبل پیشگویی کرده بود. در پایان، تورینگ مسئله پیچیده هیلبرت را به روشی جالب پاسخ داده است. او عبارتی را یافته بود که در تعداد گامهای محاسباتی محدود، توسط هیچ ماشینی قابل محاسبه نبود: آیا شرح کار کد شده یک ماشین که توسط ماشین محاسباتی جامع تورینگ اجرا میشود، در نهایت به پایان میرسد یا برای همیشه اجرا میشود؟ بر همین اساس، وی پاسخ مسئله
Entscheidungs problem را منفی دانسته و از این طریق، پايهگذار طراحی ماشینهای محاسباتی دیجیتال شد. در سال 1949، فوننویمان در یک سخنرانی با اشاره به این مفهوم مطرح شده توسط تورینگ عنوان کرد: «شما میتوانید چیزی بسازید که کاری را که میشود انجام داد، انجام دهد. اما نمیتوانید نمونهای بسازید که به شما بگوید که آیا آن کار انجامپذیر است یا خیر؟»
تورینگ با درک محدودیتهای ماشینهای با قطعیت مشخص، شروع به جستوجو در زمینه محاسبات غیرقطعی با ماشینهای پیشگو کرد. از نظر او، این نوع ماشینها، همان روال گام به گام را مورد استفاده قرار میدهند اما با استفاده از نوعی پیشگویی، گاهی جهشهایی غیرقابل پیشبینی نیز انجام میدهند.
رمزگشایی
پس از پایان تحصیلات در دوره دکترا، تورینگ در سال 1938 به انگلیس بازگشت و گسترش جنگ جهانی دوم منجر به بروز نیاز هرچه بیشتر به ایدههای وی شد. به همین دلیل، وی در مدرسه رمز و کدهای محرمانه دولت به خدمت گرفته شد. در آنجا، تورینگ و همکارانش به همراه استادش، ماکسول نیومن (Maxwell Newman) ارتباطات دشمن را، از جمله پیامهای کدگذاری شده توسط ماشین آلمانی انيگما، رمزگشایی کردند. انیگما، ماشینی شبیه به ماشین تورینگ بود که امکان کدگذاری متن ورودی خود را با مکانیزمی مکانیکی فراهم میکرد. آنها کار کدگشایی رمزهای انیگما را با مجموعهای از دستگاههای الکترومکانیکی که بمب (bombe) نامیده میشدند، شروع کردند که هر کدام میتوانست در هر لحظه 36 حالت احتمالی پیکربندی انیگما را شبیهسازی کند. از این طریق، آنها توانستند با همکاری افرادی دیگر، کامپیوتری بسیار پیچیده و دیجیتال با نام Clossus بسازند که از یک حافظه داخلی ساخته شده با 1500 لامپ خلاء بهره میبرد که وضعیت حافظه برنامهپذیری را برای جستوجوی کدها فراهم میکرد. این مدل بعدها با نسل دوم خود با 2400 لامپ خلاء جایگزین شد که علاوه بر تأثیر اساسی بر نتیجه جنگ، تحولی شگرف در تکامل رایانههای دیجیتال به شمار میآمد. اسرار مربوط به ساخت این ماشین برای حدود 30 سال از طرف سازمانهای اطلاعاتی انگلیس بهصورت محرمانه نگهداری میشد. پس از پایان جنگ، نیاز به کامپیوترهای پیشرفتهتر، از کاربردهای رمزگشایی به سمت طراحی بمبهای اتمی پیش رفت. در سال 1946 ایالاتمتحده با داشتن کامپیوتر زمان جنگ خود، یعنی ENIAC (سرنام Electronic Numerical Integrator and Computer)، کار روی طراحی سلاحهای اتمی را در پیش گرفت. در انستیتو مطالعات پیشرفته پرینستون و با حمایت مالی ارتش ایالاتمتحده، دفتر تحقیقات نیروی دریایی و همچنین کمیسیون انرژی اتمی امریکا، فوننویمان موظف شد تا نمونه الکترونیکی ماشین جامع تورینگ را بسازد. در آن زمان، هدف او ساخت ماشین تورینگی بود که حافظه آن با سرعت نور قابل دسترسی بوده و به پردازش در زمینههای مختلف میپرداخت. اما هدف دولت ایالات متحده امریکا از سرمایهگذاری روی چنین ماشینی تعیین امکان ساخت بمب هیدروژنی بود و به همین دلیل، فون نویمان قول داد که ماشین مذکور که از 5 کیلوبایت فضای ذخیرهسازی بهره میبرد، امکان اجرای کدهای داینامیک مذکور را داشته باشد. بعدها، طراحی کامپیوتر مذکور در اختیار همگان گذارده شد و آيبيام آن را تجاری کرد. در نخستین جلسه هماهنگی برای اجرای پروژه مذکور در سال 1945، فون نویمان اعلام کرد که قصد دارد پیادهسازی دستورات را نیز همانند اعداد در حافظه انجام دهد و این ترکیب دادهها و دستورالعملها کاملاً براساس مدل تورینگ بود.
به همین دلیل، از لحاظ منطق و معماری، بیشتر کامپیوترهای امروزی از نوادگان مستقیم ماشین تورینگی هستند که از تجهیزات بهجا مانده از جنگ در ساختمانی واقع در مزرعهای در نیوجرسی ساخته شده بود. تورینگ و فون نویمان نخستینبار یکدیگر را در سال 1935 در کمبریج ملاقات کردند و پس از آن به مدت دو سال در دانشگاه پرینستون در کنار یکدیگر بودند. جایی که نیومن برای مدت شش ماه به آنها ملحق شد و در کنار یکدیگر به تحصیل و تبادل نظر پرداختند.
اینکه فن نویمان و تورینگ تا چه حد در زمان جنگ با یکدیگر همکاری داشتهاند، چندان معلوم نيست، اما چیزی که مشخص است آن است که تورینگ از نوامبر 1942 تا مارس 1943 در امریکا حضور داشته است در حالی که فون نویمان از فوریه تا جولای 1943 در انگلیس بوده است. در طی جنگ، فیزیکدانان انگلیسی با همکاری فون نویمان، همکاریهای بسیار مهمی را در پروژه بمب اتمی در Los Alamos در نیومکزیکو به انجام رساندند. در عین حال، تحلیلگران رمز امریکایی، در انجام تلاشهای رمزگشایی انگلیس به همکاری با تورینگ پرداختند. با اینکه تورینگ، فوننویمان و نیومن نمیتوانستند آزادانه با هم مکاتبه کنند اما شاید ایدههایشان را در خلال و پس از اتمام جنگ بهصورت شفاهی با یکدیگر در میان گذاشتهاند. مدل تورینگ یک مدل یک بعدی بود که رشتهای از علامتها را روی یک نوار کاغذی در نظر میگرفت در حالی که پیادهسازی فون نویمان یک مدل دو بعدی به شمار میآمد؛ یک ماتریس با آدرس دسترسی تصادفی که در بیشتر کامپیوترهای امروزی نیز وجود دارد. اینترنت- مجموعهای از ماشینهای به هم پیوسته تورینگ که به یک نوار مشترک دسترسی دارند- چشمانداز مدل مربوطه را سه بعدی کرد و هنوز، روش کار کامپیوترها از سال 1946 تاکنون بیتغییر باقی مانده است.
درس گرفتن از اشتباهات
تورینگ و نویمان از وجود خطا در ماشینهایشان مطلع بودند. با اینکه کدهای آن زمان به سادگی قابل اشكالزدايي بودند، اما سختافزار به شدت غیرقابل اطمینان بود و نتایجی بیثبات ارائه میکرد. مشکلی که اکنون کاملاً برعکس شده است. هردوی آنها میدانستند که سیستمهای بیولوژیک روی متدهای آماری و مقاوم در برابر خطا برای پردازش متمرکز شدهاند (سیستمهایی نظیر کدگذاری فرکانسی پالسها در مغز) و فرض کردند که فناوری نیز باید از همین روند پیروی کند. به اعتقاد فون نویمان، اگر هر خطا گرفته شده، تبیین میشد و سپس تصحیح میشد، سیستمی به پیچیدگی ارگانیسمهای زنده نمیتوانستند پاسخهایی در حد میلیثانیه داشته باشند. به اعتقاد تورینگ نیز اگر باید ماشینی بیخطا باشد، پس نمیتواند هوشمند نیز باشد. وقتی تورینگ در سال 1948به گروه نیومن در دانشگاه منچستر که مشغول طراحی Manchester Mark 1 بودند پیوست، یک تولیدکننده عدد تصادفی در آن گنجاند که اجازه میداد کامپیوتر حدس زده و از اشتباهات خود درس بگیرد. لازم به ذکر است که Manchester Mark 1، نمونه اولیه Ferranti Mark 1 بود که نخستین کامپیوتر دیجیتالی با برنامه ذخیره شده به شمار میآمد.
با اینکه ماشین جامع با قطعیت تورینگ بیشترین توجهها را به سوی خود جلب کرد، ایده ماشینهای بدون قطعیتِ پیشگوی وی به اساس کار هوش نزدیکتر بود؛ شهود و بینش، پرکننده فاصله میان عبارات منطقی است. ماشینهای پیشگوی تورینگ امروزه دیگر مفاهیم مجرد نظري نیستند چراکه موتورهای جستوجوی اینترنت مثال خوبی از وجود آنها بهشمار ميآيند. یک موتور جستوجو در حالت عادی بهصورت قطعیتی (deterministic) کار میکند تا زمانی که کاربری روی یک لینک کلیک میکند. از این طریق، کاربر بهطور غیرقطعی (non-deterministic)، مکان اطلاعات سودمند و پر ارزش را به نقشه دادهای موتور جستوجو اضافه میکند.
تورینگ میخواست بداند که چگونه مولکولها میتوانستند بهطور مجموعهای خود را سازماندهی کرده یا اینکه آیا ماشین میتواند فکر کند یا خیر؟ فون نویمان میخواست بداند که مغز چگونه کار میکند و آیا ماشینها میتوانند خود را بازتولیدکنند؟ تورینگ که در سن 41 سالگی درگذشت، یک نظريه ناتمام در زمینه Morphogenesis (تکوینِ ترکیب) از خود بهجای گذاشت و فون نویمان نیز که در سن 53 سالگی درگذشت، یک تئوری ناتمام در زمینه خود بازتولیدی (مدلی که براساس برداشتی از توانایی ماشین تورینگ از تولید کپیهایی از خود شکل گرفته بود) از خود بهجای گذارد. اگر هردوی آنها مدت طولانیتری زنده میماندند و ایدههای آن دو با یکدیگر ترکیب میشد، نتایج جالب و شگفتانگیزی میتوانست رقم بخورد. زندگی آنها به فاصله بسیار کوتاهی از کشف مکانیزم درونی ترجمه بین توالی و ساختار در بیولوژی به اتمام رسید و اگر آنها از این کشف مطلع میشدند، چه نوآوریهای خارقالعادهای را میتوانستند به ارمغان بیاورند!
برای مطالعه قسمت بعد روايت شكستهشدن كدهای انيگما در جنگ جهانی دوم روی لینکهای زیر کلیک کنید:
ماهنامه شبکه را از کجا تهیه کنیم؟
ماهنامه شبکه را میتوانید از کتابخانههای عمومی سراسر کشور و نیز از دکههای روزنامهفروشی تهیه نمائید.
ثبت اشتراک نسخه کاغذی ماهنامه شبکه
ثبت اشتراک نسخه آنلاین
کتاب الکترونیک +Network راهنمای شبکهها
- برای دانلود تنها کتاب کامل ترجمه فارسی +Network اینجا کلیک کنید.
کتاب الکترونیک دوره مقدماتی آموزش پایتون
- اگر قصد یادگیری برنامهنویسی را دارید ولی هیچ پیشزمینهای ندارید اینجا کلیک کنید.
نظر شما چیست؟