## 5 Evaluation
### Adaptive and Batch Prioritization  
We assume a baseline crawler implementing a best-first crawling strategy. We represent the topic of the crawl with a topic vector, which is defined as follows. For each seed Web page, we download its content and we create a term vector from it. The topic vector corresponds to the vector sum of the seed page term vectors. We assume that URLs are prioritized according to their similarity to the topic vector. More specifically, the priority of a URL \(u\) is computed as the average of: (a) the cosine similarity between the content of Web page \(p\) in which \(u\) was found and the topic vector and; (b) the cosine similarity between the anchor text of the out-link from \(p\) to \(u\) and the topic vector. An adaptive crawler can update the score of an already scheduled Web page using a function such as MAX, SUM, AVG. For example, the function MAX updates the priority of an already scheduled  
Figure 7: Example of updating the priority of a URL in the frontier of Adaptive Heritrix. Web page if the new priority was higher than the existing one. The function LAST always updates the score to the most recently computed one and the function FIRST is equivalent to the baseline crawler. A crawler supporting batch prioritization schedules links for crawling only after having downloaded a batch of Web pages. In such a case, a URL can be discovered in many Web pages, so the cosine similarities are computed between the topic vector and the sum of the vectors of Web pages in which the URL was found, or the sum of the anchor text vectors associated with links pointing to the URL. In this setting, we also simulate a crawler that fetches the \(k\) pages with the highest priority from each domain, instead of fetching just one Web page with the highest priority. To evaluate the focused crawler architectures, we perform simulated crawls on datasets created with three topics of DMOZ. We create three random samples of 20 seeds for each of the topics and the results we obtain for each configuration are the average of 9 simulations. For each set of seeds, we simulate a crawl of 10,000 Web pages. The topic vector we use to compute similarities between each topic and the crawled Web pages corresponds to the vector sum of the seed term vectors. For the evaluation of the results, we employ three measures: (a) harvest ratio, which we define as the ratio of Web pages whose cosine similarity with the topic vector is greater than 0.333 over all crawled Web pages; (b) average similarity of crawled pages; and (c) fraction of DMOZ subtopics with at least one crawled page. Table 1 shows the evaluation results for adaptive prioritization with different priority update functions. The highest harvest ratio is achieved with the AVG function, while LAST achieves the highest fraction of DMOZ subtopics. We also consider an additional parameter related to how the simulated crawler schedules links to crawl. For each queue, which corresponds to a domain, the crawler selects the \(bl\) URLs with the highest priority to crawl. In all previous experiments, \(bl=1\), meaning that each time the crawler selects the URL with the highest priority. For efficiency reasons, crawlers use higher values for the parameter \(bl\). In the case of Heritrix, \(bl\) corresponds to the parameter _balance per queue_. In our experiments, we test the values \(bl=1\) and \(bl=5\). The evaluation results for batch priority updating are shown in Table 2. We can observe that when increasing the value of \(bl\), the effectiveness of the crawler drops, both in the case of a baseline crawler and an adaptive crawler (first 4 rows in Table 2). However, the combination of a higher \(bl\) value with batch updating performs better than an adaptive crawler with \(bl=5\) (rows 4 and 6 in Table 2).