Loading...
 

About

Pogamut brief introduction


Pogamut is a Java middleware that enables controlling virtual agents in multiple environments provided by game engines. Currently Unreal Tournament 2004 (UT2004), UnrealEngine2RuntimeDemo (UE2), Unreal Development Kit (UDK) and DEFCON game are supported. Pogamut provides a Java API for spawning and controlling virtual agents and GUI (NetBeans plugin) that simplifies debugging of the agents.

The main objective was to simplify the "physical" part of agent creation. Most actions in the environment (even the complicated ones, like pathfinding and gathering information in agent's memory) can be performed by one or two commands. This enables user to concentrate his efforts on the interesting parts.

Download Pogamut all-in-one installer

How to cite Pogamut

Please refer to this paper when citing the Pogamut in an academic publication:
Gemrot, J., Kadlec, R., Bida, M., Burkert, O., Pibil, R., Havlicek, J., Zemcak, L., Simlovic, J., Vansa, R., Stolba, M., Plch, T., Brom C.: Pogamut 3 Can Assist Developers in Building AI (Not Only) for Their Videogame Agents. In: Agents for Games and Simulations, LNCS 5920, Springer(external link), 2009, pp. 1-15. (PDF)

If you are using only GameBots part of our project, you can cite this paper in your references:
Bida, M., Cerny, M., Gemrot, J., Brom, C.: Evolution of GameBots project. In: Herrlich, M., Malaka, R., Masuch, M. (eds.) ICEC 2012. LNCS, vol. 7522, pp. 397--400. Springer, Heidelberg, 2012. (PDF)(external link)

Features list


What will you find on these pages


These pages serve as a community portal for Pogamut 3 platform. Information about recent releases and other relevant events can be found in News. Latest version of Pogamut 3 can be downloaded in Download section. More information about the platform as well as a number of tutorials(external link) can be found in Documentation section. Community section holds links to related projects and projects based on the Pogamut platform as well as a link to community forum (register here) and Pogamut development wiki page(external link). Publications section contains all published papers about Pogamut platform. Links section provides a number of interesting links. And Screenshots page shows screenshots of Pogamut 3 platform and Unreal Tournament content. You may also report bugs through Pogamut Mantis(external link).

Link to dev wiki(external link)


Pogamut 3 developer wiki page(external link) contains many useful information for developers interested in Pogamut 3 platform or users that want to develop a project on top of Pogamut platform. Page holds list of all projects developed on Pogamut platform as well as proposals of new projects and development guidelines.

Pogamut promo video


Flash player not available.


Pogamut usage


The intended use of Pogamut platform is twofold. Firstly, Pogamut can be used to teach the students about the problematics of virtual agent development. Secondly, researchers or enthusiasts can use Pogamut for research or evaluation purposes. Pogamut allows user to fast code his virtual character in a virtual world and solves a number of low level problems such as a) connecting to the environment, b) exporting information about the virtual world or c) providing a basic path finding. Perhaps the best idea about Pogamut use cases can be provided by a list of projects that exploited Pogamut in some way. The list can be found below with a brief overview of the projects.
  • BotPrize competition - international competition BotPrize(external link) recommended Pogamut for development of virtual agents in this competition. Summary about our participation in 2008 here(external link).
  • Pogamut Games - Games(external link) that is internally using Pogamut API
  • Genetic Bots - Genetic bots(external link) project aimed on evolution of behaviour of bot embodied in the game Unreal Tournament 2004 using genetic algorithms.
  • StorySpeak - StorySpeak(external link) is a language for the specification of agents programs. This language is especially designed for the authoring of short virtual stories.
  • Episodic memory for virtual agent - Episodic memory for virtual agent(external link) project designed and implemented a prototype of the episodic memory for virtual humans. The memory was inspired by up to date research on function of human memory for personal events (episodes) and human time perception.
  • PojACT-R - PojACT-R(external link) is composition of Pogamut, Java and ACT-R(external link). It means that it is plugin which connects Pogamut with cognitive architecture ACT-R(external link), specifically with Java implementation of ACT-R called jACT-R(external link).

Brief overview


To get a basic feel about how does the Pogamut platform look like refer to the images below.


Pogamut architecture
Pogamut architecture



Pogamut architecture. The information from the environment UT2004 are exported through TCP/IP by GameBots2004 text protocol. These text messages are processed by Java library - Gavialib, so the Pogamut agent can work with Java objects. Pogamut agent can be debugged remotely through JMX protocol through Pogamut NetBeans plugin.


Pogamut NetBeans Plugin
Pogamut NetBeans Plugin



Pogamut 3 NetBeans plugin. On the left side you can see a server with a list of connected bots. On the right side you can see a visualization of navigation grid of the actual map.

Videos


Below are some videos of simple working bots created with Pogamut 3 platform in UnrealEngine2RuntimeDemo:


License


The Pogamut (PogamutCore and Netbeans Plugin) is distributed under GNU GPL v3(external link) license.

Note that the GameBots2004 goes under the different license as it is written in UnrealScript.

Note that providing a Pogamut under a different license can be discussed especially in cases where you need to couple Pogamut jar files with another open-source project that has incompatible license with GPLv3.

Also please note that if you want to contribute to the Pogamut code than we retain the rights to relicense the Pogamut if needed.

About authors


Acknowledgement


Vývoj několika rozšíření potřebných pro kurz Umělé bytosti vyučovaném na MFF-UK (middleware pro potřeby kurzu) byl podpořen ve školním roce 2011/12 a 2012/13 projektem číslo CZ.2.17/3.1.00/33274 financovaným Evropským sociálním fondem a rozpočtem hlavního města Prahy. Klíčová rozšíření jsou: nový navigační modul, výpočet matice viditelnosti a modul pro hru typu Capture-the-Flag. Všechna tato rozšíření jsou součástí Pogamutu v. 3.5.0.

Image

Evropský sociální fond
Praha & EU: Investujeme do vaší budoucnosti


Extensions to Pogamut that allowed us development of educational high-schools projects, and innovations concerning education of undergraduate students were financially supported by the project CZ.2.17/3.1.00/ 31162 financed by the European Social Fund and the municipality of Prague (2009 - 2011).

Image

European Social Fund
Prague and EU: we invest into your future!

Research on action selection and planning using Pogamut is supported by P103/10/1287 (GACR, 2010 - 2014) and by a student grants GA UK No. 655012/2012/A-INF/MFF, 559813/2013/A-INF/MFF
(2012 - 2013), 0449/2010/A-INF/MFF (2010 - 2012).

In past, this work was supported by GA UK 1053/2007/A-INF/MFF (2007-8), GA UK 351/2006/A-INF/MFF (2006-8), the Ministry of Education of the Czech Republic (grant MSM0021620838) (2008-11) and by the Program "Information Society" under project 1ET100300517 (2006-9).



News

News RSS RSS feed for News link



Pogamut

Quarterly RSS RSS feed for quarterly reports
N/A

Acknowledgement

This work is supported by GA UK 1053/2007/A-INF/MFF (2007-8), GA UK 351/2006/A-INF/MFF (2006-8), the Ministry of Education of the Czech Republic (grant MSM0021620838) (2008-9), by the Program "Information Society" under project 1ET100300517 (2006-9), and the project Integration of IT Tools into Education of Humanities (2006-8) and by the project CZ.2.17/3.1.00/31162, which are financed by the European Social Fund, the state budget of the Czech Republic, and by the budget of Municipal House Prague.