Send in your ideas. Deadline June 1, 2024

Last update: 2005-05-20

End: 2003-01

AHA! Adaptive Hypermedia for All, project proposal

transparent adaptive functionality for web servers

Prof. dr. P.M.E. De Bra


The purpose of the AHA project is to define, study and implement a facility for extending Web-servers with transparent adaptivity functionality. A Web-server is extended with a (servlet) module that registers users automatically, maintains a detailed user profile and adapts the delivered information and the link structure, based on that user profile. This server-side extension is generic, i.e. application independent, and open, meaning that the source of the information may itself be external to the server running the adaptive engine.

More concretely the AHA project consists of two phases of one year each, with two people working in parallel. The funding of the second year shall depend on the outcome of the first year. The goals (research and development) of the two phases are:

Phase 1:
Design and development of a generic, open, adaptive engine, building on the current AHA prototype (for more information see The extensions include the ability to perform adaptation on documents from an external source, the ability to handle (and link to) composite objects, and better authoring support.
Phase 2:
Extending the design and implementation to allow richer user-models (with arbitrary attributes and value-domains), while maintaining desirable properties such as termination and confluence. A second extension will be the ability to define page constructors, i.e. ways to dynamically construct pages out of sets of information fragments. The authoring environment will also be extended to include support for these richer user models and page constructors.

The research results will be published in national and international conferences and journals. The software will be published on Internet and distributed as open source, using the GNU licensing scheme. After completion of the first phase we shall start actively promoting the use of AHA for applications in education, electronic commerce and corporate websites.

Background and History

Adaptive hypermedia is a recent research and development area [Brusilovsky, 1996]. It bundles research efforts in the area of user modeling, adaptive systems and hypermedia. While the first adaptive hypermedia systems (including our own first development [Van Ginderen, 1990]) were not Web-based, most of the current generation adaptive hypermedia systems do employ World Wide Web technology. Two noteworthy systems are Interbook [Brusilovsky et al., 1996] and AHA [De Bra et al, 1998]. The former is developed specifically for electronic textbooks and learning environments. The latter also started out as an educational system [Calvi et al, 1997]. A first step has been taken to converting AHA into a general-purpose adaptive hypermedia system, by no longer enforcing a "monotonely increasing knowledge" model, which is typical for educational applications. The AHA project continues this process towards a more widely usable adaptive hypermedia system, by investigating several extensions such as the use of composite objects, external information sources, richer user-models, and flexible page constructors. A lot of effort will go into the development of authoring support, to ensure the usability of AHA for creating adaptive Web-based applications. Some theoretical research is also needed to investigate how the planned extensions can be realized without sacrificing desirable properties of the adaptive engine, such as termination and confluence.

Different experimental versions, dating back to 1996, have led to the AHA system in its current form:

  1. In the first version of AHA the author could specify conditions (in terms of pages that were previously read by the user) for hypertext links to become available to the user. Thus, users were prevented from jumping to pages for which they were lacking some prerequisite knowledge (according to the author's definition). AHA was implemented using CGI-scripts (programmed in C). The user model consisted of a set of "concepts", with for each concept a Boolean "knowledge-value".
  2. The second version of AHA added the conditional inclusion of pieces of content. Thus, based on the foreknowledge of the user (i.e. on the set of pages the user has read) the system could include additional explanations and examples or opt to omit them. Conditional fragments were indicated using structured HTML comments (simulating "if" tags).
  3. The third version of AHA made use of cascading stylesheets to allow undesirable links to be hidden but still active, instead of hidden and disabled. It also allowed users to change color preferences so that undesirable links could be made visible and presented in another color than that of desirable links. This version was later converted from C to Java, and from using CGI-scripts to using Java Servlets.
  4. The fourth and current version of AHA has a user-model that consists of a set of concepts, with for each concept an integer "knowledge-value" that must be within the range [0..100]. Each page automatically becomes a concept, but there may be other (e.g. larger composite) concepts as well. When accessing a page, knowledge of some concepts may be increased as well as decreased. It is this deviation from the traditional learning metaphor, where knowledge only increases, that enables the first non-educational applications of the AHA system. ("Concepts" can be used for storing any type of information about the user and not only knowledge.)

Most adaptive hypermedia systems target a very specific type of application. This has a profound influence on the user models they support and also on the layout and presentation of the pages. Interbook for instance has a fixed layout consisting of a frame with a partial table of contents, a short menu, a list of prerequisite concepts, a list of outcome concepts and finally a frame with the page the user wants to read. Interbook also supports only monotonely increasing user-knowledge. The AHA system on the other hand does not enforce (or supply) a specific layout and allows user-knowledge to increase and decrease. The AHA project will investigate and realize extensions to the AHA system to turn it into a truly versatile general-purpose adaptive hypermedia engine.

Characteristics of a General-Purpose Adaptive Hypermedia Engine

In an NWO-sponsored research project a reference model for adaptive hypermedia is being defined and studied [De Bra et al., 1999]. The aim of the reference model is to provide a theoretical framework for describing and comparing the architecture and features of many different adaptive hypermedia systems. Because the reference model abstracts from application areas it provides valuable input for the design process of a general-purpose adaptive hypermedia engine. Some key characteristics are given below. We also indicate the current situation in the AHA system, and the planned features for the future, to be realized in the AHA project.

  1. Domain model.
    • Rich hypermedia platforms support the creation of composite entities. For Web-based applications this means that it must be possible to create information objects that consist of more than one page. Also, it must be possible to define links to such composite objects. The system must translate such links into links to one or more pages because the platform can only display pages. We call this "translator" the page selector. Each page can be composed of small fragments. The definition of the page then includes a page constructor that determines how the fragments are combined to form a page. When reading a page the user gains knowledge, not only about that page but also about composite objects to which the page belongs.
      The AHA system currently does not support composite entities directly but it allows knowledge to be propagated from pages to "other" concepts. Linking to composite concepts is not yet possible. In the first phase of the AHA project support for a concept hierarchy and for page selectors will be added. We are planning the inclusion of a (limited) set of page selectors, but not (yet) the inclusion of a tool that would let authors create their own page selectors.
      The AHA system currently does not support the creation of page constructors. It has one built-in constructor: the "sequence" constructor, for building a page out of a linear sequence of fragments. In the second phase of the AHA project more page constructors will be added to enable features such as sorting based on relevance ranking. However, we are currently not planning the inclusion of a tool that would let authors create their own page constructors.
    • In a hypermedia application objects are connected through relationships. In the AHAM model we call these concept relationships because all information objects are considered to be concepts. Typical concept relationships are hypertext links, prerequisite relationships and inhibitor relationships. A truly versatile adaptive system should let authors define their own relationship types.
      The AHA system currently offers hypertext links only between pages (not between composite concepts) and it supports two peculiar types of relationships: the generates relationships and the requirement relationships. The former is used to define how "knowledge" is propagated between concepts. (Some ad-hoc constraints are applied to guarantee that this propagation always terminates.) The latter is used to define various types of relationships that require the presence or absence of knowledge of some concepts in order to determine the "desirability" of another concept.
      In the AHA project three extensions are planned: 1) the extension of hypertext links to include links from and to composite objects (part of phase one), 2) the ability to control the propagation of "knowledge" in a more flexible way than in the current AHA system (part of phase one, but continued in phase two), and 3) the ability to define concept relationship types and their translation into requirement relationships (part of phase two). Also, in phase two we will investigate the possibility to assign more than one attribute to a concept, and use more attributes in concept relationships. (Currently only a "knowledge" attribute is used.)
  2. User model.
    • For each concept in the domain model a set of attribute/value pairs is stored in the user model. Each time the user visits a page, some attribute values for some concepts will change. Different attributes may exist for different concepts. For a "color preference" for instance the attributes and value domain will be different than for a page which can be "read", and "known".
      The current AHA system offers some predefined user-model concepts such as login id, password, institute, department and link color preferences, and for each domain model concept it offers a single attribute knowledge with as value domain the integers between 0 and 100.
      In the AHA project we will first investigate the ability to use the predefined attributes as well as the knowledge attribute. In the second phase we will add the ability to define several attributes per concept (each having different value domains).
    • Another typical part of the user model is the browsing history. Although the information on whether pages have been read can be viewed as having a read attribute for each page concept, the browsing history is typically kept separate.
      In the current AHA system every page access is registered, with the time of access and also the time when the user stops "reading" the page. Other activities such as taking multiple-choice tests are logged as well. Although "access" is used in AHA, the actual reading time has no influence on the adaptation. In the AHA project we will investigate the use of the reading time in decisions about adaptation of links and content. (This is planned for the second phase, but depending on the development progress it may still be included in the first phase.)
  3. Adaptation model.
    • The adaptation model consists of a set of rules or triggers that define how user actions result in updates to the user model and in the presentation of adapted pages. When a user accesses a page in the AHA system for instance, a rule will cause the knowledge of that page to be increased. (By how much may depend on whether the page was considered "desirable" or not.) The access also triggers some other knowledge updates through generate relationships. The desirability of fragments within the accessed page and the desirability of other pages is determined by evaluating the requirement relationships. This desirability is used to conditionally include fragments, and to present links to pages in a color that depends on the desirability of these pages (and on the user's color preferences). In the current AHA system all adaptation rules are fixed.
      In the AHA project we will design and study a simple rule language to enable authors to create their own rules to guide the adaptation and user model updates. This study will concentrate on the aspects performance, determinism, and termination. In the second phase of the project we will also include a richer set of link adaptation features (AHA currently offers just three link colors) and a richer set of page constructors (AHA currently only offers conditional inclusion of fragments, but no sorting and no de-emphasizing of content). The new rule language will also take into account the existence of more than one attribute in the user model, and the use of different value domains.

Project plan and deliverables

The AHA project consists of two phases, each involving a one year effort by two people (a researcher and a programmer).

Year 1

During the first year the following extensions to the AHA system will be realized;

  • The current AHA adaptive hypermedia engine will first be modified and extended so that it can provide adaptation to documents from different sources (rather than just from a local file system). This extension will enable AHA to be used in Web portals as well as Web sites.
  • In order to reduce the burden for end-users to use an AHA application the current (forms-based) registration procedure will be complemented by an automatic procedure with randomly generated id's and the cookie mechanism.
  • All the data structures used by AHA are currently stored as text or XML files. In order to ensure scalability and also to simplify report-generation we will move these data to a database system (mySQL or some other freely available database system for Windows and Unix).
  • Two user-interfaces will be built do deal with authoring concept structures and concept relationships: the first will allow authors to define a concept relationship type (crt) and the translation of instances of that type into the generates and requirement relationships that AHA supports directly. The second interface will allow authors to create instances of a crt and get an overview of the created instances through a graphical presentation. Updates will be possible using a graph editor.
  • The AHA system currently does not have a true concept hierarchy. A structure with pages, concepts and higher level concepts can only be simulated through the generates relationships. AHA will be extended with an explicit concept hierarchy and a graphical authoring interface for creating it. It will be made possible to create (hyper)links to composite concepts. This requires the definition of page selectors to translate composite concepts that are a link destination to an actual web-page that will be shown to the end-user.
  • The "knowledge" propagation in AHA has been restricted to ensure deterministic behavior. We will investigate constraints on user-model update propagation (through the generates relationships) to achieve certain properties, like confluence, guaranteed termination, decidability of termination, termination within a fixed number of steps, etc.

The deliverables of the first year include software, available on Internet, and scientific publication(s) at international conference(s) and/or journal(s). The software will consist of both the authoring interfaces needed to create concept hierarchies and relationship types and the server-side applications that form the open adaptive engine. We will stimulate the use of AHA for educational, e-commerce and other applications but the "real" PR activity will only start in year 2, when a sufficiently usable product is available. The PR activities of the first phase will be limited to papers, posters and demonstrations at hypermedia and Web-related conferences (such as WWW10 in Hongkong, WebNet in Orlando, Florida and HT01 in Aarhus, Denmark).

Year 2

During the second year a number of extensions are planned that make AHA into a more versatile adaptive hypermedia platform. Meanwhile the use of AHA will be promoted through more demonstrations at conferences and trough contacts with and help for industry in employing AHA to make corporate websites adaptive. Other PR activities will be started as deemed necessary. (We will hire a part-time PR specialist to aid in the PR campaign.)

  • The user model in the current AHA system (and also the outcome of phase one) associates a single numeric attribute with each concept, and with values between 0 and 100. In phase 2 we will allow authors to associate several (user-defined) attributes with each concept. The value domain for these attributes can be integer, real, string or enumerated. The generates and requirement rules will be extended to include the ability to set attribute values of these different domains, and to include expressions using values of these domains in the requirements.
  • Because of a richer rule system we also need to investigate the termination and confluence properties in the case of more attributes with different value domains.
  • In addition to the single "sequence" constructor for building webpages out of fragments we will include new page constructors, including constructors that perform sorting (useful for search results) and constructors that create presentation structures with frames (or multiple sub-pages).
  • In the current AHA system access- and reading time are registered, but the adaptation can only be based on the list of pages that have been read, not on the actual access- and reading time. The adaptation engine and rule system will be extended with the possibility to perform adaptation based on the reading order of pages and based on perceived reading time.
  • The authoring interface, developed during the first year, will be extended to include support for using different attributes and value domains in the user model. The new authoring interface will also enable authors to configure the page constructors to dynamically build pages from fragments. The authoring interface for pages will use configurable general-purpose XML authoring software that we expect to be freely available by the start of the second year of the AHA project.

The deliverables of the second year include software, distributed through Internet, scientific papers, to be presented and demonstrated at hypermedia and Web-related conferences, and also some demonstrator applications in the area of education, electronic commerce and corporate websites, and most likely also an information retrieval application (to demonstrate sorting through relevance ranking). During the second year we will intensify the PR activities. This first of all means giving demonstrations at more conferences than in the first year. But apart from typical AHA promotion through conference demos and industrial contacts we will employ a part-time PR specialist to prepare PR material and perform limited targeted (regular and electronic) mailing of information and software.

Staff and budget

The AHA project requires one research assistant ("toegevoegd onderzoeker") and one programmer ("wetenschappelijk programmeur" of "systeemdeskundige"), both for a period of two years. In the second year a PR person will be employed for one day a week (0.2fte). These people will be employed by the Eindhoven University of Technology (TUE). NLnet will subsidize the salary of the project employees (plus overhead for "sociale lasten"), as well as equipment and travel cost for the project. The two employees each need one (portable) workstation. TUE will provide central server and network facilities, as well as office space for the project employees. The project will require 2 or 3 conference visits during the first year, estimated at 10 kfl per year, and about 5 or 6 conference visits during the second year. The project will be supervised by prof. dr. P.M.E. De Bra, dr. A. Aerts, dr. L. Calvi, dr. A. Cristea and dr. ir. G.J. Houben. TUE will provide and fund this supervision.

The project budget is:

year 1 year 2
research assistant fl. 85.017 fl. 89.268
programmer fl. 85.017 fl. 89.268
pr specialist (0.2) - fl. 17.853
computer equipment fl. 12.000 fl. 0
travel fl. 10.000 fl. 20.000
total fl. 192.034 fl. 216.389

(a 5% salary increase is expected for the second year)

NLnet and TUE will write up a contract that ensures that VAT (BTW) does not apply to this subsidy of Stichting NLnet. The contract will initially be for the first year only. Prof. dr. P. De Bra is responsible for providing progress reports at least 3 times per year. Stichting NLnet will initially agree to subsidize the first year of the AHA project. Based on the progress reports Stichting NLnet will decide on funding for the second year after receiving the second progress report, and 10 months into the project at the latest.

All publications of the AHA software (including software and scientific papers) will acknowledge the sponsorship of NLnet. The intellectual property rights of the software and publications remains with TUE, but the results will be made publicly available free of charge. (For the software this implies Open Source, using the GNU licensing scheme.)


[Brusilovsky, 1996]
Brusilovsky, P., "Methods and Techniques of Adaptive Hypermedia", User Modeling and User-Adapted Interaction, vol. 6, pp. 87-129, 1996.
(Reprinted in Adaptive Hypertext and Hypermedia, Kluwer Academic Publishers, pp. 1-43, 1998.)
[Brusilovsky et al., 1996]
Brusilovsky, P., E. Schwarz and T. Weber, "A tool for developing adaptive electronic textbooks on WWW", Proceedings of the WebNet'96 Conference, pp. 64-69, 1996.
[Calvi et al., 1997]
Calvi, L., P. De Bra, "Proficiency-Adapted Information Browsing and Filtering in Hypermedia Educational Systems", User Modeling and User-Adapted Interaction, vol. 7, pp. 257-277, 1997.
[De Bra et al, 1998]
De Bra, P., L. Calvi, "AHA! An Open Adaptive Hypermedia Architecture", The New Review of Hypermedia and Multimedia, vol. 4, pp. 115-139, 1998.
[De Bra et al, 1999]
De Bra, P., G.J. Houben, H. Wu, "AHAM: A Dexter-based Reference Model for Adaptive Hypermedia", Proceedings of the ACM Hypertext'99 Conference, Darmstadt, pp. 147-156, 1999.
[Van Ginderen, 1990]
Van Ginderen, B., "An Object-Oriented Hypertext System for Computer-Aided Learning", Masters Thesis, Eindhoven University of Technology, 1990.

Project AHA!

Navigate projects