مباحث الگوریتمی

کامنت خصوصی نگذارید چون من با ایمیل جواب سوال نمی‌دهم. اگر سوالی دارید کامنت بگذارید من همانجا جواب می‌دهم.

بعد از کامنت دوستان متوجه شدم مطلب قبلی حل سوالهای فصل ۱ بود در حالی که در عنوان گفته بودم فصل ۲ است.

۱- 
pr( h(x)=y , h(x')=y' ) = pr( Ax+b (mod 2)= y, Ax'+b (mod 2)=y') = pr( for all i: sum_j a_ij x_j +b_i = y_i, sum_j a_ij x'_j +b_i = y'_i) = prod_i pr( sum_j a_ij x_j +b_i = y_i, sum_j a_ij x'_j +b_i = y'_i) = prod_i pr( sum_j a_ij (x_j-x'_j)=y_i-y'_i) pr( sum_j a_ij x_j +b_i = y_i) = prod_i pr( sum_j a_ij x_j +b_i = y_i)^2
می‌توانیم ماتریس را به صورت k تا بردار n بعدی (هش با بردار) مستقل در نظر بگیریم. هش با بردار تصادفی دودویی روی یک بردار دودویی داده شده را می‌خواهیم احتمالش را حساب کنیم. از آنجا که به ازای هر بردار تصادفی هش، برداری هست که بیت‌هایش برعکس این است (اگر ۰ باشد ۱ است و برعکس)، پس احتمال اینکه صفر آمدنش با یک آمدنش برابر است. پس حالا جمع (xor) دو تا عدد تصادفی یکنواخت باید بشود یک مقدار داده شده، پس احتمالش ۱/۲ است.
= prod_i 1/4 = 1/4^k = 1/(2^k)^2 = 1/|Y|^2
۲- در ورودی دو تا بردار n-بعدی تصادفی a,b و بردار n-بعدی x را داریم، احتمال اینکه k بیت آخر ax+b هر مقداری بگیرد چقدر است؟
چون تناظر یک به یک داده شده است، پس احتمال اینکه هر برداری انتخاب شود برابر است با:
1/|Y|
مشابه بالا به دست می‌آید:
pr( ax+b = y, ax'+b=y') = pr(ax+b=y) pr(a(x-x')+b=y-y') = pr(ax+b=y)^2 = 1/|Y|^2
در مورد مقایسه این روش با قسمت قبل هم می‌بینیم که فرقی ندارند. قسمت قبل حالت خاص این است. چون احتمالها یکسان به دست می‌آیند.
۰ نظر موافقین ۰ مخالفین ۰ ۲۹ خرداد ۹۸ ، ۰۸:۳۲
سپیده آقاملائی
۰ نظر موافقین ۰ مخالفین ۰ ۱۷ ارديبهشت ۹۸ ، ۱۵:۴۰
سپیده آقاملائی
https://people.eecs.berkeley.edu/~alexch/classes/CS294-F2016.html
جلسه ۱۲
۰ نظر موافقین ۰ مخالفین ۰ ۱۷ ارديبهشت ۹۸ ، ۱۵:۳۵
سپیده آقاملائی
۰ نظر موافقین ۰ مخالفین ۰ ۳۱ فروردين ۹۸ ، ۱۴:۰۱
سپیده آقاملائی

لینک تمرین: http://timroughgarden.org/f14/hw/hw1.pdf

تمرینات جلسه ۱

۱- زیرمجموعه‌ای از حالت‌های الگوریتم B را در نظر بگیرید که هر کدام به ترتیب یک جایگشت خاص از اندیس‌ها مسئله را حل می‌کنند. یعنی به ترتیب آن جایگشت اندیس‌های آرایه را برای پیدا کردن عنصر مورد نظر شما چک می‌کنند. مثلاً اگر همانی باشد جستجوی خطی است. به ازای هر عنصری، یکی از این الگوریتم‌ها آن را در زمان ۱ پیدا می‌کند چون اولین مقایسه‌ای که انجام می‌دهد با آن عنصر است. از آنجا که c ثابت است پس الگوریتم A باید در زمان ثابت به ازای هر عنصری این کار را انجام دهد. یعنی در بدترین حالت هم زمان آن O(1) می‌شود، در حالی که کران پایین پیدا کردن عنصر در مدل مقایسه‌ای log n است. (اثبات این موضوع مثلاً از طریق درخت تصمیم جبری امکان پذیر است). پس به تناقض رسیدیم و الگوریتم A با این مشخصات نیست.

۲- مشابه قسمت قبل عمل می‌کنیم و الگوریتم B را هم به ازای هر جایگشت ورودی در نظر می‌گیریم که اول آن جایگشت را چک می‌کند و اگر نشد مرتب‌سازی را به یکی از روش‌های متداول انجام می‌دهد. پس هم یک الگوریتم مرتب‌سازی است و هم به ازای هر ورودی، یکی از این الگوریتم‌ها هست که آن را در زمان O(n) حل کند. پس اگر الگوریتم بهینه مصداقی (instance optimal) برای آن وجود داشته باشد، باید مرتب‌سازی را در زمان O(n) حل کند. در حالی که مرتب‌سازی در مدل مقایسه‌ای به حداقل n log n مقایسه نیاز دارد. پس به تناقض رسیدیم و چنین الگوریتمی وجود ندارد.

۰ نظر موافقین ۰ مخالفین ۰ ۳۱ فروردين ۹۸ ، ۱۱:۵۸
سپیده آقاملائی
۰ نظر موافقین ۰ مخالفین ۰ ۳۱ فروردين ۹۸ ، ۱۱:۵۲
سپیده آقاملائی
http://www.cs.cmu.edu/afs/cs/academic/class/15451-s14/LectureNotes/median.pdf
۰ نظر موافقین ۰ مخالفین ۰ ۲۵ فروردين ۹۸ ، ۱۳:۴۷
سپیده آقاملائی
rtsp://videos.msri.org/data/000/029/854/original/Pak_10-30.mp4

http://www.math.ucla.edu/~pak/papers/how-to-write1.pdf
۰ نظر موافقین ۰ مخالفین ۰ ۲۴ فروردين ۹۸ ، ۱۷:۴۴
سپیده آقاملائی
https://www-bcf.usc.edu/~shaddin/cs599fa13/slides/lec20-21.pdf
۰ نظر موافقین ۰ مخالفین ۰ ۲۳ بهمن ۹۷ ، ۱۶:۰۷
سپیده آقاملائی
http://people.csail.mit.edu/ghaffari/AA18/Notes/AAscript.pdf
۰ نظر موافقین ۰ مخالفین ۰ ۱۲ بهمن ۹۷ ، ۰۷:۳۴
سپیده آقاملائی