Difference between revisions of "Getting Started"

From powerwiki
Jump to: navigation, search
(Release notes)
(Power TAC server version 0.2.0, February 2012)
Line 18: Line 18:
  
 
(Preliminary) As was the case with the 0.1.0 release, the server is [https://github.com/downloads/powertac/powertac-server/powertac-server-0.2.0.tgz distributed] in the form of a small directory that contains a README.txt file, a sample server configuration file, and a maven "project object model" file called pom.xml. Detailed instructions for configuring and running the server are in the README.txt file.  
 
(Preliminary) As was the case with the 0.1.0 release, the server is [https://github.com/downloads/powertac/powertac-server/powertac-server-0.2.0.tgz distributed] in the form of a small directory that contains a README.txt file, a sample server configuration file, and a maven "project object model" file called pom.xml. Detailed instructions for configuring and running the server are in the README.txt file.  
 +
 +
This release also comes with a companion [https://github.com/downloads/powertac/powertac-server/sample-broker-0.2.0.tgz sample broker implementation], written in Java, that provides all the message types, the interaction with the server, and very simple behaviors for offering tariffs and bidding in the wholesale market.
  
 
For more information on the status, design, and development process for the server, there is a [https://github.com/powertac/powertac-server/wiki/Getting-started developer-oriented writeup at GitHub on getting started with the new Power TAC server].
 
For more information on the status, design, and development process for the server, there is a [https://github.com/powertac/powertac-server/wiki/Getting-started developer-oriented writeup at GitHub on getting started with the new Power TAC server].

Revision as of 15:21, 23 February 2012

This page is intended to help agent developers get started with the Power TAC server and agent framework.

Release types

The Power TAC server is designed to be installed and run using maven, a tool that provides a rich dependency-management infrastructure as well as goal-directed build automation. If you do not have a copy of maven on your system, you will need to install it. Although it is not absolutely necessary, we recommend that you build your brokers as maven projects as well, or using some other tool that uses maven repositories, such as Gradle.

Releases are labeled with names of the form major.minor.point[-status]. There are two kinds of releases, full releases and "snapshot" releases. A full release such as 0.2.0 is distinguished by a missing status indicator. A snapshot release such as 0.2.0-SNAPSHOT is distinguished by the status label.

Full releases are stable; they will not be changed at all once announced. Instead, point releases may be made if required. Each full release includes a downloadable distribution package, detailed release notes, and will be available through Maven Central.

Snapshot releases represent reasonably stable points along a development path, and will made when new features become available that are of interest to agent developers. They do not include downloadable distribution packages or release notes, but their status can be roughly assessed by looking at the current list of open issues on github. To use a snapshot release, you will typically need to clone at least one of the git repositories from the Power TAC development archives. Instructions for using particular snapshot releases will be sent out through the developer's mailing list; here's an example. Instructions for setting up a full server development environment are provided on the Power TAC developer's wiki at github.

Release history

The most recent release is shown first.

Power TAC server version 0.2.0, February 2012

(Preliminary) As was the case with the 0.1.0 release, the server is distributed in the form of a small directory that contains a README.txt file, a sample server configuration file, and a maven "project object model" file called pom.xml. Detailed instructions for configuring and running the server are in the README.txt file.

This release also comes with a companion sample broker implementation, written in Java, that provides all the message types, the interaction with the server, and very simple behaviors for offering tariffs and bidding in the wholesale market.

For more information on the status, design, and development process for the server, there is a developer-oriented writeup at GitHub on getting started with the new Power TAC server.

Release notes

This release represents a significant milestone toward the 2012 competition, but it still lacks the web-based front-end, and there are still no analysis tools. In addition to a number of bugfixes and code cleanups, there are a number of important issues resolved and new features with respect to the 1.0 release:

  • New command-line interface gives much more control over server configuration (#463, #481). It is documented in the README file.
  • New configuration system provides a uniform way to configure the server, eliminates the need to keep track of server configuration options in three different places, and gets rid of the PluginConfig instances that were showing up in the bootstrap-data file (#462). Instead, the broker is now sent a single Properties instance at the beginning of a simulation session containing all the public configuration data.
  • Broker login now works correctly (#467).
  • There is now a Java-based sample agent available (#444).
  • Server and sample broker can now be configured to run on different hosts (#475).
  • Tariff publication and revocation fees are now randomized (#483).
  • Customer unsubscribe events are now correctly communicated to brokers, so they can accurately track the number of customers subscribed to each tariff (#487).
  • The customer models (both the bottom-up "household-customer" model and the statistical "factored-customer" model) use weather reports to decide how much power to use in certain appliance types, such as air conditioners (#446).

Power TAC server version 0.1.0, December 2011

The server is distributed in the form of a small directory that contains a README.txt file, a sample server configuration file, and a maven "project object model" file called pom.xml. The first time you run the server, there will be a significant pause, and considerable console output, while maven retrieves all the components that make up the server. Detailed instructions for configuring and running the server are in the README.txt file.

For more information on the status, design, and development process for the server, there is a developer-oriented writeup at GitHub on getting started with the new Power TAC server.

Release notes

This release is a "developers" release. The simulator portion of the Power TAC server is quite usable, but missing a few features that we intend to support for the 2012 competition in June. However, the web-based front-end is missing, the web application for scheduling tournaments and large-scale experiments is not included, and there are as yet no log-analysis tools available.

Specific unresolved issues for this release include (with links to the original github issues)

  • We currently do not have a Java-based broker framework to offer (issue #444), although we expect to have one in a few weeks, and there are a couple of people who have already done Java-based brokers. There is also a Grails-based broker framework that has been updated to work with the new server.
  • Some modules are not currently configurable through the server properties file (issues #419 and #454.
  • Customer models, including the solar and wind models in the factored-customer module, do not react to current weather conditions (issue #441).
  • The balancing charges are not generated exactly as described in the specification (issue #435). Instead, the older balancing scheme from the Grails prototype is still in place.
  • An anomaly has been observed in wholesale market clearing (issue #457), in a forked version of the server. At this point we have not been able to make it happen in the current codebase, but we are leaving the issue open until we are confident that it's been resolved.
  • Brokers do not get information about total net load per timeslot (issue #431).
  • Cloud cover in weather reports is always zero (issue #308).
  • Customer models currently do not implement controllable/interruptible capacity, and the distribution utility does not exercise them in any case (issue #243).

Release history for the 2011 Grails prototype

Instructions for the original Grails version of the Power TAC simulation server.