Download presentation
Presentation is loading. Please wait.
1
League of Legends Ontology
By Hannah De los Santos and Anders Maraviglia
2
Base Ontology Structure: Overall
Hannah
3
Base Ontology Structure: Champions
Hannah
4
Base Ontology Structure: Items
Hannah
5
Base Ontology Structure: Teams
Hannah
6
Base Ontology Structure: Statistics
Hannah
7
How We Answer Competency Questions
Team Questions: We have our queries return all roles each champion (on a team) can play, assign each role to a champion so that all roles on a team are unique. A discussion on properly using a ‘statistics’ ontology to do this will come later. Item Questions: Return BFS style set of items that are next in the build, given the set of items the user has and filtered by the gold available so that only affordable items are shown. We use a java program to generate these queries. Anders
8
Simple SPARQL Team Query
Question: “What role is the champion Azir when the rest of the team is made up of the champions Garen, Jinx, Nidalee, and Thresh?” Answer: “Azir should be a Mage.” Parts of this query relating to extracting a champion's role have changed since last week, after the addition of the statistics class. Will change again before final submission to more fully utilize the new statistical paradigm. Anders
9
Simple SPARQL Item Query
Question: “What items should the plugin recommend the user build if they only have Doran’s Blade, Warding Totem, and 100 gold available?” Answer: “The plugin should recommend the user build ‘Health Potion 2’ and ‘Health Potion’ with the gold the user would require to buy these items.” Anders
10
SPARQL Item Query Question: “What items (from the build the ontology selected) should the plugin present to the user (playing the champion Jinx) when he/she opens the shop for the first time that game with 550 gold?” Answer: “The items ‘Doran’s Blade,’ ‘Health Potion,’ ‘Health Potion,’ ‘Warding Totem’ should be displayed. We use the Java program to build us this query and filter any duplicate results from the query result set. Anders
11
Individuals Ontology Structure: Team Instance
Hannah
12
Individuals Ontology Structure: Champion Instance
Hannah
13
Individuals Ontology Structure: Item Tree Instances
Hannah
14
Considerations in Modeling Differently
Java Programs Using Apache Jena, we can load in ‘.ttl’ ontology files, construct queries from a template, and run those queries using the built in reasoner (whose results mirror those of Protege). The challenge in using a Java-based approach is ensuring that the queries are actually doing the ‘heavy lifting.’ Statistical measures for items and champion roles (discussed later). Anders
15
The Java Query Template
There are 4 elements of our item queries that are taken as inputs and dynamically generate lines of the result query: Gold avaliable: Filter all items we select in the query by affordability. Inventory Space: Only show as many items as a user has space for in their inventory. Root items: Use all owned items as points to look for next items in the build (children of owned items). Preclude owned items: Filter results by not displaying items already present in the user's inventory. Anders
16
Remaining Modeling Issues
STATISTICS Challenges with picking a set of items that represent the build in competency question 5 revolve around using a non-trivial ‘statistics’ ontology. This also affects how we handle champion role selection. We need to restructure our ontology to properly incorporate this new ontology. Java code needs some cleanup Minor computational issues with properly filtering items by gold cost in some unique circumstances. Anders
17
OOPS! Output After resubmitting our updated ontology to OOPS!, nothing needed to be changed All cases deal with imported ontologies or are irrelevant Hannah
18
OOPS! Output Considerations
Problems with OOPS! Output: Many of the problems had to do with the imported ontologies, which we didn’t care about fixing This cluttered up the output and made it hard to find our own IRIs Their importance factors seemed inaccurate Unconnected ontology elements, which seemed important to us, were minor Equivalent properties not being declared, which was not important, was important Possible additional features to OOPS!: Check for specific annotations (such as rdfs:label or dcterms:source) List IRIs alphabetically Hannah
19
Maintenance Policies Website link: lved
20
Next Steps Clean up java program to fully handle add edge cases and produce queries that answer all item related competency questions. Thanks to Elisa, we have now imported the Statistical ontology we wish to use and have restructured the ontology to make use of it. Now we need to design SPARQL queries to take advantage of it. Anders
21
Questions?
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.