<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	>

<channel>
	<title>Algorithms (F2008) &#187; lectures</title>
	<atom:link href="http://apollonius.cs.utah.edu/classes/algorithmsf08/category/lectures/feed" rel="self" type="application/rss+xml" />
	<link>http://apollonius.cs.utah.edu/classes/algorithmsf08</link>
	<description>Suresh Venkatasubramanian // MEB 3105 // MW 1045-1205</description>
	<pubDate>Mon, 29 Dec 2008 08:07:50 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.5.1</generator>
	<language>en</language>
			<item>
		<title>Lecture 25: Zero Knowledge Proofs</title>
		<link>http://apollonius.cs.utah.edu/classes/algorithmsf08/2008/12/03/lecture-25-zero-knowledge-proofs/</link>
		<comments>http://apollonius.cs.utah.edu/classes/algorithmsf08/2008/12/03/lecture-25-zero-knowledge-proofs/#comments</comments>
		<pubDate>Wed, 03 Dec 2008 17:11:21 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[lectures]]></category>

		<category><![CDATA[news]]></category>

		<guid isPermaLink="false">http://apollonius.cs.utah.edu/classes/algorithmsf08/?p=60</guid>
		<description><![CDATA[Today&#8217;s lecture is drawn from many sources. The basic idea of a zero knowledge proof was developed by Shafi Goldwasser, Silivio Micali (MIck Ali) and Charles Rackoff in a paper first published in 1985. The explanation of ZK proofs in terms of Ali Baba and the 40 thieves is drawn from this reference. 
Sudoku (in [...]]]></description>
			<content:encoded><![CDATA[<p>Today&#8217;s lecture is drawn from many sources. The basic idea of a zero knowledge proof was developed by Shafi Goldwasser, Silivio Micali (MIck Ali) and Charles Rackoff in a<a href="http://en.wikipedia.org/wiki/Zero-knowledge_proofs#cite_note-1"> paper first published in 1985</a>. The explanation of ZK proofs in terms of Ali Baba and the 40 thieves is drawn from <a href="http://pages.cs.wisc.edu/~mkowalcz/628.pdf">this reference</a>. </p>
<p>Sudoku (in its n X n variant) was <a href="http://www-imai.is.s.u-tokyo.ac.jp/~yato/data2/MasterThesis.ps">shown to be NP-Complete</a> in 2003. The physical proof I demonstrated is due to <a href="http://www.mit.edu/~rothblum/papers/sudoku.pdf">Gradwohl et al</a>, and a fun variant of this proof that uses playing cards can be found at <a href="http://www.wisdom.weizmann.ac.il/~naor/PAPERS/SUDOKU_DEMO/">Moni Naor&#8217;s Sudoku page</a>. </p>
<p>The Millionaire&#8217;s problems was first coined by Andy Yao, and the solution comes from <a href="www.cs.wisc.edu/areas/sec/yao1982-ocr.pdf">his paper</a>. The exact demonstration (and the use of the public-private key pair) comes from <a href="http://www.proproco.co.uk/million.html">this site</a>.</p>
<p>If you want to try this at home, <a href="http://merganser.math.gvsu.edu/m310.f99/encryption/encrypt.html">this is a useful RSA encryption applet</a></p>
]]></content:encoded>
			<wfw:commentRss>http://apollonius.cs.utah.edu/classes/algorithmsf08/2008/12/03/lecture-25-zero-knowledge-proofs/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Lecture 24: Heuristics</title>
		<link>http://apollonius.cs.utah.edu/classes/algorithmsf08/2008/12/01/lecture-24-heuristics/</link>
		<comments>http://apollonius.cs.utah.edu/classes/algorithmsf08/2008/12/01/lecture-24-heuristics/#comments</comments>
		<pubDate>Mon, 01 Dec 2008 22:19:29 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[lectures]]></category>

		<category><![CDATA[news]]></category>

		<guid isPermaLink="false">http://apollonius.cs.utah.edu/classes/algorithmsf08/?p=59</guid>
		<description><![CDATA[Notes and reading material from today&#8217;s lecture are linked here. In addition, here&#8217;s some research by Adam Teichert (thanks Adam !) on the origin of the Metropolis-Hastings algorithm:
After looking  at Wikipedia for a refresher (and doing a bit of other searching), it looks like some people do refer to the Metropolis-Hastings algorithm as just [...]]]></description>
			<content:encoded><![CDATA[<p>Notes and reading material from today&#8217;s lecture <a href="http://apollonius.cs.utah.edu/classes/algorithmsf07/2007/11/24/lecture-25-meta-heuristics/">are linked here</a>. In addition, here&#8217;s some research by Adam Teichert (thanks Adam !) on the origin of the Metropolis-Hastings algorithm:</p>
<blockquote><p>After looking  at Wikipedia for a refresher (and doing a bit of other searching), it looks like some people do refer to the Metropolis-Hastings algorithm as just the Metropolis algorithm, however some people (at least) make a distinction between the two:</p>
<p>   Wikipedia says, &#8220;The original Metropolis algorithm calls for the proposal density to be symmetric ( Q(x;y) = Q(y;x) ); the generalization by Hastings lifts this restriction.&#8221;</p>
<p>   This pdf describes the difference between implementing Metropolis and Metropolis-Hastings in R:<br />
http://nitro.biosci.arizona.edu/courses/EEB581-2006/IntroR/Metropolis.pdf</p>
<p>   Finally, I noticed that the notes in the book say that the simulated annealing was based on the 1953 work of Metropolis et al. Wikipedia tells us that Hastings generalized the Metropolis algorithm<br />
in 1970.  (http://probability.ca/hastings/).
</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://apollonius.cs.utah.edu/classes/algorithmsf08/2008/12/01/lecture-24-heuristics/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Lecture 23: Examples</title>
		<link>http://apollonius.cs.utah.edu/classes/algorithmsf08/2008/12/01/lecture-23-examples/</link>
		<comments>http://apollonius.cs.utah.edu/classes/algorithmsf08/2008/12/01/lecture-23-examples/#comments</comments>
		<pubDate>Mon, 01 Dec 2008 07:20:03 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[lectures]]></category>

		<category><![CDATA[news]]></category>

		<guid isPermaLink="false">http://apollonius.cs.utah.edu/classes/algorithmsf08/?p=58</guid>
		<description><![CDATA[We went through a series of examples of randomization. 

Randomized median finding: how to apply randomization to divide and conquer
Randomized MAX 3SAT: The probabilistic method, and designing an approximation algorithm that uses randomness
The Birthday Paradox: we analyzed the well known phenomenon, and connected it to a problem in hashing (how many items do you need [...]]]></description>
			<content:encoded><![CDATA[<p>We went through a series of examples of randomization. </p>
<ol>
<li>Randomized median finding: how to apply randomization to divide and conquer</li>
<li>Randomized MAX 3SAT: The probabilistic method, and designing an approximation algorithm that uses randomness</li>
<li><a href="http://valis.cs.uiuc.edu/~sariel/teach/05/a/lec/04_occupancy.pdf">The Birthday Paradox</a>: we analyzed the well known phenomenon, and connected it to a problem in hashing (how many items do you need to guarantee a collision in n buckets). </li>
</ol>
<p>The first two topics were taken from the textbook, and the last topic is covered in the linked notes.</p>
]]></content:encoded>
			<wfw:commentRss>http://apollonius.cs.utah.edu/classes/algorithmsf08/2008/12/01/lecture-23-examples/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Lecture 22: Chernoff Bounds</title>
		<link>http://apollonius.cs.utah.edu/classes/algorithmsf08/2008/12/01/lecture-22-chernoff-bounds/</link>
		<comments>http://apollonius.cs.utah.edu/classes/algorithmsf08/2008/12/01/lecture-22-chernoff-bounds/#comments</comments>
		<pubDate>Mon, 01 Dec 2008 07:16:24 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[lectures]]></category>

		<category><![CDATA[news]]></category>

		<guid isPermaLink="false">http://apollonius.cs.utah.edu/classes/algorithmsf08/?p=57</guid>
		<description><![CDATA[We covered tail bounds: a way of determining not just the expected value of a random variable, but the probability of it exceeding the mean by some predetermined value. Notes on this can be found here.
]]></description>
			<content:encoded><![CDATA[<p>We covered tail bounds: a way of determining not just the expected value of a random variable, but the probability of it exceeding the mean by some predetermined value. Notes on this can be found <a href="http://www.cs.utah.edu/classes/cs5962/lectures/19.pdf">here</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://apollonius.cs.utah.edu/classes/algorithmsf08/2008/12/01/lecture-22-chernoff-bounds/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Lecture 21: Algebraic Fingerprinting</title>
		<link>http://apollonius.cs.utah.edu/classes/algorithmsf08/2008/11/23/lecture-21-algebraic-fingerprinting/</link>
		<comments>http://apollonius.cs.utah.edu/classes/algorithmsf08/2008/11/23/lecture-21-algebraic-fingerprinting/#comments</comments>
		<pubDate>Sun, 23 Nov 2008 20:22:54 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[lectures]]></category>

		<category><![CDATA[news]]></category>

		<guid isPermaLink="false">http://apollonius.cs.utah.edu/classes/algorithmsf08/?p=53</guid>
		<description><![CDATA[Hi all,
   sorry for the late posting. Scott&#8217;s notes for Wednesday&#8217;s lecture can be found here.
]]></description>
			<content:encoded><![CDATA[<p>Hi all,<br />
   sorry for the late posting. Scott&#8217;s notes for Wednesday&#8217;s lecture can be found <a href="http://www.cs.utah.edu/~alfeld/academics/af.pdf">here</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://apollonius.cs.utah.edu/classes/algorithmsf08/2008/11/23/lecture-21-algebraic-fingerprinting/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Lecture 20: Randomized Min Cut</title>
		<link>http://apollonius.cs.utah.edu/classes/algorithmsf08/2008/11/16/lecture-20-randomized-min-cut/</link>
		<comments>http://apollonius.cs.utah.edu/classes/algorithmsf08/2008/11/16/lecture-20-randomized-min-cut/#comments</comments>
		<pubDate>Mon, 17 Nov 2008 01:41:23 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[lectures]]></category>

		<category><![CDATA[news]]></category>

		<guid isPermaLink="false">http://apollonius.cs.utah.edu/classes/algorithmsf08/?p=51</guid>
		<description><![CDATA[Hi all,
  Scott Alfeld will be our  guest lecturer for Monday&#8217;s class (and Wednesday). The material is taken from the textbook, and here are Scott&#8217;s notes.
]]></description>
			<content:encoded><![CDATA[<p>Hi all,<br />
  Scott Alfeld will be our  guest lecturer for Monday&#8217;s class (and Wednesday). The material is taken from the textbook, and here are <a href='http://apollonius.cs.utah.edu/classes/algorithmsf08/files/2008/11/mincut.pdf'>Scott&#8217;s notes</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://apollonius.cs.utah.edu/classes/algorithmsf08/2008/11/16/lecture-20-randomized-min-cut/feed/</wfw:commentRss>
		</item>
		<item>
		<title>lecture 18: PTASs and KNAPSACK</title>
		<link>http://apollonius.cs.utah.edu/classes/algorithmsf08/2008/11/10/lecture-18-ptass-and-knapsack/</link>
		<comments>http://apollonius.cs.utah.edu/classes/algorithmsf08/2008/11/10/lecture-18-ptass-and-knapsack/#comments</comments>
		<pubDate>Mon, 10 Nov 2008 21:01:19 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[lectures]]></category>

		<category><![CDATA[news]]></category>

		<guid isPermaLink="false">http://apollonius.cs.utah.edu/classes/algorithmsf08/?p=45</guid>
		<description><![CDATA[A PTAS is a scheme to get an arbitrarily good approximation for an NP-complete problem. Given an input parameter , the goal is to find a -approximation that runs in time polynomial in n.
It&#8217;s often the case that such algorithms can be generated by designing an expensive dynamic program, and then adapting it. We demonstrate [...]]]></description>
			<content:encoded><![CDATA[<p>A PTAS is a scheme to get an arbitrarily good approximation for an NP-complete problem. Given an input parameter <img src="http://apollonius.cs.utah.edu/classes/algorithmsf08/wp-content/cache/tex_a13b0ee1169d715c83fde0abb91dcaef.png" align="absmiddle" class="tex" alt="\epsilon &gt; 0" />, the goal is to find a <img src="http://apollonius.cs.utah.edu/classes/algorithmsf08/wp-content/cache/tex_11217ddea497d67192e898572bd42bb0.png" align="absmiddle" class="tex" alt="(1+\epsilon)" />-approximation that runs in time polynomial in n.</p>
<p>It&#8217;s often the case that such algorithms can be generated by designing an expensive dynamic program, and then adapting it. We demonstrate this idea with the KNAPSACK problem.</p>
]]></content:encoded>
			<wfw:commentRss>http://apollonius.cs.utah.edu/classes/algorithmsf08/2008/11/10/lecture-18-ptass-and-knapsack/feed/</wfw:commentRss>
		</item>
		<item>
		<title>lecture 17: more approximations</title>
		<link>http://apollonius.cs.utah.edu/classes/algorithmsf08/2008/11/10/lecture-17-more-approximations/</link>
		<comments>http://apollonius.cs.utah.edu/classes/algorithmsf08/2008/11/10/lecture-17-more-approximations/#comments</comments>
		<pubDate>Mon, 10 Nov 2008 20:59:31 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[lectures]]></category>

		<category><![CDATA[news]]></category>

		<guid isPermaLink="false">http://apollonius.cs.utah.edu/classes/algorithmsf08/?p=44</guid>
		<description><![CDATA[We covered material from Chapter 11 of KT, and considered two examples: Firstly, we looked at a simple scheduling problem and showed how to get a 2-approximation using a greedy algorithm. Then, we looked at the Travelling Salesman problem. After showing that in its most general form, no approximation ratio is possible unless P = [...]]]></description>
			<content:encoded><![CDATA[<p>We covered material from Chapter 11 of KT, and considered two examples: Firstly, we looked at a simple scheduling problem and showed how to get a 2-approximation using a greedy algorithm. Then, we looked at the Travelling Salesman problem. After showing that in its most general form, no approximation ratio is possible unless P = NP, we showed that if we require that edge weights form a metric, then a heuristic attributed to Christofides enables us to get a 1.5 approximatino.</p>
]]></content:encoded>
			<wfw:commentRss>http://apollonius.cs.utah.edu/classes/algorithmsf08/2008/11/10/lecture-17-more-approximations/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Lecture 16: Approximations</title>
		<link>http://apollonius.cs.utah.edu/classes/algorithmsf08/2008/10/28/lecture-16-approximations/</link>
		<comments>http://apollonius.cs.utah.edu/classes/algorithmsf08/2008/10/28/lecture-16-approximations/#comments</comments>
		<pubDate>Wed, 29 Oct 2008 05:06:35 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[lectures]]></category>

		<category><![CDATA[news]]></category>

		<guid isPermaLink="false">http://apollonius.cs.utah.edu/classes/algorithmsf08/?p=42</guid>
		<description><![CDATA[I&#8217;ll be using Chapter 11 from the textbook as a guide for our journey through approximation algorithms. However, I&#8217;d like to set the foundations with some basic material that I&#8217;ll draw from other sources. Since I don&#8217;t have comprehensive lecture notes yet, here are some links, with page numbers to look at:

Rajeev Motwani&#8217;s (old) lecture [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ll be using Chapter 11 from the textbook as a guide for our journey through approximation algorithms. However, I&#8217;d like to set the foundations with some basic material that I&#8217;ll draw from other sources. Since I don&#8217;t have comprehensive lecture notes yet, here are some links, with page numbers to look at:</p>
<ul>
<li>Rajeev Motwani&#8217;s (old) <a title="Lecture Notes" href="http://apollonius.cs.utah.edu/classes/algorithmsf07/files/2007/09/approximations.pdf">lecture notes on approximation algorithms</a>. The notes are old, but the fundamentals haven&#8217;t really changed. I&#8217;ll be drawing on material from Chapter 1 (pages 1-33: the definitions, and the impossibility results).</li>
<li>Sariel Har-Peled&#8217;s <a href="http://valis.cs.uiuc.edu/~sariel/teach/notes/algos/lec/06_approx_I.pdf">notes on approximation algorithms</a>. The relevant material is in pages 1-2 (the greedy approximation algorithm for VERTEX COVER)</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://apollonius.cs.utah.edu/classes/algorithmsf08/2008/10/28/lecture-16-approximations/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Lecture 15: Reductions</title>
		<link>http://apollonius.cs.utah.edu/classes/algorithmsf08/2008/10/28/lecture-15-reductions/</link>
		<comments>http://apollonius.cs.utah.edu/classes/algorithmsf08/2008/10/28/lecture-15-reductions/#comments</comments>
		<pubDate>Wed, 29 Oct 2008 05:04:42 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[lectures]]></category>

		<category><![CDATA[news]]></category>

		<guid isPermaLink="false">http://apollonius.cs.utah.edu/classes/algorithmsf08/?p=40</guid>
		<description><![CDATA[We practised reductions for a number of problems. First of all, I showed how to prove that Independent Set is NP-Complete, assuming that 3SAT is. The proof has a number of steps:

Show that Independent Set is in NP, by demonstrating that a guessed solution can be verified in polynomial time
Construct a transformation f that takes [...]]]></description>
			<content:encoded><![CDATA[<p>We practised reductions for a number of problems. First of all, I showed how to prove that Independent Set is NP-Complete, assuming that 3SAT is. The proof has a number of steps:</p>
<ol>
<li>Show that Independent Set is in NP, by demonstrating that a guessed solution can be verified in polynomial time</li>
<li>Construct a transformation f that takes an arbitrary instance x of 3SAT and maps it to an instance f(x) of Independent Set, and does this in polynomial time. </li>
<li>Show that if x is satisfiable, then f(x) has an independent set of size k</li>
<li>Show that if f(x) has an independent set of size k, then x is satisfiable. </li>
</ol>
<p>After that, we broke out into groups and looked at a number of NP-Completeness proofs. The problems we considered were:</p>
<ul>
<li>SAT (via CIRCUIT SAT)</li>
<li>3SAT (via SAT)</li>
<li>SET PACKING (via INDEPENDENT SET)</li>
<li>Not-All-Equal SAT (via SAT)</li>
<li>TSP (via Hamiltonian Path)</li>
<li>HITTING SET (via SET COVER via VERTEX COVER)</li>
</ul>
<p>Not-All-Equal SAT is SAT, but where a clause must be satisfied <strong>without</strong> setting all literals to 1. All the other problems are defined in the textbook.</p>
<p>All of you worked on at least one of these problems, but I encourage you to try your hand at the others. You can be fairly sure that I&#8217;ll be asking some NP-Completeness questions either in an assignment or in the final. </p>
]]></content:encoded>
			<wfw:commentRss>http://apollonius.cs.utah.edu/classes/algorithmsf08/2008/10/28/lecture-15-reductions/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
