اسقاط اضافات

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

  • خراباتی شدن از خود رهایی است
    • خودی کفر است ور خود پارسایی است
  • نشانی داده‌اندت از خرابات
    • که «التوحید اسقاط الاضافات»
  • خرابات از جهان بی‌مثالی است
    • مقام عاشقان لاابالی است
  • خرابات آشیان مرغ جان است
    • خرابات آستان لامکان است
  • خراباتی خراب اندر خراب است
    • که در صحرای او عالم سراب است
  • خراباتی است بی حد و نهایت
    • نه آغازش کسی دیده نه غایت
  • اگر صد سال در وی می‌شتابی
    • نه کس را و نه خود را بازیابی
  • گروهی اندر او بی پا و بی سر
    • همه نه مؤمن و نه نیز کافر
  • شراب بیخودی در سر گرفته
    • به ترک جمله خیر و شر گرفته
  • شرابی خورده هر یک بی‌لب و کام
    • فراغت یافته از ننگ و از نام
  • حدیث و ماجرای شطح و طامات
    • خیال خلوت و نور کرامات
  • به بوی دردیی از دست داده
    • ز ذوق نیستی مست اوفتاده
  • عصا و رکوه و تسبیح و مسواک
    • گرو کرده به دردی جمله را پاک
  • میان آب و گل افتان و خیزان
    • به جای اشک خون از دیده ریزان
  • گهی از سرخوشی در عالم ناز
    • شده چون شاطران گردن افراز
  • گهی از روسیاهی رو به دیوار
    • گهی از سرخ‌رویی بر سر دار
  • گهی اندر سماع از شوق جانان
    • شده بی پا و سر چون چرخ گردان
  • به هر نغمه که از مطرب شنیده
    • بدو وجدی از آن عالم رسیده
  • سماع جان نه آخر صوت و حرف است
    • که در هر پرده‌ای سری شگرف است
  • ز سر بیرون کشیده دلق ده تو
    • مجرد گشته از هر رنگ و هر بو
  • فرو شسته بدان صاف مروق
    • همه رنگ سیاه و سبز و ازرق
  • یکی پیمانه خورده از می صاف
    • شده زان صوفی صافی ز اوصاف
  • به مژگان خاک مزبل پاک رفته
    • ز هر چ آن دیده از صد یک نگفته
  • گرفته دامن رندان خمار
    • ز شیخی و مریدی گشته بیزار
  • چه شیخی و مریدی این چه قید است
    • چه جای زهد و تقوی این چه شید است
  • اگر روی تو باشد در که و مه
    • بت و زنار و ترسایی تو را به

توصیف درس مباحثی در مدل‌سازی ریاضی – بهار ۹۷-۸

در ترم آینده، درس مشترکی با دکتر علیشاهی داریم با عنوان مباحثی در مدل‌سازی ریاضی. توصیف خیلی کوتاه درس:

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

مباحثی در مدل‌سازی ریاضی

بازار به عنوان بستری برای مبادله کالا و خدمات از مفاهیم پایەای علم اقتصاد است و از مدت‌ها پیش گروهی از ریاضی/اقتصاددانان، مدل‌ها و نظریەهای جالب توجهی برای شناخت بهتر ساز وکار آن ابداع کردەاند. اما پیشرفت فن‌آوری مفهوم سنتی بازار را در دوران ما متحول کرده است. امروز با مثال‌های متنوعی از بازارهای برخط برای مبادله کالا و خدمات مواجه هستیم که دامنه و کارایی مبادلات را افزایش دادەاند؛ مثال‌هایی مانند دیجیک‌الا برای فروش طیف گستردەای از کالاها، دیوار برای مبادله اجناس دستەدوم یا تپ‌سی برای ارائه برخط خدمات حمل و نقل. این بازارهای مدرن در عین حال این امکان را در اختیار ما قرار دادەاندکه بتوانیم با تحلیل انبوه دادەهایی که تولید می‌شود روش‌هایی برای افزایش کارایی بازار بیابیم. برای این منظور باید مدل‌های اقتصادی قبلی را مورد بازنگری قرار داد تا شرایط دائما در حال تغییر بازاهای جدید را به درستی مدل کنند. در این درس با مروری بر مدل‌های اقتصاد خُرد به مساله قیمت‌گذاری و چالش‌های آن برای چند مثال از بازارهای برخط خواهیم پرداخت.

برای دنبال کردن درس داشتن دانش اولیه در احتمال و آمار ضروری و دانش هرچه بیشتر در زمینە فرآیندهای تصادفی، آمار پیشرفته، نظریە بازی‌ها، بهینەسازی و مهارت‌های برنامەنویسی مفید است.

سرفصل‌ها:

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

منابع

  • [1] A. Mas-Colell, M.D. Whinston, J. R. Green, Microeconomic Theory, Oxford University Press, 1995
  • [2] A.R. Karlin, Y. Peres (2017) Game Theory, Alive. American Mathematical Society.
  • [3] Özer, Özalp, Ozalp Ozer, and Robert Phillips, eds. The Oxford handbook of pricing management. Oxford University Press, 2012.

پس از توصیف درس

اما واقعیت این است که یک منبع خوب برای قیمت‌گذاری پیدا نکردیم که به عنوان یکی از منابع درس معرفی کنیم. اما آقای دکتر رامش جوهری، که خودشان نیز از معدود دانشمندانی است که با دید ریاضی به مساله قیمت‌گذاری می‌پردازد، نیز درسی با همین موضوع و با عنوان Platform and Marketplace Design ارائه کرده‌اند. اما درس‌شان مجموعه‌ای است از مقاله‌های متنوع و ارائه‌ها که به عنوان منبع مناسب نبود.

اعتراض‌های ساختمان داده

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

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

اعتراض‌هایی که من شنیده‌ام:

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

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

۳) نامنظم بودن تمرین‌ها و آزمونک‌ها. یکی از آزمونک‌ها یک هفته به عقب افتاد ولی تمرین‌ها دیرتر از موعدی که از ابتدا گفته بودم داده شد. به نظر می‌آید اگر از ابتدا نمی‌گفتم تمرین‌ها را کی می‌دهیم این مشکل پیش نمی‌آمد.

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

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

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

منتظر پیشنهاد شما برای سیستم جمع‌آوری نظرات هستم.

پس‌نوشت ۱: برخی دانشجویان گفتند که دیگر با فلانی درس نمی‌گیریم. راستش این‌که دانشجویان درس‌های بنده را نگیرند اینقدر من را اذیت نمی‌کند، اما این‌که دانشجویان اذیت شده باشند، حیف است. یک درس به این خوبی، چرا باید دانشجویان با اذیت این درس را طی کنند، به جای این‌که یک خاطره خوش برایشان بماند.

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

علوم کامپیوتر برای زیست‌شناسی چه دارد؟

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

What can theoretical computer science offer biology?

SEPTEMBER 9, 2013 BY ARTEM KAZNATCHEEV 19 COMMENTS

If there is anything definitive that can be said about biology then it is that biology is messy and complicated. The stereotypical image of a biology major is in the library memorizing volumes of loosely (at best) related facts only to have them overturned in the next semester. Concepts are related only vaguely, to the point that it looks like stamp-collecting to outsiders. The only unifying theme is evolution, and even that is presented with a smorgasbord of verbal and mathematical models, with many lacking predictive power or sometimes even solid empirical foundations. This might seem like the polar opposite of a theoretical computer scientist with her strict hierarchies and logical deductions. Even the complexity zoo seems perfectly tame compared to any biological taxonomy. However, since I’ve been promoting algorithmic theories of biology and even trying my hand at applying cstheory to models of evolution(Kaznatcheev, 2013), I must think that there is some possibility for a productive partnership. So, what can theoretical computer science offer biology? CStheory can provide the abstractions and technical tools to systematize and organize biology’s heuristic models.

One of the best proponents for theoretical computer science as a way of addressing the Big Questions, instead of being confined to serving technology, has been Scott Aaronson. It is unsurprising, that his blog has offered some of the best words for describing the aid that cstheory can offer to biological understanding. In yesterday’s post on the NSA and computational complexity, Aaronson — with attribution to mathematician Greg Kuperberg — provided the following words regarding the applicability of cstheory to cryptography (these words apply directly to biology, too):

[Theoretical computer science offers] what mathematics itself has sought to do for everything since Euclid! That is, when you see an unruly mess of insights, related to each other in some tangled way, systematize and organize it. Turn the tangle into a hierarchical tree (or dag). Isolate the minimal assumptions … on which each conclusion can be based, and spell out all the logical steps needed to get from here to there—even if the steps seem obvious or boring. Any time anyone has tried to do that, it’s been easy for the natives of the unruly wilderness to laugh at the systematizing newcomers: the latter often know the terrain less well, and take ten times as long to reach conclusions that are ten times less interesting. And yet, in case after case, the clarity and rigor of the systematizing approach has eventually won out.

Although the algorithmic approach to biology might be slow at first, and will restate obvious things many times, eventually it will systematize the models. With a clear taxonomy of models, and the powerful tools from analysis of algorithms and computational complexity, biologists will be able to better navigate the assumptions they make as they model the world around them. I expect this to be especially important to models of evolution, and other fields where extensive and detailed empirical measurements are hard to achieve. A rigorous understanding of how model assumptions and conclusions relate, will allow biologists to make minimally restrictive models that agree with what has been measured without making extraneous presuppositions about the physical world (beyond the restrictions imposed by the fact that it is our minds that has to understand these theories).

This unification of fields will not be easy going. As Aaronson answered earlier to my question on the prospects of computational complexity in biology:

The central difficulty is obvious: to whatever extent your model is “real” CS theory, biologists and social scientists will probably deride it as too idealized; conversely, to whatever extent biologists and social scientists like your model, it will probably have too many “arbitrary” aspects for CS theorists to prove anything clean about it.

Let me put it this way: to connect computational complexity (as actually practiced by computational complexity theorists) to physics (as actually practiced by physicists), seems to me like digging a tunnel between England and France. Highly nontrivial, but by 1994 people finally managed to do it!

To form an equally-compelling link between computational complexity and biological evolution feels to me like digging a tunnel between England and the US. A worthy aspiration, but orders of magnitude more ambitious!

Progress will require convincing from both sides. In computer science we will need to consider more heuristic approaches, and the biologists will have to put up with our initially slow (and sometimes tangential) progress. However, if we start digging the tunnel from both ends then we can meet somewhere at the mid-Atlantic ridge.

In a broader context, we can be see this organization of thought as the application of algorithmic philosophy, extending past simple logical analysis to a serious consideration of the laws of computation. Scott Aaronson (2011) explains why philosophers should be interested in joining this approach. Hopefully with computer science, philosophy, and biology working together, we can untangle and understand the messy living world.

Aaronson, Scott (2011). Why Philosophers Should Care About Computational Complexity. arXiv arXiv: 1108.1791v3

Kaznatcheev, Artem (2013). Complexity of evolutionary equilibria in static fitness landscapes. arXivarXiv: 1308.5094v1

دروس کوتاه سرطان: تبارشناسی تومور

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

خلاصه:

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

منبع اصلی ارائه:

Alon, Noga, et al. “Approximate maximum parsimony and ancestral maximum likelihood.” IEEE/ACM transactions on computational biology and bioinformatics 7.1 (2010): 183-187.

ولی خداوکیلی خیلی کار سختی است آماده کردن این ارائه!