• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Segap project(lncs)
 

Segap project(lncs)

on

  • 224 views

Springer LNCS SEGAP Project Draft

Springer LNCS SEGAP Project Draft

Statistics

Views

Total Views
224
Views on SlideShare
224
Embed Views
0

Actions

Likes
0
Downloads
4
Comments
0

0 Embeds 0

No embeds

Accessibility

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Segap project(lncs) Segap project(lncs) Document Transcript

    • SEGAP Semantic game platform Ana Florescu, Catalin Cristian, Ilie Pandaciuc, Oana Calin Faculty of Computer Science, UAIC, Iasi, November 2013 Keywords. wad, wade, segap, infoiasi, project, game, semantic 1 Why SEGAP? Abstract. In our days, technology tends to gain more and more space in our lives. We tend to reduce communications between “real people”, preferring to have a “virtual life”. Games have an important place in people's life. Some are used for relaxation, for boredom, to improve intelligence but for some, games are a way of life. Web browser games started to be more and more developed, competing with the classical ones. In some cases browser game are more advantaged because here where you don't need installation in order to play one. In order to improve the game experience based on the player behaviour, we will gather relevant information during the game that we are going to use in order to offer suggestion/tips regarding the playing strategy that should be adopted, the gamer activity will be monitored on all games that he will be playing , so a global classification for all the games could be done. Using specials ontologies, customised for the game purpose would facilitate the easily spread around the world for all the gamers community – talking in a common language. 1.1 State of the Art In our days, technology tends to gain more and more space in our lives. We tend to reduce communications between “real people”, preferring to have a “virtual life”. Games have an important place in people's life. Some are used for relaxation, for boredom, to improve intelligence but for some, games are a way of life. Web browser games started to be more and more developed, competing with the classical ones. In
    • some cases browser game are more advantaged because here where you don't need installation in order to play one. In order to improve the game experience based on the player behaviour, we will gather relevant information during the game that we are going to use in order to offer suggestion/tips regarding the playing strategy that should be adopted, the gamer activity will be monitored on all games that he will be playing , so a global classification for all the games could be done. Using specials ontologies, customised for the game purpose would facilitate the easily spread around the world for all the gamers community – talking in a common language. 1.2 What are we bringing? Our approach will be focused on the player and on his work. We will provide feedback to the gamers, so they can improve their game and results in relation to other gamers, and help them find themselves opponents with similar skills. We will offer a global view of the results and work done at every game for each player. Each gamer will be able to see his work, his personal statistics : level, rewards, won/lost battles, time spent etc. After that he will be able to analyze his results and improve his work on the game platform. Also, based on the information collected about a user (player skills, played games, current game opponents, won/lost battles etc) the solution that we’ll provide will offer good tips/advices before and during a game. Our approach is coming with a semantic opening on a game entities and parameters, by modelling with SPARQL queries and ontologies. Using these technology we will be able to obtain complex relations between colected date, and dispaly more accurate and usefull infomation for players. Among the advantages of using RDF database and SPARQL query langauge there are: better query performance, data integration, ontology reuse and choosing features based on rational reasons. The SPARQL queries will help us to gather specific information from and for the player from our ontologies. We will be able to realise complex relations between the collected data, and reveal useful information for the players. We plan to collect information (position on the map, the weapons that he has, won/lost battles, player skills, actions etc) from a player during a game and retrieve/give him hints/suggestions, his position in the ranking, connection with other players that might interest him (person from Iasi that plays Heroes on a specific land), help them find opponents with similar skills. 1.3 Scope This project will meet the following objectives: ─ improve the experience that a player might have while playing a game; 2
    • ─ enlarge the social network for players by making possible the connection between people that share the same hobbies; ─ helps the player to make the best decision based on his previous behaviour and on his current position in the game; ─ global review of the results and work done at every game for each player. This project have the aim to improve the interactions between players when they play a game, and in the same time we use the advantages offered by SPARQL. Using the data collected from the user, we can give relevant information to the player related to other players, or we can even give some hints in order to make it easier for him to win. 2 Project concept There will be three main types of resources available through RDF ontologies. The theme resources, that describe the thematic of a game and its contents such as variables, actions, entities or conditions. A game resource is built on top of one or more templates and can use only action, conditions, entities and variable templates that are present in the templates that it inherits. Player resources represent the actual gamers that are using/playing games that built on themes. Due to the fact that these themes are on top of any games, and, that a theme is a known and established thing, SPARQL queries can be made in order to find certain information about an ongoing game or make statistics and provide recommendations based on the player history. 2.1 Theme A theme or game theme represents the thematic of a game, a structures that defines the baseline for a game. This is the base structure of the system. The traits defined here can later be used for queries or as part of queries executed via SPARQL. The bottom line is that a theme is the description (template) of a game genre or thematic. Following is a description of the basic entities that compose a theme. 2.2 Theme general information Each game theme will have some general information facts that are not directly related to the ontology structure but are relevant as presentation details for the theme. Those details are as follows: - name - description - other information (such as tags or links) 3
    • 2.3 Theme Entities This refers to a game entity, more specifically to an entity that is present only in the current theme. An example of entity can be anything from a NPC to a building or some other object. 2.4 Theme Variables Variables are values that can be updated at the game client request during a match or by the system on demand. Also there can be global parameters that can provide overall information regarding a game. Variables can range from things like the number of wins or the number of lost games, some skill classification depending on the game to the current position of the player on the map. 2.5 Theme Actions The actions of a game theme describe what actually can be done inside the game, actions are the things that the player can do inside the game, the interaction with the environment, for example, jump over walls, train units for his army, hide, attack entity, etc. These are the actions that are specific for the current theme. These can vary from game theme from game theme. 2.6 Theme Conditions A condition can check what is needed for a match to start or to end. These checks are mainly determined by the state of some already defined parameters such as an action or the value of a variable. They can be done at request by the client or by the system at a specified time or triggered by some event. 4
    • 3 Game The game is the actual content of the platform. This is what is being used. The game is derived from one or more themes and can only declare parameters that were defined inside the themes it is based on. Players interact with games that in return interact with them. The standard requirements for a game are described in this section. 3.1 Game general information This is the standard game information that provides a basic overview and presentation. It is not related to the game ontology structure directly, it is here only to be used as a meaning to familiarize the players with the game and make a decision if they are going to play or not. - name - developer - publisher - website - description 5
    • - screenshots - videos 3.2 Game specific characteristics These guidelines are specific to a certain game only depending on the game theme or themes: - theme(s) - actions (build constructions, train units, attack, defend, upgrade, etc) - start conditions (location, resources, items, etc.) - win/loose end conditions (location, resources, items, unit destroyed, actions done, etc) - entities 3.3 Game tips or advices This type of information can be provided after evaluating some conditions at the clients request in game or outside the game. For example if the player has lost a certain amount of units in a strategy game he can be advised to create more of those units to replace his lost ones. The tips are per game only. Each game must define its own tips. In theory the tips are unique for each game. 4 Player 4.1 Player general information This is the standard general player information that is being used in the system to help other players to find other players with related interests, region, etc: - name - age - country - location (city, region, etc) - website/blog - social network information - e-mail - other details 4.2 Player Game related information This is the information related to the player gaming experience, these parameters are distinct for every game. The games fill in this information during gameplay. This information is related to game parameters such as actions, conditions, variables and entities. Awards can be provided to the player during or after special events. 6
    • These are the parameters that a game client can send/retrieve updates about to/from the API depending on the game theme, here is an example: - player skill - played games - wins/loses - current game parameters (player related information such as position, health, inventory, units, etc) - current game opponents - overall game parameters (prefered region on a map, preferred weapon on a map, etc) - overall game opponents 4.3 Other players related information This is the information related to the player social interaction regarding the games: - friends - groups 5 Technology This section describes the frameworks that will be use to implement SEGAP. The technologies listed here offer backbone on which the system will be built from the data persistence level to the WEB UI. 5.1 Jena Apache Jena (or Jena in short) is a free and open source Java framework for building semantic web and Linked Data applications. The framework is composed of different APIs interacting together to process RDF data. 7
    • Apache Jena will help us with persisting the our ontologies through TDB, query them with AQL and expose RDF endpoint through Fuseki. 5.2 SPRING The SPRING Framework will be used in order to create, expose and secure the REST services present in the REST API. Spring's web MVC framework is, like many other web MVC frameworks, request-driven, designed around a central Servlet that dispatches requests to controllers and offers other functionality that facilitates the development of web applications. 8
    • SPRING Security will help in securing our REST services from unwanted access. It will also interact with our web interface. 5.3 JSP JavaServer Pages (also known as JSP) is a Java based technology specifically used to help software developers serve dynamically generated web pages (such as HTML and XML) as well as other document types pertinent to the development of interactive web content. 9
    • 5.4 OWL/RDF/SPARQL “The Web Ontology Language (OWL) is a family of knowledge representation languages or ontology languages for authoring ontologies or knowledge bases. The languages are characterised by formal semantics and RDF/XML-based serializations for the Semantic Web.” “SPARQL (pronounced "sparkle", a recursive acronym for SPARQL Protocol and RDF Query Language) is an RDF query language, that is, a query language for databases, able to retrieve and manipulate data stored in Resource Description Framework format.” SPARQL will be used to query our ontology and provide input based on those queries. 5.5 HTML5/CSS3/RDFa/JavaScript/Ajax HTML5 is a cooperation between the World Wide Web Consortium (W3C) and the Web Hypertext Application Technology Working Group (WHATWG). HTML5 is designed to deliver almost everything you want to do online without requiring additional plugins. It does everything from animation to apps, music to movies, and can also be used to build complicated applications that run in your browser. These technologies will be used at a presentation level to develop the web interface and also supply the user with information regarding various topics such as player to player interaction and current status and statistics. 6 Tools These tools are being actively used to progress with the project. They are helping us implement, track, model, visualize and test our SEGAP application. Protégé: - is a free, open-source, widely used Java based ontology editor that has well documented tutorials. We can use Protégé to build domain models and knowledge-base collections. Graphviz - is open source graph visualization software. Graph visualization is a way of representing structural information as diagrams of abstract graphs and networks. It is used inside Protégé as a plugin to draw the ontology graph. ArgoUML - is the leading open source UML modeling tool and includes support for all standard UML 1.4 diagrams. It runs on any Java platform. Google DOCS - Used as a common point to develop the project specifications. NetBeans IDE - provides first-class comprehensive support for the newest Java technologies and latest Java specification enhancements before other IDEs. It is the 10
    • first free IDE providing support for JDK 8 previews, JDK 7, Java EE 7 including its related HTML5 enhancements, and JavaFX 2. With its constantly improving Java Editor, many rich features and an extensive range of tools, templates and samples, NetBeans IDE sets the standard for developing with cutting edge technologies out of the box. Mockingbird - is an online tool that makes it easy for you to create, link together, preview, and share mockups of your website or application. 7 References 1. http://docs.spring.io/spring/docs/3.2.x/spring-framework-reference/html/mvc.html 2. http://docs.spring.io/autorepo/docs/spring-security/3.0.x/reference/technical-overview.ht 3. 4. 5. 6. 7. 8. ml http://en.wikipedia.org/wiki/Web_Ontology_Language http://en.wikipedia.org/wiki/SPARQL http://argouml.tigris.org/ http://www.graphviz.org/ https://netbeans.org/features/index.html https://gomockingbird.com/ 9. http://www.ee.ktu.lt/journal/2012/04/19__ISSN_1392-1215_A%20Methodology%20for %20Engineering%20OWL%202%20Ontologies%20in%20Practise%20Considering %20their%20Semantic%20Normalisation%20and%20Completeness.pdf 11