Skip to content

Latest commit

 

History

37 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 

Repository files navigation

GeoCatch-Prolog

Preview

Java Prolog

Overview

GeoCatch-Prolog is an interactive geography learning platform designed to teach and assess knowledge about Brazil through a combination of rule-based reasoning and educational gameplay.

Built with Java and Prolog, the application leverages knowledge representation and logical inference to deliver dynamic learning experiences, allowing users to explore geographic concepts, discover facts, and test their understanding through quizzes and challenges.

The project integrates Java with Prolog using the JPL (Java-Prolog Library), enabling seamless communication between the user interface and the underlying knowledge base.

Documentation

Detailed project documentation is available at:

https://github.com/YanMatheus/IA-TP1-GeoCatch/blob/master/GeoCatch/Documentação.pdf

Topics Covered

  • State Capitals
  • Federative Units
  • International Borders
  • Geographic Extremes
  • Territorial Area
  • Coastal States
  • Population Data
  • Geographic Regions
  • State Curiosities and Facts

Extending the Knowledge Base

GeoCatch-Prolog was designed with extensibility in mind, making it easy to add new educational topics and datasets.

Creating a New Topic

Create a new Prolog file containing the facts and rules for the desired topic.

Example:

newtopic.pl

Register the new topic inside the Functions class:

public class Functions {
    ArrayList<String> functionsname = new ArrayList<String>();

    TreeMap<String,String> DBCapital;
    TreeMap<String,String> DBFu;
    TreeMap<String,String> DBPopulation;
    TreeMap<String,String> DBCountryBorder;
    TreeMap<String,String> DBFrontier;
    TreeMap<String,String> DBRegion;
    TreeMap<String,String> DBArea;
    TreeMap<String,String> DBCoastalState;
    TreeMap<String,String> DBCuriosity;
    TreeMap<String,String> DBNewTopic;
}

Initialize the topic in the constructor:

this.DBNewTopic = new TreeMap<>();
functionsname.add("newtopic");

Accessing a Topic

FunctionsObject.getDBNewTopic().get(key);

Interactive Maps

Explore geographic information through interactive maps and visual learning experiences.

Maps Demo

Quiz System

Test acquired knowledge through a quiz engine powered by the project's knowledge base.

Quiz Demo

Achievement System

Users are rewarded based on performance through a progression and ranking system.

Achievement Ranks

Application Demonstration

Application Demo

Technologies

  • Java
  • Prolog
  • JPL (Java-Prolog Library)
  • Knowledge-Based Systems
  • Rule-Based Reasoning
  • Educational Software Design

About

An interactive geography learning platform built with Java and Prolog, leveraging rule-based reasoning, knowledge representation, and gamified learning experiences.

Topics

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages