Research

My research interests includes:


1. Machine Learning and Recommender Systems

2. Cloud Computing-based e-Learning and m-Learning Systems

3. Multimedia, Web-based and Advanced Learning Technologies

4. Artificial Intelligence and the Study of Functional Logic Languages

5. Natural Inspired Computation



1. Machine Learning and Recommender Systems


Recommender systems are powerful intelligent systems that are considered to be the solutions to the problems of information overload. They provide personalized lists of recommended items to users using some machine learning techniques.
Typically recommender systems provide personalized lists of recommended items to users using some data mining and machine learning techniques. Traditionally, the existing recommender systems used single rating techniques to estimate users' ratings on items. The most common techniques used in developing recommender systems are:

  • Collaborative filtering: It builds a model from a user's past behavior as well as similar decisions made by other users. This model is then used to predict items (or ratings for items) that the user may have an interest in.

  • Content-based: Unlike collaborative filtering that uses similarities over users to make predictions, the content-based technique utilizes a series of discrete characteristics of an item in order to recommend additional items with similar properties.

  • Knowledge-based: This technique did not require any ratings correlation or user profile to make predictions. This makes it very convenient to recommendation items that are not purchased regularly. Knowledge-based RSs use item attributes, user specifications, and domain knowledge to generate recommendations.

  • Hybrid-based: This technique combines two or more of the above mentioned techniques in different ways to make more accurate recommendation.

  • These traditional recommender systems are implemented based on single rating value to represent the degree to which users are interested in items. Although, it has been evidently working effectively in various applications across several domains, research has shown that their functionality is limited because the likeness of an item by users may depend on several characteristics of the items. A Multi- criteria recommendation is a new technique that uses ratings to various items' characteristics to make more efficient predictions. Nevertheless, despite the proven accuracy improvements of multi-criteria recommendation technique, research needs to be done continuously to establish an efficient way of modeling the criteria ratings. Therefore, our research proposed to use machine-learning algorithms to model multi-criteria recommendation problems using an aggregation function approach.



    2. Cloud Computing-based e-Learning and m-Learning Systems


    The challenges regarding to the exponential growth of e-Learning and m-learning systems (due to the growth rate of students, education contents, services that can be offered and resources made available) are: optimizing resource computation, storage and communication requirements, dealing with dynamic concurrency requests, etc. Such challenges highlight the necessity of the use of a platform that meets scalable demands and cost control. This environment is Cloud Computing. The Cloud Computing environment rises as a natural platform to provide support to e-learning and m-learning systems. 


    In my research I am interested in developing smart cloud-based e-learning and m-learning frameworks that utilize modern and advanced technologies such as: smart devices  (smartphones and tablets) capabilities, artificial intelligence techniques (such as facial recognition algorithms), and the power of the cloud.



    3. Multimedia, Web-based and Advanced Learning Technologies


    Applications of technology can provide course content with multimedia systems, active learning opportunities and instructional technology to facilitate the learning process at all levels. For example Multimedia is an exciting area that spans many disciplines within the learning process, it is a computer-based communication system that integrates and delivers a complete package of audio, video, animations, graphics and text to learners. Another example is the use of Internet. The Internet is a powerful means of communication. The World Wide Web is bringing rapid and radical change into all aspects of our lives. For learning, the Internet is making it possible for more individuals than ever to access knowledge and to learn in new and different ways. The Internet enables bringing learning to students instead of bringing students to learning. Web-based learning is currently a hot research and development area. Benefits of Web-based learning are clear at hand: learners from all over the world can enroll in learning activities, communicate with other learners or teachers, can discuss and control their learning progress. The modern university needs to extend lifelong learning opportunities to its students anytime and anyplace to be successful in the global educational marketplace. Online web-based learning is made possible by advancements in network infrastructure and development of video/voice/multimedia protocols for seamless transport of information. However, it is a challenging task to design an online learning environment that ensures, effective, accessible, and secure student interaction, especially in computer engineering courses involving high-tech content, such as in a networking laboratory environment, which extensively uses networking hardware and computer/simulation software tools. 


    In my research in this area, I am interested in developing active and collaborative web-based e-learning environments based on advanced technologies and artificial intelligence techniques. Such environments integrate multimedia effects, simulation software, hypertext presentations, animations and educational games. The twofold contribution goals of my research is a novel use of modern technology to improve learning and a longitudinal quasi-experimental evaluation of its use in context. 



    4. Artificial Intelligence and the Study of Functional Logic Languages


    Declarative languages such as functional languages and logic languages are important for artificial intelligence and its applications. In my research I am interested in the study of unifying functional languages and logic languages into a single paradigm. Functional languages based on reduction have several properties such as deterministic and lazy evaluation. They also allow higher order definitions. But they lack other useful properties such as partial data structures and logical variables. On contrary logic languages based on unification allow partial data structures and logical variables but lack deterministic and lazy evaluations as well as higher order definitions. From this point of view it seems natural to unify both languages into a single paradigm in the aim that we get a unified functional logic language with more expressive power than both functional and logic languages. In my research I am interested in developing a model for operational semantics for functional logic languages based on lazy conditional narrowing. In such model functional logic programs are represented by conditional rewriting systems. This enables such model to cover a larger class of problems. However such models may suffer from a huge search space when applied to find solutions for some problems. To overcome such problem, I am trying to create/apply natural inspired algorithms to develop an efficient operational semantics for functional logic languages or to improve search space in such models.



    5. Natural Inspired Computation


    Natural computation is the field of research that works with computational techniques inspired in part by nature and natural systems. The aim of such research is to develop new computational tools (in software or hardware) for solving complex, usually conventionally-hard problems. This often leads to the synthesis of natural patterns, behaviors and organisms, and may result in the design of novel computing systems that use natural media with which to compute. As its counterpart in natural systems, natural inspired computational models are expected to enjoy properties such as: flexibility, adaptability, robustness, and decentralized control. Among natural computing concepts that I consider in my research are:

    1. Computing inspired by nature: This makes use of nature as inspiration for the development of problem solving techniques. The main idea of this research is to develop computational tools (algorithms) by taking inspiration from nature for the solution of complex problems such as the huge search space in narrowing (as I mentioned above). To reduce/optimize the huge narrowing search space I am working on developing/applying some Ants Colony Optimization algorithms which are inspired by the optimized behavior of ants when they search for food in nature;

    2. The simulation and emulation of nature by means of computing: This is basically a synthetic process aimed at creating patterns, forms, behaviors, and organisms that (do not necessarily) resemble 'life-as-we-know-it'. Its products can be used to mimic various natural phenomena, thus increasing our understanding of nature and insights about computer models.