پنجشنبه، خرداد ۲۸، ۱۴۰۵

مفهوم یا تصور کمال، تکامل و میدانهای برداری، و نظریه پتانسیل

 تبیین ریاضی انتقادی مفاهیم کمال-محور و تکامل-محور: تمایز میان میدان برداری و تابع پتانسیل

در ریاضیات، مبحثی به نام «فضای برداری» و «نظریه پتانسیل» وجود دارد. یک میدان برداری می‌تواند گرادیان یک پتانسیل باشد، اما در عین حال می‌تواند چنین نباشد. به بیانی دیگر، گرادیان یک تابع (خواه تابع هدف، کاست فانکشن، فیتنس، تابع پتانسیل یا تابع اولیه و انتگرال‌پذیر باشد) همیشه یک میدان برداری است؛ اما همیشه به ازای یک میدان برداری، یک تابع پتانسیل وجود ندارد که گرادیانش آن میدان باشد. (نباید میدان برداری را با فضای برداری اشتباه گرفت).

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

ارتباط ابسترکت ریاضی با نظریه تکامل و مفاهیم فرگشت

یکی از کاربردهای این بحث در نظریه تکامل (فرگشت) و مفهوم «فیتنس» (شایستگی) نمایان می‌شود. در حقیقت، فیتنس یک تابع از پیش‌موجود نیست. سوای اینکه دسترسی به آن ممکن است یا خیر، حتی خوش‌تعریف بودن آن از نظر ریاضی نیز اهمیتی ندارد؛ چرا که تکامل به آن احتیاجی ندارد. در مقابل، فضای برداریِ جهتِ تکامل در هر لحظه را می‌توان یک آبجکت ریاضی خوش‌تعریف دانست.

در فرگشت، حتی اگر نقطه ایده‌آلی وجود داشته باشد یا در حالتی ضعیف‌تر، اگر تابع پتانسیلی برای آن خوش‌تعریف نباشد، باز هم می‌توان قائل به پروسه فرگشت (سابقا: تکامل) بود. مفهوم اصلی، وجود یک «میدان برداری» است که در هر حالت موجود و فعلی، مشخص می‌کند موجود مورد نظر در چه جهتی به سمت فیتنس حرکت می‌کند؛ حتی اگر خود تابع فیتنس خوش‌تعریف نباشد.

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

ریشه کلمه فیتنس (Fitness) در زبان انگلیسی و فرهنگ عامیانه به معنای تناسب (مثلاً Fit\ for\ work یا اصطلاحاً افراد خوش‌تیپ و متناسب) است (لزوماً منظور از آن بدنسازی نیست). در کانوتیشن های ظریف آن، به معنای قابل رقابت با نظابر است، پس نسبی است. اما در تکامل و فرگشت، کافی است یک یا چند جهت وجود داشته باشد که سمت بهبود موجود را در رقابت با بقیه نشان دهد؛ یعنی همان جهت مماس که یک خاصیت یا موجود لوکال (موضعی) در فضای حالت است. در اصطلاح ریاضی، یک هندسه وجود دارد و در فضای لوکال آن، یک میدان برداری (Vector Field) تعریف می‌شود که این موضوع به مفاهیم منیفولد (خمینه) و متریک نیز مرتبط است.

تفکیک وابستگی‌ها در نظریه‌های ساختاری و آرمان‌شهری

در یک نظریه منسجم، لازم نیست فرض شود که ایده‌آل و آرمان‌شهر حتماً باید وجود داشته باشند یا قابل طرح باشند تا سیستم کار کند. ممکن است آرمان‌شهر یا انسان آرمانی ممکن یا ناممکن باشد، اما این مسئله در اصلِ کارکرد تفاوتی ایجاد نمی‌کند. ارائه لیستی از خصوصیات که تکالیف را مشخص کند، از نظر علمی و ریاضی کاملاً خوش‌تعریف و ممکن است؛ زیرا این ساختار از نظر ریاضی موجودی شبیه به فضای برداری است.

این ساختار به‌طور لوکال به هر عاملی در هر جای هندسه این خمینه یا لندسکیپِ وضعیت (فضای حالت)، نشان می‌دهد که چه جهت یا جهت‌هایی رو به بهبود هستند. افراد با تصمیم لوکال، شخصی و ارجاع به «من» و «اکنون» می‌توانند به یک قاعده هیوریستیک (اکتشافی) تجویزی یا سِـنسی از آن دست یابند. از این بابت، این رویکرد نوعی قاعده سرانگشتی (Rule\ of\ thumb) یا هیوریستیک (Heuristic) است. به عبارتی، از نظر ریاضی نیازی به توسل به آرمان‌شهر یا اَبَرانسان نیست. آن مفاهیم جایگاه خود را دارند، اما وابستگی (Dependency) مفاهیم از یکدیگر جدا می‌شود؛ پدیده‌ای که در مهندسی مدرن نرم‌افزار به آن مدیریت وابستگی (Dependency\ management) می‌گویند.

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


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


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

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

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

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

ابزاری دیگر، در جعبه ابزار بیانی و تحلیلی (موشکافی) برای توان‌افزایی و ارزش افزوده در تحلیل‌های پیچیده.

پ.ن.

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

سهیل س


چهارشنبه، خرداد ۲۷، ۱۴۰۵

کدنویسی پیشینی: کد قانون اساسی بر لوح سفید

 در نرم افزار، که کُد است، و هر نرم افزار، چیزی مانند یک قانون اساسی است، شما نمیتونید از ابتدا  و از صفر یک نرم افزار را بنویسید که کار کند. برای یک اپ ساده، بطور متوسط دوسال کار یک یا چندین تیم را وقت میبرد که فقط نوشته شود و کار کند.  و آن هم در ۹۰ درصد مواقع، کلا با شکست مواجه میشود. و در ده درصد باقیمانده، ۹۰ درصدش کجدار و مریض کار خواهد کرد. با برنامه نویسها صحبت کنید. نمیشه یک تکه از یک کد را قیچی کرد و دور انداخت. به نظزم ساده دلانه می‌بینید، مساله ای دارای ماهیت پیچیدگی را. یک سیستم پیچیده اورگانیک با عوامل مختلف طرف هستید. قانون یک کشور، که از زمان قانون اسکاتلند کُد نامیده شد، و برنامه نویسی هم به همین خاطر و از روی آن نام ، بهش کُد میگویند: قانون اساسی یک کشور، پیچیده تر از یک نرم افزار است. بله میتونید بنشیدید یک چیزی بنویسید، نرم افزار هم میتونید بنویسید، یک ماهه تحویل میدهند، اما کار نخواهد کرد. اکر به این سادگی بود، سالهانه تریلیون ها دلار هدر نمیرفت ( بی اغراق). بخاطر یکی از باگ های شرکت پست در ماجرای پست-آفیس انجلیس، ده ها نفر در زندان هستند و  افرادی خودکشی کردند، و زندگی ها نابود شد، و هنوز راه حلی پیدا نشده. مساله نوشتنش نیست، بلکه کار کردنش است. وعده ی کار کردن کُد ی را میدهید که پیچیدگی آن را  کسی اطلاع ندارد. برای اینکه شمه ای از پیچیدگی آن بدست بیاورید، از یک برنامه نویس خبره که یک نرم افزار واقعی بپرسید، ولی نه هر برنامه نمیسی: از آن که برنامه ای نوشته باشه که در حال استفاده توسط میلیونها نفر باشد، و‌کار کند. بقیه، بلوف زن هستند، حتی با تجربه هاشان. کپی برداری از قوانین بقیه هم کار نمیکند. ببخشید ولی  با احترام به بقیه مطالبتان، در این صحبتتان تناقض وجود دارد: تناقضی که بخاطر ندیدن نوع یپیچیدگی ای است، که از بیرون دیده نمیشود. ۹۰ درصد شرکتهای نرم افزاری، با آن همه متودولوژی، و انباشت تجربه ی نوشتن‌ ده ها برنامه (کد)، شکست میخورند. با آن همه انباشت تجربه، و تکرار شدنش در سالها و نسل ها. همچنین. حکومت و قدرت باید  بین چند نهاد باشد. اکر حکومت صرفا از مردم ، هم پرفکت نخواهد بود، و اثبات و‌نمونه ای ندارید که کار میکند. نمونه اش همون دموکراسی یونان باستان، نتیجه را در تاریخ ببینید. دموکراسی هایی که در کشورهای دیگر دم از آن میزنند، دموکراسی به معنای مورد نظر شما نیستند.  چنین سیستمی نه دوام دارد، نه توانایی حفظ خود را دارد از حمله، و نه توان محافظت از  تهدید های بیزونی و اشتباهات درونی دارد. اشتباهات خود را خواهد داشت. این هم نوعی دیگر از فروکاستن همه مسائل به یک نوع راه حل ، ساده سازی شده است. یک نهاد قدرت تکی، حتی اکر مردم باشد، کار نخواهد کرد، حتی اگر اون نهاد، رای گیری از مردم باشد، یا هر روز هم رفراندوم انجام دهند. خیلی از بدترین تصمیم ها در تاریخ که منحر به نابودی‌های در سطح تمدنی، شده هم با رای گیری و رفراندوم انجام شده اند: از هیتلر، تا برکسیت. اگر سلطنت، مذهب، روحانیت، فلان طیف، موفق نبوده، دلیل نمیشود که پس اگر به توپه مردم بسپاریم، دیگه این یکی جواب میده. اینطور تیست که جواب در یکی از بیوانها باشد، و اگر اون دوتا نبود، پس حتما در سومی هست. مثالهای بیشتری هم وجود دارد که رای گیری، رفراندوم، پارلمان، غیره، منحر به نابودی هایی در سطح تمدنی شده اند. هیچ راه حل «پیشینی» ای وجود ندارد: یعنی از قبل بشینیم و مسایل اساسی را پیدا کنیم و حل کنیم. کشورهایی که قانون اسلسی از نو نوشتند، مثلا بعد از انقلاب فرانسه، یا حتی آمریکا، تا سالها اعدام ها ی روبسپیر یا جنگ داخلی داشته اند. و اون همه سال ها طول کشیده تا نرم افزار و کد مورد نظر، دیباگ شود و بهبود یابد و تدریجا تکامل یابد و دِوِلُپ شود. قانون اساسی کشوری مثل انگلیس که اخیرا انقلاب نداشته، بر اساس پیشینه precedence است. یعنی رشد ارگانیک و تدریجی با انباشت حکم های بیشمار در طی دهه ها و قرون بوده.  قانون اساسی، لوح سفید نیست و‌ نمیتواند باشد. صفحه شطرنج نیست که از اول چیده شود و ریسِت شود. یک‌سیستم پیچیده است ، پر از پدیده های امرجنت، عوامل فرمال سازی نشده، و شرایط بیشمار غیر قابل پیش بینی، که هیچکس به تنهایی نمیداند و نمیتواند بداند که چطوری کار میکند، همانطور که تجربه علوم کامپیوتر نشان داده. این مطلبی است که انسان ها قادر به درک علت پیجیدگی آن هم نیستند ذاتاً. مگر آنها که دهه ها کار کرده اند و کلنجار رفتن و زور آزمایی با پیچیدگی، و curse of dimentionality و combinatorial explotion، آنها را خاصع تر کرده در برابر محدودیت توان انسان در مورد طراحی سیستمهای پیچیده به صورت بخشنامه ای. افزایش تعداد، مولا سپردن به حمعیت زیاد، یا تنده مردم هم کار نمیکند: بعضی ها میکویند: «میشینیم از مردم میپرسیم چه میخواهد، رفراندوم میگذاریم، و انجام میدهیم، و بعدش دهه ها و قرن ها، خوش و خرم زندگی خواهیم کرد». متخصص هاش هم نمیتونند، چه برسه به مردم. طراحی سیستمهای پیچیده، ناممکن نیست، اما اینطور کار نمیکند که میشینیم مینویسیم. کتاب cathedral and bazzar را ببینید. همچنین mythical man month. و موارد دیگر.

ورژن ۲

در نرم افزار، که کُد است، و هر نرم افزار، چیزی مانند یک قانون اساسی است، شما نمیتونید از ابتدا  و از صفر یک نرم افزار را بنویسید که کار کند. برای یک اپ ساده، بطور متوسط دوسال کار یک یا چندین تیم را وقت میبرد که فقط نوشته شود و کار کند.  و آن هم در ۹۰ درصد مواقع، کلا با شکست مواجه میشود. و در ده درصد باقیمانده، ۹۰ درصدش کجدار و مریض کار خواهد کرد. با برنامه نویسها صحبت کنید. نمیشه یک تکه از یک کد را قیچی کرد و دور انداخت. به نظزم ساده دلانه می‌بینید، مساله ای دارای ماهیت پیچیدگی را. یک سیستم پیچیده اورگانیک با عوامل مختلف طرف هستید. قانون یک کشور، که از زمان قانون اسکاتلند کُد نامیده شد، و برنامه نویسی هم به همین خاطر و از روی آن نام ، بهش کُد میگویند: قانون اساسی یک کشور، پیچیده تر از یک نرم افزار است. بله میتونید نشینید یک چیزی بنویسید، نرم افزار هم میتونید بنویسید، یک ماهه تحویل میدهند، اما کار نخواهد کرد. اکر به این سادگی بود، سالهانه تریلیون ها دلار هدر نمیرفت ( بی اغراق). بخاطر یکی از باگ های شرکت پست در ماجرای پست-آفیس انجلیس، ده ها نفر در زندان هستند و  افرادی خودکشی کردند، و زندگی ها نابود شد، و هنوز راه حلی پیدا نشده. مساله نوشتنش نیست، بلکه کار کردنش است. وعده ی کار کردن کُد ی را میدهید که پیچیدگی آن را  کسی اطلاع ندارد. برای اینکه شمه ای از پیچیدگی آن بدست بیاورید، از یک برنامه نویس خبره که یک نرم افزار واقعی بپرسید، ولی نه هر برنامه نمیسی: از آن که برنامه ای نوشته باشه که در حال استفاده توسط میلیونها نفر باشد، و‌کار کند. بقیه، بلوف زن هستند، حتی با تجربه هاشان. کپی برداری از قوانین بقیه هم کار نمیکند. ببخشید ولی  با احترام به بقیه مطالبتان، در این صحبتتان تناقض وجود دارد: تناقضی که بخاطر ندیدن نوع یپیچیدگی ای است، که از بیرون دیده نمیشود. ۹۰ درصد شرکتهای نرم افزاری، با آن همه متودولوژی، و انباشت تجربه ی نوشتن‌ ده ها برنامه (کد)، شکست میخورند. با آن همه انباشت تجربه، و تکرار شدنش در سالها و نسل ها. همچنین. حکومت و قدرت باید  بین چند نهاد باشد. اکر حکومت صرفا از مردم ، هم پرفکت نخواهد بود، و اثبات و‌نمونه ای ندارید که کار میکند. نمونه اش همون دموکراسی یونان باستان، نتیجه را در تاریخ ببینید. دموکراسی هایی که در کشورهای دیگر دم از آن میزنند، دموکراسی به معنای مورد نظر شما نیستند.  چنین سیستمی نه دوام دارد، نه توانایی حفظ خود را دارد از حمله، و نه توان محافظت از  تهدید های بیزونی و اشتباهات درونی دارد. اشتباهات خود را خواهد داشت. این هم نوعی دیگر از فروکاستن همه مسائل به یک نوع راه حل ، ساده سازی شده است. یک نهاد قدرت تکی، حتی اکر مردم باشد، کار نخواهد کرد، حتی اگر اون نهاد، رای گیری از مردم باشد، یا هر روز هم رفراندوم انجام دهند. خیلی از بدترین تصمیم ها در تاریخ که منحر به نابودی‌های در سطح تمدنی، شده هم با رای گیری و رفراندوم انجام شده اند: از هیتلر، تا برکسیت. اگر سلطنت، مذهب، روحانیت، فلان طیف، موفق نبوده، دلیل نمیشود که پس اگر به توپه مردم بسپاریم، دیگه این یکی جواب میده. اینطور تیست که جواب در یکی از بیوانها باشد، و اگر اون دوتا نبود، پس حتما در سومی هست. مثالهای بیشتری هم وجود دارد که رای گیری، رفراندوم، پارلمان، غیره، منحر به نابودی هایی در سطح تمدنی شده اند. هیچ راه حل «پیشینی» ای وجود ندارد: یعنی از قبل بشینیم و مسایل اساسی را پیدا کنیم و حل کنیم. کشورهایی که قانون اسلسی از نو نوشتند، مثلا بعد از انقلاب فرانسه، یا حتی آمریکا، تا سالها اعدام ها ی روبسپیر یا جنگ داخلی داشته اند. و اون همه سال ها طول کشیده تا نرم افزار و کد مورد نظر، دیباگ شود و بهبود یابد و تدریجا تکامل یابد و دِوِلُپ شود. قانون اساسی کشوری مثل انگلیس که اخیرا انقلاب نداشته، بر اساس پیشینه precedence است. یعنی رشد ارگانیک و تدریجی با انباشت حکم های بیشمار در طی دهه ها و قرون بوده.  قانون اساسی، لوح سفید نیست و‌ نمیتواند باشد. صفحه شطرنج نیست که از اول چیده شود و ریسِت شود. یک‌سیستم پیچیده است ، پر از پدیده های امرجنت، عوامل فرمال سازی نشده، و شرایط بیشمار غیر قابل پیش بینی، که هیچکس به تنهایی نمیداند و نمیتواند بداند که چطوری کار میکند، همانطور که تجربه علوم کامپیوتر نشان داده. این مطلبی است که انسان ها قادر به درک علت پیجیدگی آن هم نیستند ذاتاً. مگر آنها که دهه ها کار کرده اند و کلنجار رفتن و زور آزمایی با پیچیدگی، و curse of dimentionality و combinatorial explotion، آنها را خاضع تر کرده در برابر محدودیت توان انسان در مورد طراحی سیستمهای پیچیده به صورت بخشنامه ای. افزایش تعداد، مولا سپردن به حمعیت زیاد، یا تنده مردم هم کار نمیکند: بعضی ها میکویند: «میشینیم از مردم میپرسیم چه میخواهد، رفراندوم میگذاریم، و انجام میدهیم، و بعدش دهه ها و قرن ها، خوش و خرم زندگی خواهیم کرد». متخصص هاش هم نمیتونند، چه برسه به مردم. طراحی سیستمهای پیچیده، ناممکن نیست، اما اینطور کار نمیکند که میشینیم مینویسیم. کتاب cathedral and bazzar را ببینید. همچنین mythical man month. اینها را ببینید، و ناظر بر مفاهیم مطرح شده در اینها، و این نوع پیچیدگی ها راه حل بدهید، اونوقت میشه نشست صحبت کرد. اما پیجیدگی های قانون که کُد سیستم کامل یک جامعه با میلیونها انسان، و فاکتورها و منابع بسیار دیگراست،  و چنبه های پیچیده پیشینه، هویت های جمعی و فردی، تاریخ، و غیره هم به آن اضافه میشوند. فراتر از این است. مساله اینکه چه کس و نهادی حکومت کند، البته بی اهنیت نیست، اما پیچیدگی، مساله بسیار بزرکتر و مهیب تری است. مقالاتی هست که فروپاشی شوروی را به دلیل عدم تنانایی اش در سازماندهی پیچیدگی میدانند ( که در تحربه زیسته، به صورت نمود هایی از قبیل بوروکراسی جلوه دارد، و کند شدن سیستم. چیزی که حتی آمریکا و انگلیس هم در بعضی زمینه ها با آن درگیر است ). به نظر من نباید هیولای پیچیدگی را دست کم بگیریم، در چنین صحبتی. با در نظر گرفتن تحربیاتی که در علوم کامپیوتر برای مهار پیجیدگی پیدا شده، به راه حل نمیتوان کامل دست یافت. اما میتوان حسی از مقیاس و جنس پیچیدگی بدست آورد. اونوقت روزنه امید برای  امکان بحث در مورد رویکر های بهتری ممکن است به وجود بیابد: مثلا روش اینکریمنتال، روش های بهبودهای تدریجی، روش تکاملی، روش  های کانکشنیستی(بک پراپگیشن) و ادپتیو.