فراخوان ترجمه گروهی کتاب progit
برای کدنویسی به طور گروهی نرم افزاری به نام Git وجود داره که کارو خیلی راحت می کنه.
گیت یه نرم افزار کنترل نسخه و مدیریت سورسه که توسط لینوس توروالدزو و رفقا برای توسعه کرنل لینوکس نوشته شده. الان اکثر پروژه های بزرگ مثل کیوت، فیس بوک ،jquery،redhat ،django ،microsoft،perl،google و پایتون و … تحت گیت توسعه پیدا می کنند.
گیت این امکان رو میده که فایل هارو تغییر بدیم و تغییرات و به اشتراک بذاریم.نحوه کار گیت اینطوریه که علاوه بر سرور گیت که روی اینترنت هست سیستم هر کس خودش یه سرور محسوب میشه یعنی درواقع هر کس پروژه رو رو سیستم خودش داره و فقط تغییراتی که بقیه دادن رو دریافت می کنه و میتونه تغییرات خودش رو به اشتراک بگذاره تا بقیه بگیرند و برای کار با اون نیاز به اتصال به سرور مرکزی نیست.
رای یادگیری گیت کتابی با نام progit وجود داره.این کتاب تو ۹ فصل گیت رو طور کامل آموزش داده و مرجع آموزش گیت محسوب میشه.
این کتاب به بسیاری از زبان ها ترجمه شده. ما قصد داریم به شکل گروهی و تحت خود گیت این کتاب رو به طور کامل به فارسی ترجمه کنیم.
آدرس پروژه:
آدرس ویکی پروژه:
https://gitorious.org/progit/pages
در صورت تمایل به شرکت در این پروژه ایمیل بزنید.
ممنون
Vahid@kharazi.net
آنالیز کد های سی پلاس پلاس
برنامه Cppcheck ابزار آنالیز سورس کدهای برنامههای C و CPP جهت یافتن اشتباهات برنامه نویسی، مشکلات امنیتی، نشتی حافظه و امثال آن است. این برنامه رایگان و سورس باز را میتوانید از آدرس زیر دریافت کنید:
نظریه بازی ها ( هفته چهارم )
فیلم های آموزشی دوره ی آزاد نظریه ی بازی ها – دانشگاه استنفورد
Repeated Games – Week 4
Finitely Repeated Prisoners-’ Dilemma
Payoff and Equilibrium in Repeated Games
Indefinitely Repeated Prisoners-’ Dilemma
نظریه بازی ها ( هفته سوم )
فیلم های آموزشی دوره ی آزاد نظریه ی بازی ها – دانشگاه استنفورد
Extensive-form Games – Week 3
نظریه بازی ها ( هفته ی دوم )
فیلم های آموزشی دوره ی آزاد نظریه ی بازی ها – دانشگاه استنفورد
Formal Analysis of Games in Normal Form – Week 2
Nash Equilibrium with Many Players
یافتن تعادل نش در بازی ها
در نظریه بازی ها(Game Theory) بنابرتعریف نقطه ای تعادل نش(Nash Equilibrium) است که در آنجا هیچ بازیکنی(با این فرض که بازی بقیه بازیکنان ثابت بماند)در صورت تغییر بازی خود سودش بیشتر نشود.
در بازی هایی که میزان سود بازیکنان با جدول بیان می شود و می توان به راحتی تعادل (های)نش را پیدا کرد.
با استفاده از دو کتابخانه ی re و xlrd پایتون برنامه ای نوشتم که این کار را انجام دهد.
ماژول xlrd کتابخانه ای برای ارتباط با excel است.در پایتون دو کتابخانه برای ارتباط با excel وجود دارد یکی xlrd که برای خواندن فایل های excel است و دیگری ماژول xlwt است که برای نوشتن فایل های اکسل به کار می رود. این دو ماژول جزو ملژول های پیشفرض پایتون نیستند و باید آن ها را از سایت توسعه دهندگان این دو کتابخانه دریافت کرد.
ورودی برنامه فایل اکسلی به نام game.xls است که در کنار آن قرار دارد.فایل اکسل شامل جدول بازی در sheet اول است.
با اجرای برنامه تک تک نقاط بازی بررسی شده و تعادل های نش گزارش می دهد.
از اینجا دریافت کنید.
تبدیل کدهای سی پلاس پلاس به پایتون
تصمیم گرفتم به کمک کتابخانه re پایتون برنامه ای بنویسم که کد های سی پلاس پلاس را به پایتون تبدیل کنه. اما به دلیل تفاوت زیاد syntax سی و پایتون کار کمی مشکل بود. مثلا ساختار if در زبان سی به شکل زیر است:
if ( <condition> ) {
// Execute these statements if <condition> is TRUE
}
و در زبان پایتون به شکل زیر:
if condition :
#Execute these statements if <condition> is TRUE
مشکل اصلی { ها و } ها بود. فرض کنید چندین if و for تو در تو در برنامه ورودی داشته باشیم. اون وقت از کجا باید فهمید کدوم } برای کدوم { است که به ازای اون در پایتون یک tab بزنیم؟
اگر می خواستیم که سی را به جاوا، سی شارپ و … خیلی زبان های دیگه تبدیل کنیم نیازی به فهمیدن این موضوع نبود. هر جا که } و { میدیدم لازم نبود به جایش چیز دیگری قرار بدهیم.اما در پایتون بلوک ها با tab مشخص می شوند و همین کار رو سخت میکنه.
برای حل این مشکل یک شمارشگر گذاشتم که وقتی به هر { یا } میرسه شروع کنه به شمردن به ازای { ها یکی به شمارشگر اضافه کنه به ازای } یکی کم کنه. از زمانی که شمارشگر شروع به شمردن میکنه تا وقتی که دوباره شنارشگر صفر بشه اون قسمت داخل یک بلوک قرار داره. با تحلیل دستی یک برنامه که شامل چندین شرط و حلقه ی تودرتو بود درستی این روش رو امتحان کردم.

حالا دیگه کافی بود که با regular expressions (عبارات با قاعده ) تبدیلات رو انجام بدم. البته این برنامه هنوز بسیار ناقصه و از if , for و چند ساختار ساده دیگه پشتیبانی می کنه ولی به راحتی به کمک re می توان تبدیلات دیگر را هم نوشت.
از اینجا دریافت کنید. (چهار نمونه کد سی پلاس پلاس کنار برنامه موجود است و تصویر بالا مربوط به تحلیل برنامه ی چهارم است.)
فیلم های آموزشی نظریه بازی ها
- ۰۱ – مفهوم بازی و بازی معمای زندانی
- ۰۲ – عناصر تشکیلدهنده یک بازی
- ۰۳ – مفهوم تعادل نش
- ۰۴ – تعریف رسمی تعادل نش
- ۰۵ – مثال از مفهوم تعادل نش: بازی مشارکت در پروژه عمومی
- ۰۶ – عملهای غالب و مغلوب
- ۰۷ – تصمیمگیری جمعی برای کالای عمومی
- ۰۸ – تابع بهترین پاسخ
- ۰۹ – رابطه بین تابع بهترین پاسخ و تعادل نش
- ۱۰ – مدل یک پروژه دو نفرهی همافزا
- ۱۱ – مدل رقابت چندجانبهی کورنو
- ۱۲ – مدل رقابت چندجانبهی کورنو ۲
- ۱۳ – بازیهای شکل گسترده یا بازیهای پویا
- ۱۴ – مفهوم استراتژی در بازیهای شکل گسترده
- ۱۵ – تعادل نش در بازیهای شکل گسترده
- ۱۶ – مثال از تعادل نش بازیهای شکل گسترده
منبع : سایت کلاس درس(http://kelasedars.org/)
معرفی کتاب های نظریه بازی ها
کتاب های فارسی
- نظریه بازیها و کاربرد آن دکتر سید مقتدی هاشمی پرست
- نظریه بازیها و کاربردهای اقتصادی دکتر علی سوری
- نظریه بازیها و کاربردهای آن دکتر قهرمان عبدلی
- تئوری بازیها ای.ماس کولل-ام.دی.ویستون-جی.آر.گرین منصور اعتصامی
- نظریه بازیها دکتر اردشیر احمدی-عزیزاله معماریانی
- بازی منصفانه ریچارد ک.گای دکتر سید عباداله محمودیان-آناهیتا آریاچهر
- معمای زندانی ویلیام پاندستون عباسعلی کتیرایی
- نظریه بازی ها: تصمیم ها ، تعامل و تکامل، جیمز وب، رضا مجید زاده، انتارات مهدی رضایی
کتاب های انگلیسی
- A beautiful math: by Tom Siegfried
- Playing for real : a text on game theoryby Ken Binmore
- The right Game: use game theory to shape strategy
آخرین دیدگاهها