Sunday 21 April 2013

Install Twiki on Ubuntu 12.04


This is short guide on how to install Twiki ~5.13 on Ubuntu 12.04. This guide has a fix or two that was not present in any other guide I found.

  1. Install all of the relevant dependencies.

    sudo apt-get install apache2 libgdal-perl libcgi-session-perl libhtml-tree-perl liberror-perl libfreezethaw-perl libgd2-xpm rcs libapache2-mod-perl2-doc libapache2-mod-perl2 libapache2-mod-php5 latex2html
  2.  Download Twiki

    If installing in the default directory for Apache (/var/www) place the downloaded zip/tar.gz file in /var/www (http://twiki.org/cgi-bin/view/Codev/DownloadTWiki).
  3. Install Twiki

    cp /var/www/twiki/bin/LocalLib.cfg.txt /srv/www/ducklington.org/twiki/bin/LocalLib.cfg
    chown -R www-data:www-data /var/www/twiki
  4. Configure Twiki
    Go to this link and have the page generate the configuration needed for your apache and perl configuration.
    http://twiki.org/cgi-bin/view/TWiki/ApacheConfigGenerator

    save the generated configuration to /etc/apache2/conf.d/twiki.conf
  5. Restart Apache2
    sudo /etc/init.d/apache2 reload
  6. Allow configuration file to know where the path to the configuration should be put.

    Edit /var/www/twiki/bin/LocalLib.cfg:
    $twikiLibPath = "/var/www/twiki/lib";
  7. Run Twiki config.
    Configure your twiki: go to http://localhost/twiki/bin/configure,  setup admin password and paths.


  8. Edit /var/www/twiki/bin/LocalLib.cfg:
    $twikiLibPath = "/var/www/twiki/lib";

Wednesday 17 April 2013

Putting a steering algorithm into SteerSuite



This is a guide I created which I hope to turn into a Wiki some day on how to put your steering algorithm in SteerSuite.

  1. First things first
    1. Your agent needs to extend the SteerLib::AgentInterface class so that is can be used properly with the gspacialDatabase
    2. If your algorithm keeps collections of obstacle types or other agents the types should be changed to SteerLib::AgentInterface or other agents and SteerLib::BoxObstacle
    3. Next you will need to start converting geometries
      1. If you are lucky the algorithm that is being ported to SteerSuite will differentiate between Points and Vecotors otherwise you will need to go through every operation and check if it produces a Point or Vectory because SteerSuite differentiate between them.
    4. The *AIModule should not include the Agent type
      1. This is to avoid circular includes
      2. Not should the agent include the module type only the interfaces provided from SteerSuite
    5. Try not to change any of the math in the algorithm
      1. Best is to alter the initial conditions to fit the algorithm best and then convert the reusult computed by the algorithm back into SteerSuite coordinates.