Expert Systems with Applications 36 (2009) 5768–5774
Contents lists available at ScienceDirect
Expert Systems with Applications
journal homepage: www.elsevier.com/locate/eswa
A semantic complement to enhance electronic market
Sharmin Moosavi *, Mohammadali Nematbakhsh, Hadi Khosravi Farsani
Computer Engineering Department, University of Isfahan, Hezarjerib.st, Isfahan, Iran
a r t i c l e
i n f o
Keywords:
Complementary product
Ontology
Similarity
Recommender system
.
a b s t r a c t
Consumers prefer to purchase bundled and related products to use them together to perform a task or
satisfy a need. In this paper, we propose a complementary association for bundling products to enhance
promotions, recommendations and selling strategies in marketplaces such as combinatorial auction. We
propose an ontology based model and define a Need association to determine complement of product
classes. Using this type of association, we develop a mathematical model to relatively measure complementary degree of classes and the latest purchased products to recommend Top-N products. We experiment this approach with a recommender system utilizing complementary products. Experimental
results on the dataset of Building Equipment Company show superiority in terms of performance and
precision.
Ó 2008 Elsevier Ltd. All rights reserved.
1. Introduction
Today, most companies use their own critical data to extract
valuable information. The information of product associations
and their measurement degree play an important role to improve
selling strategy, investment, marketing, management policies and
product catalog (Khosravi Farsani & Nematbakhsh, 2007; Webb,
2003).
Association rule using data mining techniques shows the purchasing association that customers generate on their purchasing
behavior and determines the products that are usually accompany
each other in each purchase transaction. There have been several
reports about drawbacks to this type of association, mainly low
precision and performance (Webb, 2003).
Another type of product association is substitution that has
been given especial attention in the last few years. Substitution
is a kind of relation that represents the degree of similarity between items (Resnik, 1999). There have been several techniques
to the corresponding degree of similarity and are mostly based
on finding well-known properties of the items (Ganjifar, Abolhasani, et al., 2006; Knappe, 2005; Resnik, 1999).
Complement is another kind of association that has been defined in economics and has many applications (Economides &
Brian, 2006; Schmidtke, 2006). For example, Recommending a similar car or bicycle to a buyer of a Mercedes car is not very useful;
but recommending an especial media player or burgeler-protection is more useful. As another example, complement products
bring additional marketing power for a company. It allows vendor
lock-in as it increases the switching cost and when a seller decides
to raise the capacity of sale, he advertises the complementary
products.
Complements-in-consumption is a type of complement that we
define in this paper. It is described as a product that should be consumed with another and the customer’s satisfaction of consuming
both goods is greater than when they are consumed separately.
This means that, if items A and B are complementary, the more
an item is being consumed, the more B item will be consumed.
An example of complements-in-consumption is burger and hamburger buns. Because the two are usually used together, increasing
the volume of burger makes more hamburger buns to be sold. Car
and gasoline are another example of complementary items.
In this paper, we refer to complements-in-consumption as complementary attribute and we use ontology technique to determine
the complement products. We model product classes in OWL
ontology language and define an attribute called Need for each of
the determined classes. Our method uses this attribute to compute
the degree of complementary to one product. The remainder of the
paper is as follows: degree of complementary between two products will be presented in Section 2. Our suggested association will
be implemented in a new recommender system in Section 3. The
suggested recommender system will be compared by association
rule mining. Other usage of complementary measure will be presented in Section 4. Finally, Section 5 will be devoted to conclusions derived from this study.
2. Complementary procedure
* Corresponding author. Fax: +98 3117932670.
E-mail addresses:
[email protected] (S. Moosavi), nematbakhsh
@eng.ui.ac.ir (M. Nematbakhsh),
[email protected] (H.K. Farsani).
0957-4174/$ - see front matter Ó 2008 Elsevier Ltd. All rights reserved.
doi:10.1016/j.eswa.2008.06.137
In this paper, we suggest a procedure to find complementariness of products. The proposed procedure consists of three phases
5769
S. Moosavi et al. / Expert Systems with Applications 36 (2009) 5768–5774
as shown in Fig. 1. The procedure should be initiated by designing
product catalog of the electronic marketplace. Attributes of the
products and value of them have been determined in phase 2. In
phase 3, we determine complementary degree of each two pair
of classes. This degree is computed using ontology techniques as
you will see in the future sections.
Designing catalog of the marketplace is the initial phase of the
complementary procedure. This phase is very important from
two points, from both user and system points. Users can observe
their interesting products easily since products have been classified in the catalog and the system can easily manage its products
in the groups. Our complementary procedure uses the catalog to
determine complementary degree between products.
We suggest catalog UNSPSC (2001) structure for product classification. The classes and relationships between them have been
modeled by OWL Ontology tags. Each class of the catalog is represented by OWL:Class tag of corresponding ontology language. Classes of the products may be divided into several subclasses. This
property of the catalog has been implemented by OWL:Subclass
tag of this ontology language. Moreover, all of the classes have a
name attribute which represents name of the product class. A part
of the catalog which belongs to transportation system has been
shown in Fig. 2.
Classes of the catalog have a need property which is very important for our complementary procedure. This property exists in each
class and is being modeled using attribute definition of OWL ontology language. It may have several values which represent the name
of the other classes that are required when this product is being
consumed. For example, a car product requires gasoline when
the customer uses car. So, need property of a car will include gasoline product. As another example, consider to the pen and pencil.
When the customer uses pencil, he/she requires paper and eraser.
So, need property of pencil will include paper and eraser (Fig. 4).
Classification hierarchy is built using IS-A property of each
class. This property is being modeled using OWL subClass of tag.
When class X is sub-class of class Y, X inherits all of the properties
of Y. In other words, IS-A property contains the name of the super
class, and in our classification system it has only one value. For
example, IS-A property of car is Passenger motor vehicles.
From among the product attributes, Needs and IS-A are important. Products in our catalog have other properties, such as Consumption interval, Wordnet, UNSPC, ECL@SS. Consumption
interval is another attribute of each class of the product catalog.
1. Designing Product Catalog
2. Determining attributes of each
class in the catalog
3. Determining complementary of
two classes
WordNet
Needs
IS-A
Classi
ECL@SS
Con.Interval
UNSPSC
Fig. 3. Attributes of each class.
This property has a single time value that shows the maximum
time of consuming a product. WordNet attribute is used to distinguish purpose of the class. UNSPSC and ECL@SS are used for matching the classes of these classification system and standard
classification systems (Khosravi Farsani & Nematbakhsh, 2007).
Based on previous discussion, each class of the classification system has Needs, IS-A, Con.Interval, etc. properties (Fig. 3).
2.1. Determining complementary degree of two classes
If Needs property of class A compromise class B, these two classes have a high complementary degree. For example, complementary degree between pencil and eraser is very high since eraser
exists in the Needs property of the pencil.
If Needs property of class A do not compromise class B, our algorithm applies the above procedure with A and super class of B. It
means that our algorithm examines whether super class of B exists
in Needs property of A or not? This procedure is repeated again
while an ancestor of class B is found in Needs property of class A.
In each step of procedure implementation, the complementary degree between A and B is reduced.
Our algorithm uses IS-A Property of class B, if class B does not
exist in the need property of class A. Suppose, we want to compute
complementary degree between pencil and graph paper. As you
can see in Figs. 4 and 5), pencil requires writing paper, pencil
sharpener, and eraser. Graph paper is not a member of pencil
needs, but its super class exists in the pencil needs. Therefore,
graph paper is complementary of pencil indirectly.
More formally, the complementary products problem can be
formulated as follows: Let A.N is the set of all Needs of class A
and A.H is the super class of A. Com(A,B) is a complementary function that measures the complementary degree of item A rather
than item B. this function is defined as follows:
8
1
>
< k comðA; B:HÞ B R A:N
comðA; BÞ ¼ 1
B 2 A:N
>
:
0
B:H ¼ /
ð1Þ
In this function, k is a predefined factor larger than 1 and indicates decreasing rate of complemen when moving along the classification system. In this paper, we assume k is equal to 2. We
illustrate this function using the following two examples:
Example 1. Complementary degree of Pencil and Eraser according to Figs. 4 and 5 is calculated as follows:
Fig. 1. Procedure of determining complementary of two products.
Commercial and Military and Private Vehicles and their
Accessories and Components
Passenger motor
vehicles
Automobiles or
cars
Busses
Motor vehicles
Definition
44121702
WordNet
ECL@SS
Pencil
UNSPSC
Sports car
Fig. 2. Parts of the classes of transportation system in the catalog.
44121702
Eraser, Pencil sharpener,
Writing paper
Needs
IS-A
Con.Interval
One month
Fig. 4. Properties of pencil.
Writing
instruments
5770
S. Moosavi et al. / Expert Systems with Applications 36 (2009) 5768–5774
Office Equipment and Accessories and Supplies
Office supplies
Writing instruments
Desk supplies
Correction media
Erasers
Manual pencil sharpener
Pen or pencil sets
Fig. 5. Parts of the classes of office equipment in the catalog.
Pencil.N = {Eraser, Pencil sharpener, printing and Writing
paper}
Eraser.H = correction media
Eraser e Pencil.N therefore Com(Pencil, Eraser) = 1
Example 2. Complementary degree between Graph paper and
Pencil according to Figs. 4 and 6 is calculated as follows:
Pencil.N = {Eraser, Pencil sharpener, printing and Writing
paper}
Graph paper.H = printing and writing paper
Graph paper R Pencil.N therefore
Com(Pencil, Graph paper) = 1/2 * Com (Pencil, Printing and
writing paper)
Printing and writing paper e Pencil.N therefore
Com(Pencil, Printing and writing paper) = 1 therefore
Com(Pencil, Graph paper) = 1/2
Complementary products have transitive property which means
that if B exists in A’s Needs and C exists in B’s Needs, then C is a complementary of A. For example, pencil sharpener requires a pencil
and pencil requires an eraser, thus eraser is complementary of pencil sharpener. Complementary degree of pencil and pencil sharpener is higher than complementary degree between eraser and
pencil sharpener.
Our method uses transitive property, if complementary degree
between class A and class B is based on expression (1), and it is
computed to zero. Complementary degree between two products
using transitive property is calculated as follows:
8
1
>
< k0 comðA:N; BÞ B R A:N
comðA; BÞ ¼ 1
B R A:N
>
:
0
B:H ¼ /
ð2Þ
In this function, k0 is a predefined factor larger than 1 and indicates decreasing rate of complementation along with the transitive
sequence (we value of k0 set to 2).We illustrate this function using
the following two examples:
Example 3. According to Fig. 5, complementary degree between
Pencil sharpener and Eraser can be calculated as follows:
Pencil sharpener.N = {Pencil}
Eraser.H = Correction media
Eraser R Pencil sharpener.N therefore
Com(Pencil sharpener, Eraser) = 1/2 * Com(Pencil sharpener,
Correction media)
Paper Materials and Products
Paper products
Printing and writing paper
Writing paper
Graph
paper
Notebook filler
Fig. 6. parts of the classes of paper products in the catalog.
Correction media R Pencil sharpener.N therefore
Correction media.H = Office Equipment and Accessories and
Supplies
Com(Pencil sharpener, Correction media) = 1/2 * Com(Pencil
sharpener, Office Equipment and Accessories and Supplies)
Office Equipment and Accessories and Supplies R Pencil
sharpener.N therefore
Office Equipment and Accessories and Supplies.H = u therefore
Com(Pencil sharpener, Office Equipment and Accessories and
Supplies) = 0 therefore
Com(Pencil sharpener, Correction media) = 0 therefore
Com(Pencil sharpener, Eraser) = 0 therefore
Eraser R Pencil sharpener.N therefore
Com(Pencil sharpener, Eraser) = 1/2 * Com(Pencil, Erase)
Pencil.N = {Eraser, Pencil sharpener, Writing paper}
Eraser e Pencil.N therefore
Com(Pencil, Eraser) = 1 therefore
Com(Pencil sharpener, Eraser) = 0.5
For example, if a user purchased any kind of pencil sharpener,
then he will probably purchase an eraser with complementary degree of 0.5.
3. Case study: complementary-based recommender system
Recommender systems aim to tackle information overflow in
the electronic commerce environment. These systems customize
electronic catalog for each customer and are required to respond
to several challenges such as type of the recommended products,
time of recommendation, etc. In this section, we present an algorithm which considers the interval for recommendation using
complementary. If the consumption interval of the previous purchased product has expired, our algorithm recommends a similar
product; otherwise it finds a complementary for its previously
purchased products and recommends Top-N products to the
customer.
Recommender systems are generally two methods to formulate
recommendations both depending on the type of items to be recommended and the way that user models are constructed (Allen,
1990). The two different approaches are content based (Balabanovic & Sholam, 1997; Kalles, Papagelis, & Zaroliagis, 2003) and collaborative filtering (Herlocker, Konstan, Terveen, & Riedl, 2004;
Hofmann, 2003), while additional hybrid techniques have been
proposed as well (Balabanovic & Sholam, 1997).
Content based algorithms are principally used when documents
are to be recommended, such as web pages, publications, jokes or
news. This type of recommender systems uses one of the above
similarity algorithms to recommend a similar item to the user.
Similar item is very close to the previous interested items by the
user. Recommending a similar product to the user is not very efficient. Since users do not need two products which is the same in
some of their properties. For example, Car and bicycle is very similar but recommending a car when user has bought a bicycle is not
very good.
Collaborative-filtering algorithms aim to identify users that
have common interests and preferences by calculating similarities
and dissimilarities between user profiles (Herlocker et al., 2004).
The idea behind this method is that, it classifies users based on
previous purchased products and recommend N product which
is purchased by other members of the group but not purchased
by the user. The success of these recommender systems strongly
depend on classification algorithm and selection algorithm which
selects top-N product of that group. In fact, these algorithms create
similar group of user which has similar previous purchased
products.
S. Moosavi et al. / Expert Systems with Applications 36 (2009) 5768–5774
5771
Fig. 7. State diagram for the customer in the electronic marketplace.
Collaborative faltering is divided in the two approaches; userbased and item-based. User-based technique is limited by sparsity1
(Huang, Chen, & Zeng, 2004), cold-start (Melville, Mooney, & Nagaragan, 2002; Schein, Popescul, & Ungar, 2002), scalability2 (Cosley,
Lawrence, & Pennock, 2002) Item-based technique solved scalability
problem but that still has other problems.
We propose a new kind of content based algorithm which uses
complementary and similarity product for recommendation. The
proposed recommender system has high accuracy and solves scalability, sparsity and cold-start problems. Fixing features of the
product classes is one of the drawbacks of the proposed system
which can be solved by future researches.
In our approach, complementary products are classified in two
categories based on product recommendation interval as follows.
Complement Product Over Purchase Time (CPOPT): the user will be
recommended items complementary to the ones he selects at
the current session.
Complementary Product After Purchase Time (CPAPT): the user will
be recommended items complementary to the ones that has
been purchased previously.
Our approach in CPOPT decides to recommend complementary
products during the purchase. When the customer enters to the
electronic marketplace, he selects some products and adds them
to the shopping cart. Our recommender system always traverses
the shopping cart to recommend the complementary of the selected products. For example, when the customer adds hamburger
to the shopping cart, our algorithm checks it and presents complementary of hamburger for the customer in order to purchase.
The proposed recommender system uses CPAPT after the customer enters to the electronic marketplace. In CPAPT algorithm,
when the customer enters to the electronic marketplace, the system considers his/her purchases in previous transaction and then
recommends complementary of the purchased products. But there
is a problem. Recommending complement of a product to the customer may depend on the purchasing time of the main product. For
example, if the customer purchased a hamburger in Wednesday,
recommending hamburger buns as complement of it in the next
week is not benefit since customer consumes product and complement of it jointly. In fact consumption time of purchased product
has been over and in this situation our algorithm recommend similar product to the customer.
3.1. Recommendation procedure
Entering of the customer to the electronic marketplace, our recommendation system gets customer’s background information.
This information includes his previously purchased products. If
the customer has purchased products some time ago, our algorithm determines the consumption interval for these products. If
the consumption interval of these products has ended, our system
recommends similar product; otherwise it recommends complementary product (CPAPT). If a customer purchases products in current time, our method recommends products complementary to
the purchased products (CPOPT). State diagram for the customer
in the electronic marketplace is shown in Fig. 7. In the next section,
our proposed method is investigated using some evaluation tests.
Our proposed algorithm also considers properties of the recommended products based on customer interesting. Suppose our
algorithm decides to recommend pencil, it does another important
stage to specify parameters of pencil such as color, size, manufacture, etc. Our algorithm is able to use the following two approaches
for this problem:
Customer preferences: we model parameters of the recommended product as a vector (Recommended Vector). The elements of this vector are product attributes such as color, size,
manufacture, etc. In addition, each purchased product is modeled by another vector (Purchase Vector). We compare these
two vectors and determine cosine degree between them. Each
product which has high cosine degree may be selected as a
desired product. Value of attributes of the recommended product is selected from value of attributes of the desired product.
For example, customer has purchased pencil that has red, large
size, earaserCom for the color, size and manufacture. Suppose
our algorithm has decided to recommend eraser. This customer
prefers to use product of earaserCom with red color and so on.
Preferences of other customers: in this approach, we model attributes of the recommended product as a vector. Each value of its
attribute is selected from preferences of other customers. Suppose our algorithm has decided to recommend eraser, it examine to find the best value for eraser parameters from those
customers who has bought eraser.
4. Proof and evaluation
4.1. Dataset
1
Number of ratings already obtained is usually very small compared to the number
of ratings that need to be predicted.
2
Recommender systems require computations that are very expensive and grow
non-linearly with the number of users and items in a database. Therefore, in order to
bring recommendation algorithms successfully on the web, and succeed in providing
recommendations with acceptable delay, sophisticated data structures and advanced,
scalable architectures are required.
We used the data of Building Equipment Company collected
from 2005/04/22 to 2006/08/01. This dataset has 2266 customers,
2581 products and 21662 sale transactions. Products of company
have been classified into 18 groups and an ontology is constructed.
Tile, sanitary china, cement, head stones, etc. are sample of these
groups.
5772
S. Moosavi et al. / Expert Systems with Applications 36 (2009) 5768–5774
4.2. Evaluation metric
CPAPT
0.44
0.42
F1 metric
To evaluate our algorithm, we utilized widely used metrics in
information retrieval (IR) community, namely precision and Recall
(Khosravi Farsani & Nematbakhsh, 2006; Kowalski, 1997). In the
first step, the algorithm works on the training portion of data
where top-N set will be generated as the set of recommendations
(for each customer). The main goal is to look into the test set and
match the newly recommended products with previously generated top-N set. Products that appear in both sets are members of
a special set, which is called the hit set. Precision and Recall metrics
defined in this context as below:
0.4
0.38
0.36
0.34
0.32
0.3
10
20
30
40
50
60
70
80
90
TOP-N
Fig. 8. F1 values in CPAPT algorithm.
Precision. Which is defined as the ratio of hit set size to the topN set size, i.e., precision = size of hit set/size of top-N set.
Recall. We define recall as the ratio of hit set size to the test set
size, i.e., recall = size of hit set/size of test set.
CPOPT
0.54
F1 ¼ 2 Recall Precision=ðRecall þ PrecisionÞ
0.52
F1 metric
These two measures are often opposite in nature. For instance,
increase in the number of N tends to increase Recall but decrease
Precision. The fact that both are critical to the quality judgment
leads to using a combination of them. In particular, this paper uses
the standard F1 Metric (Khosravi Farsani & Nematbakhsh, 2006,
2007) that considers them equal in importance and is computed as
0.5
0.48
0.46
0.44
0.42
ð3Þ
10
20
30
40
50
60
70
80
90
100
130
Top-N
4.3. Experimental results
In this section, we present and discuss the evaluation results for
the proposed recommender system. The algorithm utilizes the
above data set as input to evaluate two types of recommendation
algorithm. CPAPT algorithm is the first type and the second type
is CPOPT algorithm.
In order to evaluate our algorithm, we compute complementary
degree between each pair of products and record them in a table.
Purchased products of each customer have been divided into two
sets namely Training set and Test set. We have randomly selected
80% of products in to training set and 20% in to test set. We apply
our algorithm to Training set and produce Top-N products which
are complementary of the previous purchased product. We measure F1 for each customer and compute the average of this parameter as the final F1. This procedure has been applied 10 times to
reduce the influence of the selected sets on the result. In other
words, our algorithm has been executed each time with different
values of Train and Test set.
To evaluate CPAPT algorithm, items of each factor are divided
into two sets namely Train set and Test set. Our algorithm finds
complementary of Train set and produces Top-N product. These
Top-N products are matched with test set and computed F1 as described above. Final results demonstrate that F1 changes from 0.36
to 0.42 (Fig. 8).
To evaluate CPOPT algorithm, we classify the purchased products of each customer according to the time of purchase. We divide
each class into Train and Test set. We apply our algorithm to train
set and produce Top-N product. These Top-N products have been
matched to the test set and have computed F1 as described above.
F1 changes from 0.46 to 0.53. As you can see in Fig. 9 this type of
recommendation algorithm has better results in comparison with
previous algorithm.
At present, a few marketplaces have the ability to recommend
product when the customer browse product in the electronic market. As you can see in Fig. 9, this type of recommendation has better results in comparison with other type of recommendation. In
fact, behavior of the seller in the real world has been modeled by
Fig. 9. F1 values in CPOPT algorithm.
CPOPT algorithm. When customer selects a product in the physical
store, Seller recommends complement of the selected product and
tries to convince customer to buy another product. CPOPT algorithm model the behavior of the seller in the electronic market.
Association rule is a popular approach to acquire complement
of one product. Suppose a customer has purchased product A in
the previous and returns to the electronic marketplace for a new
purchase. Based on association rule mining, we find number of
the transaction which contain A and Bi (i is the number of product)
and compute confidence of the rules A ? Bi (for all i). Bj is complement of A, if confidence factor of the rule A ? Bj is greater than a
consensus threshold. Our algorithm recommends Bj as complemented of previous purchased product.
Confidence of A ! B ¼ ðnumber of transactions contain
A and BÞ=ðnumber of transactions contain AÞ
ð4Þ
We compare our algorithm with association rule to understand
efficiency of the proposed algorithm. We divide data set in to Train
set and Test set. We determine complement of all products as described in expression (4) and maintain them in a table. For each
customer, we generate some recommendation, compare them with
Test set and compute F1 metric as you can see in Fig. 10. Its results
are weaker than our two suggested algorithms. This figure demonstrates that F1 changes from .13 to .17.
An important aspect of an effective recommender system is run
time to recommend Top-N products. We compare our suggested
approach with association rule from run time viewpoint. Our approach computes degree of complementary in a few second, but
association rule consumes several hours to compute degree of relationship between products since it takes many time to analyze
market baskets. Fig. 11 compared run time of association rule
method and our approach.
So, complementary products recommending has a good accuracy and high speed. This approach is more efficient than association rule and solves cold-start and scalability problem.
S. Moosavi et al. / Expert Systems with Applications 36 (2009) 5768–5774
5773
tary product and base product together. For example, advertising
car and media player together, leads to more sell of media player.
CPAPT
0.45
F1 metric
0.4
0.35
0.3
5.3. Non-excludable public product
0.25
In economics, a kind of products is public product that is a nonexcludable and non-rival in consumption product. Non-rival
means that, consumption of the product by a person does not reduce the amount of the product available for consumption by others. For example, breathing air does not reduce the amount of air
available to others. Non-excludable means that companies are
not able to sell the products. An example of public products is Open
Source Software. Today, companies such as IBM invest in Open
Source Software.
This poses immediately the question, why companies invest in
public products. One reason is companies expect to benefit from
some proprietary products that are complementary of the public
product. Even though the companies cannot directly capture the
benefit of a public product, they can capture benefit indirectly
through selling more complementary proprietary goods at a potentially higher price.
0.2
0.15
0.1
0.05
0
10
20
30
40
50
60
70
80
90
TOP-N
result of complemenary
product
result of association
rule
Fig. 10. F1 values for association rule.
Time
80000
Time(second)
70000
60000
6. Conclusion
50000
40000
30000
20000
10000
0
1
6
11
16
21
26
31
36
41
46
pairs of products: 1 = (motar, sand) , 2 = (motar
, plaster) , ...
time of association rule
time of complementary products
Fig. 11. Run time comparison of our algorithm with association rule.
5. Other usage of complementary measure
Complementary concept may be used in several other applications. In this section, we review some of its usage for other decision
of electronic marketplace.
In this paper, we proposed a new association between products
namely complementary product that is very effective compared to
other existing associations. We specified an attribute for each class
of the catalog and called it Need property. This property contains
other classes which may be consumed with this class. In order to
find complement of the classes, we modeled electronic catalog
using OWL ontology language and found complement of the classes based on suggested procedure.
Complementary products will be used in several applications
such as recommender systems, promotion systems, selling
strategies, etc. In this paper, we utilized complementary product
for a new recommender system. We compare our complementary-based recommender system with association rule mining
and provided some results. Experimental results have shown our
suggested recommender system will increase precision and
performance.
References
5.1. Pricing
An important factor to measure quantity demanded of a typical
product is the price of its complementary. Economics have defined
a new metric which called the cross price elasticity of demand. This
metric measure the influence of quantity demanded of a product to
a change in the price of another product. For example, if price of
fuel product increases 10% and the quantity of new cars decreased
by 20%, then cross elasticity of demand would be 20%/10% = 2.
When two products are complementary, with increase the price
of base product, the demand for its complementary will be decrease. Therefore the cross price elasticity of demand is negative.
In the example above, fuel and cars are complementary. This property of complementary products gives additional market power to
companies. The market power is an ability of a company to change
the market price of a product.
5.2. Advertising
One of the best strategies for selling a product is advertising
complementary products. Economics believe that this strategy
has very efficiency compare to other approach. This strategy leads
to customer to become more familiar with different kind of her/his
required products and to be encouraged for purchase complemen-
Allen, R. B. (1990). User models: Theory, method, and practice. International Journal
of Man-Machine Studies, 32(5), 511–543.
Balabanovic, M., & Sholam, Y. (1997). Combining content-based and collaborative
recommendation. Communications of the ACM, 40(3), 66–72.
Cosley, D., Lawrence, S., & Pennock, D.M. (2002). REFEREE: An open framework for
practical testing of recommender systems using research index. In Proceedings
of the 28th very large data bases conference (pp. 35–46). Hong Kong, China.
Economides, N., & Brian, V. (2006). Pricing of complements and network effects. JELclassification code: L12;L13;C63;D42;D43.
Ganjifar, Y., Abolhasani, H., et al. (2006). A similarity measure for OWL-S annotated
web services, Web Intelligence, 2006, WI 2006. In IEEE/WIC/ACM international
conference, Hong Kong (pp. 621–624).
Herlocker, J., Konstan, J. A., Terveen, L., & Riedl, J. (2004). Evaluating collaborative
filtering recommender systems. ACM Transactions on Information Systems (TOIS),
22(1), 5–53.
Huang, Z., Chen, H., & Zeng, D. (2004). Applying associative retrieval techniques to
alleviate the sparsity problem in collaborative filtering. ACM Transactions on
Information Systems, 22(1).
Hofmann, T. (2003). Collaborative filtering via Gaussian probabilistic latent
semantic analysis. In Proceedings of the 26th annual international ACM SIGIR
conference on research and development in information retrieval (pp. 259–266).
Toronto, Canada.
Kalles, D., Papagelis, A., & Zaroliagis, C. (2003). Algorithmic aspects of web
intelligent systems. In N. Zhong, J. Liu, & Y. Yao (Eds.), Web intelligence. Berlin:
Springer (pp. 323–345).
Khosravi Farsani, H., & Nematbakhsh, M. (2007). Designing a catalog management
system an ontology approach. Malaysian Journal of Computer Science, 20(1).
Khosravi Farsani, H., & Nematbakhsh, M. (2006). A semantic recommendation
procedure for electronic catalog. Transaction on Engineering, Computing and
Technology, 6, 350–355.
5774
S. Moosavi et al. / Expert Systems with Applications 36 (2009) 5768–5774
Knappe, R. (2005). Measures of semantic similarity and relatedness for use in ontologybased information retrieval. Thesis of doctor. Denmark: Roskilde University.
Kowalski, G. (1997). Information retrieval systems: Theory and implementation.
Kluwer Academic Publisher.
Melville, P., Mooney, R.J., & Nagaragan, R. (2002). Content-boosted collaborative
filtering for improved recommendations. In Proceedings of the national
conference of the American association artificial intelligence (pp. 187–192).
Edmonton, Alberta, Canada.
Resnik, P. (1999) Semantic Similarity in a taxonomy: An information-based
measure and its application to problems of ambiguity in natural language.
Journal of Artificial Intelligence, (pp. 95-130).
Schein, A.I., Popescul, A., & Ungar, L.H. (2002). Methods and metrics for cold-start
recommendations. In Proceedings of the 25th annual international ACM SIGIR
conference on research and development in information retrieval (pp. 253–260).
Tampere, Finland.
Schmidtke, R. (2006). Private provision of a complementary public good. JELclassification numbers: C72, L13, L86.
UNSPSC (2001). Why coding and classifying products is critical to success in electronic
commerce, using the UNSPSC, White Paper, Granada Research.
Webb, G.I. (2003). Preliminary investigations into statistically valid exploratory rule
discovery. In Proceedings of the Australasian data mining workshop AUSDM03 (pp.
1–9). University of Technology, Sydney.