==============================================================================
Department of Computer Sciences
The University of Texas at Austin
Austin, TX USA

The TAC SCM Prediction Challenge v1.1 (client/server version)

Copyright 2007 David Pardoe and Peter Stone.  All rights reserved.  You are
free to use, modify, and redistribute this software for noncommercial
purposes so long as you acknowledge its use in any publications or releases
of code or binaries.  This software is provided "as is" and without warranty
of any kind.

This release includes the TAC SCM Game Data Toolkit 0.4.1 beta 
(scmlogtool.jar) developed by the Swedish Institute of Computer Science.  The
latest version, including source code, may be downloaded from the TAC homepage
(www.sics.se/tac).

==============================================================================

This is the final release of the software to be used in the TAC SCM Prediction
Challenge.  The details of the Prediction Challenge are described in the
specification document available from the challenge website:
http://www.cs.utexas.edu/~TacTex/PredictionChallenge

This version of the software represents the client/server version that will
be used in the competition.  Only the server needs access to the game logs
for which predictions are made.  A standalone version is also available from
the challenge website and may be more efficient for use while developing an 
agent.

The PredictionChallenge.jar file contains both source and binaries.


Here is an example of how to run the software.
To run an agent client:
java -cp PredictionChallenge.jar:scmlogtool.jar PredictionClient -server 
  localhost -name TeamName -predictor SamplePredictor
To run the server:
java -Xmx512M -cp PredictionChallenge.jar:scmlogtool.jar PredictionServer
  -gamelist gamelist.txt -agentName PAgent -verbose
(Note: Windows users should replace the ":" with ";".)


The required arguments for the client are:

-server: the name of the server to connect to

-name: the name of the team participating in the competition

-predictor: The class to be used for prediction (it must implement the 
SCMPredictor interface).

The optional -game argument makes it possible to begin with a specific
game.  The current game number can be seen in the client output.

The required arguments for the server are:

-gamelist: A text file listing the game logs for which predictions are to 
be made.  A blank line indicates the beginning of a new set of games 
(meaning that the opponents of the SCMPredictionAgent are different from 
those in the previous set of games).  Note that the included file 
gameList.txt is for demonstration only, as no games are included with this 
release.  Sample games may be downloaded from the challenge website.

-agentName: The name of the agent (from the game logs) for which 
predictions are to be made.
  
The optional -verbose argument will cause an accuracy report to be given
for each day, instead of each game only.


The SamplePredictor.java and SamplePredictorAgent.java files present an 
example of how prediction might be performed and are hopefully a useful 
starting place for development.  All other files are involved in parsing 
log files and evaluating predictions, and they should not need to be 
modified.


In case of a temporary network failure, the client will automatically
attempt to reconnect to the server, and no action will need to be taken by
the user.  If the client program is restarted, however, the server will start
over with the first game in the game list, unless the -game argument is used. 


This software is released "as-is" with no support promised.  However, we will
do our best to respond to any problems that may arise when trying to run it.

To contact us, email:
	dpardoe@cs.utexas.edu.


