This project implements a multi-agent information retrieval system using the JADE framework. It features a GUI for user queries, ontology-based concept validation, and resource agents for searching both Wikipedia and a local AI knowledge database.
- Multi-Agent Architecture: Built with JADE agents for modularity and scalability.
- Ontology Agent: Validates and enriches search concepts using a simple ontology.
- Resource Agents:
- Wikipedia agent fetches summaries from Wikipedia.
- Database agent searches a local SQLite database of AI concepts.
- Broker Agent: Registers resource agents and routes search requests.
- Execution Agent: Coordinates query execution and result aggregation.
- GUI: User-friendly Swing interface for submitting queries and viewing results.
src/main/java/com/sma/recherche/agents/
— Agent implementations (Ontology, Broker, Execution, Resource, User)src/main/java/com/sma/recherche/messages/
— Message content utilitiessrc/main/java/com/sma/recherche/services/
— Wikipedia and database search servicessrc/main/java/com/sma/recherche/ui/
— Swing GUIsrc/main/java/com/sma/recherche/utils/
— Constants and database connectorsrc/main/java/com/sma/recherche/platform/
— Platform manager for JADEsrc/main/resources/ai_data.db
— SQLite database for AI concepts (auto-created if missing)lib/jade.jar
— JADE library (local)pom.xml
— Maven build file
- Java 8 or higher (project uses Java 16 in Maven config)
- Maven
- Internet connection (for Wikipedia queries)
-
Clone the repository
git clone https://github.com/SecurDrgorP/multi-agent-info-retrieval.git cd multi-agent-info-retrieval
-
Integrate jade.jar as a module in your project
The project uses the JADE framework which is included as a local JAR file.# If using Maven directly: mvn install:install-file -Dfile=lib/jade.jar -DgroupId=com.tilab.jade -DartifactId=jade -Dversion=4.5.0 -Dpackaging=jar
Alternatively, if using an IDE:
- IntelliJ IDEA: Right-click on
lib/jade.jar
→ "Add as Library..." - Eclipse: Right-click on project → Build Path → Configure Build Path → Libraries → Add JARs → Select
lib/jade.jar
- VS Code: Update
.classpath
file to include the JAR or use the Java Project explorer to add referenced libraries
- IntelliJ IDEA: Right-click on
-
Build the project
mvn clean package
-
Run the application
java -jar target/multi-agent-info-retrieval-1.0-SNAPSHOT.jar
This will launch the main class
com.sma.recherche.Main
and start all agents. -
Run the GUI
Alternatively, you can run the GUI directly:java -cp target/multi-agent-info-retrieval-1.0-SNAPSHOT.jar com.sma.recherche.ui.SearchSystemGUI
- Enter a search query in the GUI.
- Select the source: "All Sources", "Web", or "Database".
- Click "Search" to submit the query.
- Results will be displayed and formatted by source.
AgentOntologie
: Validates and enriches concepts.AgentCourtier
: Registers resource agents and routes queries.AgentExecution
: Coordinates query execution and aggregates results.AgentRessource
: Handles Wikipedia and database searches.AgentUtilisateur
: Represents the user and communicates with the GUI.
- The SQLite database is auto-initialized with AI concepts on first run.
- Wikipedia API endpoint is configurable in
WikipediaSearchService
.
This project is for educational purposes.
See also:
- src/main/java/com/sma/recherche/Main.java — Main entry point
- src/main/java/com/sma/recherche/ui/SearchSystemGUI.java — GUI entry point