﻿<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<meta name="description" content="_David Weiss's personal webpage._" />
<meta name="keywords" content="_computer science, research, machine learning, statistics, neuroscience_" />
<meta name="author" content="_David Weiss_  / Original design: Andreas Viklund - http://andreasviklund.com/" />
<link rel="stylesheet" type="text/css" href="andreas01.css" media="screen" title="andreas01 (screen)" />
<link rel="stylesheet" type="text/css" href="print.css" media="print" />
<title>David Weiss</title>
</head>

<body><div id="wrap">

<div id="header">
<h1>David Weiss</h1>
<p><strong>"In theory, there is no difference between theory and practice. In practice, there is."</strong></p>
</div>

<img id="frontphoto" src="/home/djweiss/harvest/www.djweiss.info/www.djweiss.info/img/front.jpg" width="760" height="175" alt="" />

<div id="avmenu">
<h2 class="hide">Menu:</h2>
<ul>
<li><a href="cv.html">Resume/CV</a></li>
<li><a href="research.html">Research</a></li>
<li><a href="netflix.html">Netflix</a></li>
<li><a href="business.html">Business</a></li>
<li><a href="index.html">About</a></li>
</ul>
</div>


<script type="text/javascript">
function openGame()
{
w = window.open("rpsgame.html", "Play_RPS", 'status=0,toolbar=0, menubar=0, height=450,width=800');
}
</script>


<div id="content">
<h2>Playing Expert Rock, Paper, Scissors</h2>

  <p>As a final project for my Foundations of Machine Learning class
  with Rob Schapire, I created a Java applet that plays "Rock, Paper,
  Scissors" and consistently beats humans. In 2006, its final record
  was 114-47 (it has been reset since moving to this new website.)</p>

  <p><em>Sorry! I'm moving to a new web server and my old record keeping code doesn't work anymore.
  You can still play, but it won't record your game history in the database.</em>
  <a href="javascript:openGame()">Click here to play.</a></p>
  
  <h3>Statistics</h3>
    <p><em>This is currently disabled until I write more code on my new server.</em></p>
  <h3>How it works</h3>
  <p>
  The algorithm is based on online updates of
  weighted prunings of decision trees, a member of a family of
  algorithms based on the notion of "learning with expert advice".
  </p>
  
  <p>
  In other words, the algorithm builds a probability distribution
  based on every possible combination of moves you previously have
  taken, starting with a blank slate at the beginning of the game. Any
  strategy that you employ will be exploited. And to make
  sure that you're kept on your toes, there's some randomness in the
  algorithm, too...
  </p>

  <p>
  You can read my final write-up <a href="http://www.djweiss.info/pdf/RPSWriteup.pdf">here
  (PDF).</a> For more information about these algorithms, see
  Cesa-Bianchi et al. and Hembold and Schapire.
  </p>
  
</div>
  
<div id="footer">
Copyright &copy; 2005 David Weiss. Design by <a href="http://andreasviklund.com/">Andreas Viklund</a>.
</div>

</div>

<script type="text/javascript">
		   var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
document.write("\<script src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'>\<\/script>" );
</script>
<script type="text/javascript">
  var pageTracker = _gat._getTracker("UA-2147524-2");
pageTracker._initData();
pageTracker._trackPageview();
</script>


</body>
</html>

