You are currently browsing the tag archive for the ‘opensource’ tag.

GAMA15-roadtraffic

The “GIS and Agent-Based Modeling” blog reports on GAMA, an open source GIS-ABM tool that looks quite interesting:

GAMA is a simulation platform, which aims at providing field experts, modelers, and computer scientists with a complete modeling and simulation development environment for building spatially explicit agent-based simulations. It is being developed by several French and Vietnamese research teams under the umbrella of the IRD/UPMC International Research Unit UMMISCO since 2007.

GAMA provides the modeler with:

- The ability to use arbitrarily complex GIS data as environments for the agents.

- The possibility to run simulations composed of vast numbers of agents (up to millions).

- A way to conduct automated controlled experiments on various scenarios, with a systematic, guided or “intelligent” exploration of the space of parameters of models.

- The possibility to let users interact with the agents in the course of the simulations.

A demo video is also available.

On the Esri side, check out the (free) Agent Analyst extension.

learnt today that Stamen Design have released new map styles for Open Street Map data. I really like the watercolor one, as it is quite different from what is usually seen on web maps. The other two are:

  • Toner: Very clean black & white
  • Terrain:  Features hill shading and natural vegetation colors

A Javascript API is provided in order to access the tiles. If you would like to roll your own maps (with TileMill, for example), the styling instructions are also available for Toner and Terrain.

Triptyque

I had been trying to get into iPhone / iPod Touch application development for some time, but I was just too lazy until I bought a few weeks ago an iPod Touch (which I really like – I am playing the Sudoku game from Mighty Mighty Good Games all the time).

As my first app and to learn how it works, I have developed an opensource browser for the ArcGIS Server 9.3 REST API, which I have called AGS Touch. It is quite bare-boned right now : It is possible to browse the folders of a REST endpoint (something like http://sampleserver1.arcgisonline.com/ArcGIS/rest/services/), look at the details of a map service (such as its description, extent, layers…) and navigate the corresponding map. That’s basically it (and the map service details are not even completely filled yet). Still I have released version 0.1 with the limited functionality. Hopefully, I will make it better in the near future. Something I would like to have in the end is some kind of ArcGIS Server iPhone API (like what exists in Flex or SilverLight), although it is not quite ready yet…

There has been some effort to bring ArcGIS Server to the iPhone by using a UIWebView and include an existing JavaScript library (modified to respond to touches) such as OpenLayers (this is the approach taken for IOL.js) or the ArcGIS Server JavaScript API (like what is shown there).

I went instead with RouteMe, which is a native Objective-C library to display slippy maps on the iPhone. It works very well with OpenStreetMap and is being used in the GPS Mission client for the iPhone (see Make article). The main RouteMe library has many features, like Proj4 integration, marker overlays or multiple layers. For my purpose, I actually adapted a subproject currently in the SVN trunk called freemap-iphone (to display FreeMap tiles) since it looked simpler and easier to adapt to get something quickly. To make it event simpler, I actually dropped the tile rendrering  completely : The map viewier in AGS Touch has a load-a-complete-image-for-the-extent kind of scheme, although I intend to allow tiles as well in the future.

I am currently in the process of evaluating Palo for a personal project. The Palo server is an opensource (GPL) in-memory multidimensional database management system, well suited for OLAP. Jedox, the German makers of Palo, market it as a data store for Excel, but it should work well outside this specific usage scenario. They offer pre-compiled binaries for Windows and Linux but not for Mac OS X, so I set out to make one, which was not very hard. I outline the steps here. A downloadable package for Leopard is at the end of the post.

The first thing is to get the source code, stored in a SVN repository on Sourceforge. The code there is not live, that is, it corresponds to the 2.0 release of the product, from 6 months ago. I could not find the source for the 2.5 version currently in beta, so the development process does not seem as open as one could hope. The compilation itself is pretty straightforward (as long as the Mac OS X development tools are installed). Open a terminal, make sure there is no space character in the current path and type:

svn co https://palo.svn.sourceforge.net/svnroot/palo/server/Source/ server
cd server
chmod -R 750 *
./configure && make

If all went well, the compiled “palo” binary should be in the “Programs” folder. To make a complete package I then downloaded and untarred the pre-compiled server package for Linux, deleted the “32bit” and “64bit” directories and added in their places the “palo” binary I just obtained. Additionally, since the syntax for killall is different between *BSD (like Mac OS X) and Linux, I also changed the stoppalo2.sh script to the following :

#!/bin/bash
killall -SIGINT palo

And that should be it! The complete package can be obtained here.

For quick testing, I lauched the server with “./startpalo2.sh”. By default the API documentation and HTTP interface run on port 7777 (this can be changed inside the “Data/palo.ini” file), so this can be used for testing that all is ok. Here is what should be displayed:

I will try to later write an account of my progress with Palo.

Follow

Get every new post delivered to your Inbox.