Diplomarbeit, 2007
133 Seiten, Note: 1,0
Introduction
Motivation
Aim and Scope
Related Work
I Modelling of the Problem
1 Description of the Problem
1.1 Personalised Content
1.2 Generating Personalised Content
1.3 Constraints to consider
2 Constraints
2.1 Introduction
2.2 Constraint Satisfaction Problems
2.3 Solution Process
2.3.1 Arc Consistency
2.4 Constrained Optimisation Problems
2.4.1 Extended Constrained Optimisation Problems
2.5 Soft Constraints
2.6 Real-time Constraint Satisfaction
2.6.1 Analysis of the Function ψ
3 Constraint Problem Model
3.1 Slots and Campaigns
3.2 Values of Campaigns
3.3 Values of Slots
3.3.1 Example
3.4 Relaxation of Constraints
3.5 Duplicate Content
3.5.1 Example
3.6 Forced Promotions
3.6.1 Example
3.7 Real-time Problem Solution
II Prototypical Implementation
4 Overview
4.1 System Architecture
4.1.1 Distributed Approach
4.1.2 Web Interface
4.1.3 Web Service
4.2 Implementation Language
4.2.1 Documentation
4.2.2 Testing
4.2.3 Packaging
4.3 Version Control System
4.4 Test Machine Setup
5 Constraint Problem Solver Library
5.1 Overview of existing Constraint Problem Solvers
5.2 Architecture
5.2.1 Domain
5.2.2 Variable
5.2.3 AbstractConstraint
5.2.4 BinaryConstraint
5.2.5 BinaryRelation
5.2.6 AllDifferentConstraint
5.2.7 TupleConstraint
5.2.8 OneOfEqualsConstraint
5.2.9 ConstraintList
5.2.10 Problem
5.2.11 Solution
5.2.12 ConstraintSolver
5.2.13 Ruby Extensions
5.3 Constraint Problem Solution
5.3.1 Solution Process
5.3.2 Modifications for Soft Constraints
5.3.3 Constraint Satisfaction with Time Limit
5.3.4 Variable and Value Ordering
5.4 Constraint Revision
5.4.1 Binary Constraints
5.4.2 All Different Constraints
5.4.3 Tuple Constraints
5.4.4 One-of-equals Constraint
5.5 Tests and Package Management
5.6 Limitations
6 Constraint Problem Solver SOAP Wrapper
6.1 Architecture
6.1.1 Library Script
6.1.2 WSDL
6.1.3 Control Scripts
6.2 Tests and Package Management
6.3 Limitations
6.4 Use of the Interface
7 Web User Interface
7.1 Architecture
7.1.1 Data Model
7.1.2 Controller
7.1.3 View
7.2 Interface to Amazon.com
7.3 Tests and Package Management
7.4 Full Example
8 Summary
8.1 Future Work
8.1.1 Constraint Model
8.1.2 Constraint Solver
8.2 Conclusion
III Appendix
A Performance Evaluation of Consistency Algorithms
A.1 Binary Constraints
A.1.1 Methodology
A.1.2 Results
A.2 All Different Constraints
A.2.1 Methodology
A.2.2 Results
A.3 The Difference All Different makes
B Effectiveness of Real-time Constraint Satisfaction
B.1 Methodology
B.2 Results
B.2.1 Time Limit after first Solution
B.2.2 Time Limit before first Solution
C Installation Instructions and Software Versions
C.1 General
C.2 Constraint Problem Solver Library
C.3 Constraint Problem Solver SOAP Wrapper
C.4 Web User Interface
The primary research objective of this thesis is to demonstrate the feasibility of using constraint programming to generate personalised websites dynamically. The work addresses the increasing complexity of website design by modelling the rendering process as a constraint satisfaction and optimisation problem, ensuring that tailored content is delivered to customers efficiently within real-time constraints.
1.3. Constraints to consider
The most important constraints are summarised below. Depending on the specific retailer and web site there might be many more to consider. It is not meant to be an exhaustive and accurate model.
no duplicate content Any content shown on a page must be free of duplicates. Not only does this create a bad impression with the customer, but also uses space which might instead be used to promote different products and increase the chances of showing something the user is interested in.
no bad recommendations Bad recommendations are promotions for products the customer has already bought or is not interested in. The chances of selling the promoted item are very small, and maybe the customer will be annoyed and lose interest in the page.
maximisation of page value The value of a page is determined by the content shown and how it is shown. Personalised content is more valuable than non-personalised content. Showing something valuable on top of the page is better than showing it at the bottom, such that the customer has to scroll down to notice it. Further difficulties arise because the value of content is not known or not known exactly. Different customers prefer different types of content and therefore the content does not have an intrinsic value.
limited time The page must be presented to the customer before he loses interest – the time which can be spent generating it is limited. This does not only include the time to compute what to show, but also the time the page fragments need to render themselves.
available data Depending on the data available, the content which can be generated is different. The value of the page has to be maximised regardless of this. There always has to be something to display, even if there is no data available at all.
1. Description of the Problem: This chapter introduces the challenges of website personalisation and the necessity for dynamic content generation, defining key constraints for online retail environments.
2. Constraints: This section establishes the theoretical foundations of constraint satisfaction and optimisation problems, including formal definitions and algorithms for consistency.
3. Constraint Problem Model: This chapter translates the identified web-rendering requirements into a formal constraint model, introducing concepts like slot-campaign associations and duplicate content prevention.
4. Overview: This chapter details the architectural design of the prototypical implementation, focusing on the integration of the solver, the SOAP wrapper, and the web interface.
5. Constraint Problem Solver Library: This chapter explains the internal logic and object-oriented implementation of the custom constraint solver library in Ruby.
6. Constraint Problem Solver SOAP Wrapper: This chapter describes the technical implementation of the SOAP-based web service that exposes the solver's functionality to external clients.
7. Web User Interface: This chapter introduces the front-end application built with the Camping framework, which demonstrates the end-to-end rendering of personalised website components.
8. Summary: This concluding chapter reviews the achievements of the thesis, discusses limitations, and suggests directions for future research in real-time constraint satisfaction.
Constraint Programming, Artificial Intelligence, E-Commerce, Website Personalisation, Constraint Satisfaction, Optimisation, Dynamic Web Rendering, SOAP, Ruby, Real-time Systems, Consistency Algorithms, Constraint Modelling, User Interface, Web Services, Software Architecture
The research focuses on applying Artificial Intelligence techniques, specifically constraint programming, to solve the complex problem of generating personalised content for online retailer websites in real-time.
The work addresses challenges such as ensuring content variety (no duplicates), improving recommendation relevance, maximising the business value of displayed content, and adhering to strict real-time rendering constraints.
The goal is to provide a proof-of-concept and prototypical implementation of a system capable of assembling web content dynamically based on specific constraints relevant to each individual user session.
The author developed a custom constraint solver library from scratch in Ruby, employing algorithms for constraint propagation, arc consistency, and soft constraints to handle optimisation tasks.
The body covers problem modelling, theoretical background of constraint satisfaction, implementation details of a dedicated solver library, development of a SOAP-based wrapper, and a web-based user interface for demonstration.
Key terms include Constraint Programming, E-Commerce, Personalisation, Optimisation, Real-time Satisfaction, and Web Service Architecture.
The performance is evaluated through extensive benchmarking in the appendix, comparing different consistency algorithms (like binary decomposition vs. hyper-arc consistency) across various problem sizes and types.
The system incorporates a "real-time constraint satisfaction" mechanism that drops constraints based on their priority and cost as the available computing time nears its limit, ensuring a result is always produced.
Der GRIN Verlag hat sich seit 1998 auf die Veröffentlichung akademischer eBooks und Bücher spezialisiert. Der GRIN Verlag steht damit als erstes Unternehmen für User Generated Quality Content. Die Verlagsseiten GRIN.com, Hausarbeiten.de und Diplomarbeiten24 bieten für Hochschullehrer, Absolventen und Studenten die ideale Plattform, wissenschaftliche Texte wie Hausarbeiten, Referate, Bachelorarbeiten, Masterarbeiten, Diplomarbeiten, Dissertationen und wissenschaftliche Aufsätze einem breiten Publikum zu präsentieren.
Kostenfreie Veröffentlichung: Hausarbeit, Bachelorarbeit, Diplomarbeit, Dissertation, Masterarbeit, Interpretation oder Referat jetzt veröffentlichen!

