Ant Colonization Optimisation Algorithm for knowledge-based Learning


Jump to: navigation, search

Ant Colonization Optimisation Algorithm for knowledge-based Learning

by Robin Garen Aaberg
Supervisor(s) Josef Noll, Kristin Ran Choi Hinna
Due date 2016/08/01
Status Finished
Problem description: This thesis will investigate possibilities for deducing good learning paths to subjects by applying the Ant Colony Optimisation algorithm to a dynamic knowledge graph populated asynchronously by cooperative human learners. Today knowledge about online learning resources are not shared systematically. A framework for collecting and sharing online learning resources will be developed using semantic web technology and used by students at Bergen University College.
Methods and Tools: The tools and methods in this thesis are based on
  • A set of scenario, describing the challenges
  • A list of requirements being extracted from the scenarios
  • A description and evaluation of technologies and tools being candidates for solutions
  • A functional architecture/description of the envisaged system
  • An implementation of the core concepts
  • A demonstration of the solution
  • An evaluation of the solution, including a critical review of the descisions taken earlier
  • Conclusions
  • References
Time schedule The envisaged time schedule (for a long thesis/60 ECTS) is:
T0 0 starting month, T0+m denotes the month where the contribution to a certain chapter shalle be finalized
T0+2 months: create an initial page describing the scenario
T0+3: Provide a list of technologies which you think are necessary for the thesis
T0+4: Establish the table of content (TOC) of the envisaged thesis. Each section shall contain 3-10 keywords describing the content of that section
T0+7: Provide a draft of section 2 (scenario) and 3 (technologies)
T0+10: Establish a draft on what to implement/architecture
T0+11: Set-up an implementation, testing and evaluation plan
T0+15: Evaluate your solution based on a set of parameters, keep in mind there is no such thing as a free lunch
T0+17: Deliver the thesis
Pre-Knowledge This thesis includes a reasonable amount of programming. The envisaged thesis is based on radio communications, thus expects the user to have followed at least two radio-related courses
Approved Approved by Mari Helén Varøy
Keywords Semantic Web, Education

this page was created by Special:FormEdit/Thesis, and can be edited by Special:FormEdit/Thesis/Ant Colonization Optimisation Algorithm for knowledge-based Learning

Introduction to the Thesis

Today the learner is using online learning resources frequently. Yet the knowledge about such resources seems to be isolated within the individual and not shared. Sigma is an open source project aiming to create a framework for collaboratively collecting and sharing online learning resources. To organise them in knowledge maps, and to find good learning paths for a given subject and learning context. Currently it has only one developer, the author of this text.

The act of book-marking a online learning resource signifies importance and relevance to the learning context. A heuristic discovery has been made. Now if this knowledge where to be collected in a systematic way and to be part of a structured graph three things are provided for.

1. To retrieve the learning resource on basis of its context.
2. To associate the learning resource with subjects.
3. To use this structured information as input for suggesting similar learning resources to others with a similar learning context.

And the main interest point will then be to see if it is possible to deduce good learning paths through using the Ant Colony Optimisation algorithm.


  • Interviews will be held with students at HiB to gather data on how they are learning [online] within the scope of their course curriculum today. This will help form a basis for the user interface requirements necessary for the framework.
  • A theoretical model will be developed based on the Dynamic Content Manager[1] and formalised as an ontology.
  • An iterative implementation of the framework will be made. Starting from analogue experiments using pen and papers in supervised sessions with students. Then introducing digital assisting data accumulation tools for performing similar experiments but at a larger scale.
    • Focus on a specific example


  • Need


The framework will be in three major parts. A website, a browser plugin and a core module. Python and flask for the web front-end. Exposing both a human UI and a REST API. The latter is used by the browser plugin through AJAX calls which is introducing functionality to the browser for book-marking resources into knowledge maps[DCM]. The core module will store the resources and learning steps undertaken in a triples store using pythons rdflib. In here the ACO will be implemented for reasoning on the graph.


  • what is focus of the implementation work
  • what you want to achieve
  • which are the parameters you would like to evaluate


[1] Dynamic Content Manager
[2] An Ant inspired algorithm for solving suggestion-solving Problem
[3]SARASUA, CRISTINA Crowdsourcing and the Semantic Web: A Research Manifesto

This page provides hints on what to include in your master thesis. Please adjust and create the TOC asap


Title page, abstract, ...

1. Introduction, containing: short intro into the area, what is happening
1.1 Motivation, containing: what triggered me to write about what I'm writing about
1.2 Methods, containing: which methods are you using, how do you apply them
2. Scenario, optional chapter for explaining some use cases
2.1 user scenario, (bad name, needs something bedre)
2.2 Requirements/Technological challenges
3. State-of-the art/Analysis of technology, structure your content after hardware/SW (or other domains). Describe which technologies might be used to answer the challenges, and how they can answer the challenges
3.1 technology A
3.2 technology B
4. Implementation
4.1 Architecture, functionality
5. Evaluation
6. Conclusions


Red line

Your thesis should have a "red line", which is visible throughout the whole thesis. This means you should mention in the beginning of each chapter how the chapter contributes to the "goals of the thesis".

Use of scientific methods

A thesis follows a standard method:

  • describe the problem (problemstilling)
  • extract the challenges. These challenges should be measurable, e.g. method is too slow to be useful to voice handover.
  • Analyse technology with respect to challenges. Don't write & repeat "everything" from a certain technology, concentrate on those parts (e.g. protocols) which are of importance for your problem


  • Wikipedia is good to use to get an overview on what is happening. But there is not scientific verification of Wikipedia, thus you should use wikipedia only in the introduction of a chapter (if you use text from wikipedia). Use scientific literature for your thesis.
  • Scientific library is "at your hand", you can get there directly from UiO: [[How to get access to IEEE, Springer and other scientific literature -> Unik/UiOLibrary]]
  • I suggest that references to web pages, e.g. OASIS, W3C standards, are given in a footnote. Only if you find white papers or other .pdf documents on a web page then you refer to them in the reference section.

Evaluation of own work

Perform an evaluation of your own work. Revisit the challenges and discuss in how you fulfilled them. Provide alternative solution and discuss what should be done (or what could have been done).