Skip to content

Project description

alfongj edited this page Jun 22, 2011 · 6 revisions

Project description

This page contains detailed information about what has been/is being/has to be done regarding my part of the project. It will be updated when new parts are finished or planned. At the end of this page, you can find links to prototypes or running versions of the code.

Zero part:

To begin with, my first task in the Gambit Project's Game Theory Explorer is to complete the test classes missing for the already working application. The objective of this is to get familiarised with the code already written by Mark Egesdal for the GTE, which is actually very complete and usable.

First part:

The real first part of my project consists in making a series of GUI improvements to the actual GUI that existed. The following is a non-final list of proposed upgrades:

  • Better zoom: the editor now seems to zoom only vertically, or at least not in the same vertical/horizontal aspect ratio, which seems weird from my user-point of view. Also a horizontal Zoom-bar just below the Zoom percentage label might be sometimes more usable and quick than having to press the + and – buttons, so those will be nice add-ons.
  • Scroll hand: (I don’t know if there is an actual standardized name for this tool) it would be also a good improvement to implement a “scrolling” tool, in the same fashion as the hand tool in many Adobe programs, that when selected, will be used to move the contents of the screen when dragging the mouse through it. Also, as in Adobe programs, this could also be implemented as a shortcut when dragging the mouse while pressing spacebar. - DONE
  • Selection tool & properties box: the tool I was most missing when I tried the editor was a normal selection tool, for nodes and labels, for editing them, in conjunction with a properties box displayed when selecting an item (with properties such as Player, text and payoffs if they are terminal nodes).
    • Nodes: now, nodes can be edited by clicking first in the corresponding tool from the toolbar, and then clicking on the node. While this is a good approach, especially useful when having to edit the same property in many nodes, sometimes the user would want to edit just the properties of one node, via the selection tool and the properties box it would open (it is a more straightforward approach, and more common in most of the software out there, think for example in text-editors!).
    • Labels (including probabilities): currently labels have to be edited via modifying their name in a sequence they appear on. It would be easier to just select a label and change its name on a properties box, or maybe even editing the text in the label itself directly.
  • When creating/deleting nodes, the tree re-positions everything. This might confuse a bit the user, as even the node he just clicked on changes position in that moment. An approach for making this more comfortable to the user might be just repositioning the whole tree but panning or scrolling at the same time so that the just-clicked zone (the added node, or the parent of the deleted one) continue to be where the mouse was clicked. Also other approaches might be better than this one. It has to be tested adequately.
  • Currently Nodes and ‘Isets’ have as a label the Player number. However, in my university for example, we use a slightly different standard, as we put an incremental sub-index next to the player number, for each node (therefore, instead of having eight ‘1’ nodes, we would have nodes numbered from ‘1.1’ until ‘1.8’). Maybe this could be selectable through a setting or toggle-button, although it is not really that important.
  • Display the equilibrium graphically: after pressing the “Run” button and calculating the equilibrium, it would be nice to show the equilibrium in the tree by coloring for example the lines involved, in perfect information parts where backwards induction has been used.
  • Finally, a tutorial for new users, either in videotutorial form, or as an animation inside the editor, would be the cherry on the cake for this application!
  • Making the canvas re-sizable, to improve viewability in high-res screens - DONE

Runnables

NOTE: They are all links to either executables for Win, Linux and Mac, or Web-based apps running flash

Original deployed version of the G.T.E.

Latest deployed version of the G.T.E. - 22/06/11

Node inserting prototype - Not really important for the project, it was just used as a proof of capabilities inside the application presented at GSOC

Clone this wiki locally