Gaze-orchestrated dynamic windows Consider a large-format display before the user, bearing a multiplicity of "windows," like little movies, the majority dynamic and in color.There are upwards of 20 windows, say, more than a person can ordinarily absorb at once.Some of the windows come and go, reflecting their nature as direct TV linkages into real-time, real-world events.Others are non-real-time, some dynamic, others static but capable of jumping into motion.Such an ensemble of information inputs reflects the managerial world of the top-level executive of the not too distant electronic future: a world of brevity, fragmentation, variety, above all one of an overwhelming onslaught of events.The multiplicity and simultaneity of such a display situation ordinarily would make coping with it untenable.The intent of the reported research is to introduce order and control, through the creation of a dynamic, gaze-interactive interface.Making the behavior and reactivity of the "windows" contingent upon measured eyemovements -the point-of-regard of the observer -aims both to help the observer to cope with the onslaught of events on the one hand, yet enable on the other hand continuing close contact with that everchanging ensemble.A simulation of such a world is described and demonstrated in the composite medium of computer, videodisc, and video special effects.Eye-tracking technology, integrated with speech and manual inputs, controls the display's visual dynamics, and orchestrates its sound accompaniments.All elements are combined to form a testbed for the conception generally, and to explore the associated human factors and stagecraft. The managerial world of the top-level executive or commander is one of brevity, fragmentation, and variety.. They spend little time on any one activity, deal with a great number of problems in the course of a day, and the problems, and decisions made about them, are of many types (Cf. Keen & Scott-Morton, 1978) .. In contemplating what might be a graphical information systems interface corresponding to such a management world, we envisaged a large-format display whereon are upwards of twenty, at times even up to fifty, simultaneous mini-displays confronting the user, the majority of them dynamic and in full color.. The multiplicity and simultaneity of the displays would make coping with such a visual situation untenable.. Our goal would be to introduce order and control, primarily through gaze-directed commands.. The dynamic, gaze-interactive interface we wanted to assemble would function both to enable and protect.. We aimed to help the observer to keep up with the onslaught of events on the one hand, performing a "filtering" function -or, more accurately, making it possible for the observer to protect himself -but, on the other hand, to enable the observer yet to keep in touch with a complex world of on-going events.. The display situation described below, which we have dubbed "Gaze-Orchestrated Dynamic Windows," offers to the observer many visual events, while at the same time permitting built-in modes of selective attention to operate.. In the midst of the welter of impressions and events, the mode par excellence of directing attention is vision, specifically, where you are looking (Cf. Marks, 1978) .. Eye-tracking, the knowledge of where the observer is looking, has been the object of much study (Cf. Senders et al, 1978; Monty & Senders, 1976) .. However, eye-tracking has been done primarily in the context of behavioral and psychological studies, controlled and in the laboratory context, rather than using an eye-tracker as a system component, with the derived point-of-regard as part of the essential information that an interactive system should have concerning the human user.. Think of it as "eyes as output."

O B B O O O O O O B O O O O B O O O O O B O O O O O O O B O O O O O O O O O O O O B O O O O O O O B O O O B O O O O O B O O O O O O O O O B O O O O O O O O O O O O O O O O O B O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O B O O O B O O O B O B O O O O O B O O O B O O O O B O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O B O B O O O O O B O O O O O O O O O O O B O O O O O O O B O O O O O O O O O B I O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O B O O O B O O O O O O O O O O O O O O O O O O O O O O B O B O O O O O B O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O


Sourcing decisions with capacity reservation contracts By committing to long-term supply contracts, buyers seek to lower their purchasing costs, and have products delivered without interruption. When a long-term contract is available, suppliers are less pressured to ®nd new customers, and can aord to charge a price lower than the prevailing spot market price. We examine sourcing decisions of a ®rm in the presence of a capacity reservation contract that this ®rm makes with its long-term supplier in addition to the spot market alternative. This contract entails delivery of any desired portion of a reserved ®xed capacity in exchange for a guaranteed payment by the buyer. We investigate rational actions of the two parties under two dierent types of periodic review inventory control policies used by the buyer: the two-number policy, and the base stock policy. When typical demand probability distributions are considered, inclusion of the spot market source in the buyerÕs procurement plan signi®cantly reduces the capacity commitments from the long-term supplier. Ó The procurement of raw materials and components used in the manufacturing process is a critical managerial task. In the US, cost of purchased inputs constitute about 50% of its total sales for a typical manufacturing ®rm (Subramaniam, 1998) , implying that overlooking the cost of inputs may lead to considerable ®nancial losses. In dealing with its suppliers, a company may decide to enter into short-or long-term contractual relations. Ongoing developments in the global economy have signi®cantly in¯uenced and altered the traditional form of manufacturer±sup-plier relationships. The adoption of just-in-time production and competitive pressures on quality have caused leading companies to start approaching their suppliers as long-term outside partners instead of adversarial parties. In this paper, we develop analytical models to examine the manufacturer±supplier relations from both parties' European Journal of Operational Research 131 (2001) 635±648 www.elsevier.com/locate/dsw perspectives, and explore the conditions in¯uenc-ing the choice of long-or short-term supply relationships.. Various factors in¯uence the relationships between manufacturers and their suppliers. Supplier involvement in the product development process, cost and quality of delivered materials, and risks of supply disruptions are some major factors considered by manufacturers (De Toni and Nassimbeni, 1999) . Helper and Sako (1995) survey recent trends in supplier relations in the US and Japanese automotive industries.. The reasons for the adoption of dierent procurement strategies by ®rms have been explored in the economics literature using the concept of`T ransaction Costs'' (Williamson, 1991) . According to this viewpoint, a long-term relationship between a buyer and a supplier is more likely when the assets required by the relationship do not have alternative uses, i.e., when one party is highly dependent on the other. De Toni and Nassimbeni (1999) discuss comparative advantages of``arm'slength'' sourcing (spot markets) and long-term partnerships. They also present a survey of Italian companies, which, in consistence with Transaction Costs theory, points out that manufacturers are more inclined (compared to arm's-length relationship) to enter long-term relationships with suppliers when an advanced operational link (e.g., deliveries synchronized with the production schedule) is established between the parties. Subramaniam (1998) discusses how corporate ®-nancing decisions can alter the buyer's motives for opportunistic behavior in its relations with its suppliers. The issue of supplier competition in procurement contracts has also been analyzed by using``bidding'' models (Seshadri et al., 1991) .. The management of material¯ows across a supply chain is an important part of the operations management ®eld. The classical inventory theory prescribes optimal purchasing policies for the buyer by minimizing the sum of purchasing, holding, and shortage costs (Porteus, 1990) . In recent years, there has been a growing interest in We have studied the use of a capacity reservation contract as a vehicle for establishing a stronger connection in buyer±supplier relationships. A capacity reservation contract leads to a tighter interaction between a buyer and a supplier because it elevates the status of the supplier to a long term business partner from being one of many interchangeable suppliers in the open market. The inclusion of market suppliers in the model forces the two sides of the capacity reservation agreement to evaluate the viability of the agreement under competitive pressures. We ®nd that an exclusive partnership between the buyer and preferred supplier necessitates a signi®cantly higher capacity to be reserved compared to the option of dual sourcing. We have shown that it is possible to design a base stock inventory policy with a twopart pricing mechanism to match the two-number policy with linear pricing. Consequently, the buyer and the preferred supplier have more¯exibility over selecting a suitable contract structure. Our computational results suggest that because it involves substantial increases in reservation capacity, single sourcing strategy may not be a practical alternative.. Long-term contracts allow a supplier to make more ecient production schedules and investment plans for the future (Treleven, 1987) . Besides the reduced uncertainty in future revenues and operations, another bene®t for the supplier will be the favorable treatment it may receive from the buyer by being the preferred supplier. For many industrial suppliers, this creates a ®rst-mover advantage in becoming a supplier for products under development. Also, if there is learning by doing, the supplierÕs unit cost of production will decrease over time as a result of repeated orders, leading to a competitive advantage. Notwithstanding the bene®ts, it is also possible to argue that the responsibility of making a reserved capacity available involves some loss of¯exibility, hence more costly resource allocations on the supplier side. From the buyer's perspective, establishment of a long-term relationship facilitates cooperating with the supplier in controlling and improving the quality of purchased items. Various research extensions are possible. A game-theoretic analysis based on risk preferences and bargaining powers of the parties may yield further insight into the mechanism of negotiations between the buyer and the supplier. It is also possible to generalize our framework to the case when the buyer contracts with more than one longterm supplier; the solution in this case will depend on the order in which parties make their decisions. In addition to price-based competition among the suppliers, the dierences between the quality and reliability of deliveries from the short-and longterm suppliers may be incorporated into the model. Finally, it may be interesting to investigate the problem of allocating a supplier's production capacity among multiple buyers within a capacity reservation framework.. According to (A.8), while keeping the mean demand ®xed, expected savings from a capacity reservation contract monotonically decreases as the demand uncertainty increases. IFR distributions have the property that the failure rate, r(y), increases as y increases (Leemis, 1995, p. 51) , where ry f y=F c y:. Hence, dry=dy fdf y=dyF c y f y 2 g=F c y 2 :. A:9. In order to show the concavity of X 1 , let If the distribution is IFR, (A.9) is positive, which implies K 1 < 1. X 1 is concave since (A.10) is always negative if K 1 < 1: this is because u u 1 < 0 if 0 6 K 1 < 1, and u u 2 < 0 if K 1 < 0. Similarly, let. Then d 2 X 2 =dc 2 f1=c 2 f R Ã g Â fÀ2 K 2 c s 1 À K 2 =c 2 g: A:11 IFR implies that K 2 < 1; (A.11) is always negative if K 2 < 1, hence, X 2 is concave for all IFR distributions.. Finding w 1 and w 2 when demand distribution is Weibull. For the Weibull distribution,. f y ab Àa y aÀ1 F c y:. b > 0 and a > 0 are the scale and shape parameters, respectively. Weibull is IFR if a P 1. Using the relationship y b expfa À1 lnÀ ln F c yg;. it can be shown that. w 2 c 2 expc s À c 2 =ac 2 :. Unlike the direct solution for w 2 , a nonlinear equation must be solved to determine the unique w 1 . X i (w i ) can be evaluated by observing that Q 1 r l À b=aC1=a1 À I1=a; r=b a for the Weibull distribution (Leemis, 1995, p. 89) , where Cs is the gamma function, and Is; t is the incomplete gamma function de®ned as follows: There exist many mathematical software packages that can be used to compute Cs and Is; t.

O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O


Neighborhood filters and the decreasing rearrangement Nonlocal filters are simple and powerful techniques for image denoising. In this paper, we give new insights into the analysis of one kind of them, the Neighborhood filter, by using a classical although not commonly used transformation: the decreasing rearrangement of a function. Independently of the dimension of the image, we reformulate the Neighborhood filter and its iterative variants as an integral operator defined in a one-dimensional space. The simplicity of this formulation allows to perform a detailed analysis of its properties. Among others, we prove that the filtered image is a contrast change of the original image, an that the filtering procedure behaves asymptotically as a shock filter combined with a border diffusive term, responsible for the staircaising effect and the loss of contrast. Let Ω ⊂ R d (d ≥ 1) be an open and bounded set, and consider a function u ∈ L ∞ (Ω). The Neighborhood filter operator is defined by. where h is a positive constant, and. is a normalization factor, intended to allow constants to be fixed points of NF h . The Neighborhood filter (NF) is the simplest particular case of other related filters involving local terms, notably the Yaroslavsky filter [31, 32] , the SUSAN filter [27] introduced by Smith and Brady, the Bilateral filter [30] of Tomasi and Manduchi, and the Nonlocal Means filter (NLM) [6] by Buades, Coll and Morel.. These methods have been introduced in the last decades as efficient alternatives to local methods such as those expressed in terms of nonlinear diffusion partial differential equations. • The contrast change character of the NF, i.e. the existence of a continuous and increasing function g : R → R such that NF h (u(x)) = g(u(x)), see Corollary 2.. As mentioned above, the most salient advantage of the Neighborhood filter in its rearranged version is speed. If N denotes the image size in pixels, the complexity of other nonlocal filters such as the classical NF, the Bilateral or the NLM filters are of the order C × N , where C depends on different parameters (window sizes) used in those models. A typical value of C may be of the order 10 5 , for the NLM. However, the complexity of the rearranged version of the NF depends on the number of the initial image intensity levels, which we assume quantized in Q levels, and on some small constant related to the window size, h, resulting in a complexity of the order c × Q, being a typical value of c of the order 10 2 . Thus, the complexity of the NF is independent of the image size, once the level lines of the initial image have been identified.. However, denoising quality of the NF is, by far, poorer. The staircaising effect, always present in algorithms reducing the Total Variation of the initial image, is especially strong for the NF. In fact, after several iterations, and depending on the window size h, the NF output image concentrates most of its pixels mass on few level sets, producing a segmentation-like effect on the initial image.. A quick explanation of the difference between the NF and the Bilateral and NLM filters is that the NF does not retain any local information of the image, diffusing the intensity values just according to the mass of their corresponding level lines. Thus, a pixel belonging to a level line with large mass will retain its value even if it is isolated in a component of the image with different intensity value.. Due to this, the Neighborhood filter and morphological filters deduced from the topographic map of an image, see for instance the monograph by Caselles and Monasse [10] , such as the Grain and the Killer filters, are also different since the latter use the local geometry of level sets connected components in a fundamental manner.. However, they do share some similitudes in their level set based framework, and this could be used for combining both algorithms. For instance, the isolated small regions belonging to a level line with large mass which remain in the filtered image after the NF application could be removed by morphological procedures, such as opening and closing operators.. The segmentation-like behavior of the NF may be explained in terms of the relationship between the inflexion points of the decreasing rearrangement and the local extreme points of the image histogram, h(q) = −m u (q). Thus, since the NF behaves asymptotically as a shock filter, and shock filters accumulate mass in inflexion points, we deduce that the NF works as an histogram based segmentation algorithm.. Since for our analysis the Gaussian form of the integral kernel is not important, we consider the following generalization of the Neighborhood filter. with C(x) = Ω K h (u(x) − u(y))dy, and K h (ξ) = K(ξ/h). For the moment, we only assume K ∈ L 1 loc (R) and K ≥ 0 to have (2) well defined, although more meaningful conditions will be stated later.. We consider the following iterative schemes, for n ∈ N (including n = 0), and u (0) = u:. 1. Iteration with fixed kernel (linear operator),. 2. Iteration with varying kernel (nonlinear operator),. Observe that, for both schemes, we have. for all n ∈ N, and therefore the iterations are well defined. The plan of the article is the following. In Section 2 we introduce the notion of decreasing rearrangement and establish the equivalence between (3) and (4) and its corresponding versions under this transformation. In addition, we show some examples on the relationship between an image and its relative rearrangement and histogram. In Section 3, we prove some qualitative properties of the nonlinear iterative scheme, among which its behavior as a shock filter. In Section 4, we describe the discretization of the continuous model and demonstrate with examples the denoising capabilities of the NF in comparison with the Bilateral and NLM filters, and its interpretation as a segmentation-like algorithm. In Section 5 we give our conclusions.. Finally, let us emphasize that the reformulation of the Neighborhood filter we propose produces the same filtered image than that obtained through the classical NF. However, there are two important advantages in our approach: (i) the filtering process is performed through a onedimensional integral, reducing largely the algorithm complexity, and (ii) the rearranged version exposes the NF functioning to a deeper mathematical analysis. In this paper we introduced the use of the decreasing rearrangement to express nonlinear and nonlocal filters in terms of integral operators in the one-dimensional space [0, |Ω|].. We have proved properties related to the Neighborhood filter nonlinear iterative scheme. In particular, geometric properties like the invariance of level sets and the performance of the filter as a contrast change.. We have also proven a detailed qualitative behavior of the iterations as a power expansion in terms of the window size, and with coefficients which depend on up to second order derivatives of the iterations. This allowed us to distinguish two kind of effects of the filtering process: an anti-diffusive effect of shock-filter type, and a contrast loss effect.. Motivated by the possible piece-wise constant steady state of the discrete problem, we have illustrated the interpretation of the filter as a segmentation algorithm, indeed connected to other techniques involving the histogram thresholding.. The main conclusion of our work is that, for certain kind of images, among which those having concentrated their pixel mass around few intensity levels, the NF is appropriate both as a denoising and as a histogram-maxima based segmentation algorithm. The execution time of its rearranged version clearly out-performs those of other algorithms. However, for other kind of images, specially those with a relatively flat histogram, the results of the NF are poor. Table 1 for details.

B I O O B I O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O


Trace analysis of Erlang programs The paper reports on an experiment to provide the Erlang programming language with a tool package for convenient trace generation, collection and to support analysis of traces using a set of techniques. Due to the frequent use of statebased software design patterns in Erlang programming we can in many cases recover not only the events from a trace log, but also the program states causing these events. This makes it possible to obtain program models from execution traces. In our work we make use of these program models for program visualization and model checking. The Erlang programming language [2] is at its core a functional programming language extended with features such as processes and asynchronous message passing to cater to the programming of distributed applications. Inside Ericsson Erlang has been used for writing software for telecommunications equipment such as the AXD 301 ATM switch [3] (consisting of over half a million lines of Erlang code [10] ).. In practise many aspects of a product such as AXD 301 are, due to the highly complex and distributed nature of its software and hardware architecture, hard to understand for most of the designers working on it. Source code analysis and verification techniques are difficult to apply to the product, partly simply because of the sheer size and complexity of its design. Further, in real life it operates in environments that cannot easily be replicated or simulated during in-lab testing or verification. As such the collection and analysis of runtime information is of critical importance during development, operations and maintenance.. The Erlang language already contains several features that ease runtime data collection: (i) there is an extensive tracing framework (the erlang:trace/3 and erlang:trace pattern/3 functions) that enables tracing of activities such as process communication, function calls, and * The author was affiliated with Ericsson when the work described in this article was carried out.. Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. To copy otherwise, to republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. ACM SIGPLAN Erlang Workshop '02 Pittsburg, PA USA Copyright 2002 ACM 1-58113-592-0/02/8 ...$5.00. so on; (ii) typical Erlang software is of a regular nature: it makes use of a number of so called design patterns that provide a standardized means to program recurring patterns in telecommunications software, e.g., finite state machines, client-server communications and event handling.. In our work we focus on tracing the distributed aspects of Erlang software, building upon the trace framework already present in the language. Erlang programmers already are aware of the trace functions sys:trace used to obtain traces of the generic behaviours. We implemented a trace capturing facility which roughly provides the same trace data as obtained by using sys:trace. The difference is, though, that a prerequisite for using the sys module is to start the generic behaviour with the debug option trace enabled. We are able to obtain the trace information from a generic behaviour that has been started without this option enabled. Another minor difference is that we record the event together with the present state, whereas the sys tracing functions present the updated state after the event.. With our tool traces can automatically be collected from multiple processes executing on multiple hosts in a distributed network. The real contribution of our tool starts after collecting this trace information.. A trace is a (long) sequence of events and process states, e.g., the state of a generic behaviour as passed as an argument to for example the handle call function of the generic server call-back. In most software systems, a certain repetitive behaviour occurs after a while. That means that we see the same sequence of events and states re-occur in the trace. However, because of unique message tags added by the generic behaviours or because of a message counter, the events and states may differ even though we want to consider them equal on a more abstract level.. Our trace package is constructed to visualize re-occurring patterns in the trace. Parts of the trace can be abstracted away in a controlled manner (for instance, ignoring parts of a record structure). As such, different events may be visualized as one and the same abstract event and different states may be mapped to one and the same abstract state (transforming the linear structure of the trace into a graph structure). Such abstractions are written in Erlang itself and a set of standard abstractions are provided.. For analysis of trace data we are currently focusing on the task of extracting a model of the traced components. Essentially such a model is a finite-state graph where the nodes are a collection of the states of the traced processes, and the edges are events that cause a state change in any process. Normally it would be quite hard to recreate such a model from an executing system because system states are difficult to recreate from a trace. However, due to the predominance of design patterns in Erlang software that explicitly record state information, we can actually obtain very useful state graphs in this manner.. These state graphs can, possibly after using our powerful abstraction mechanism, be directly visualized using graph drawing programs such as daVinci [6] or dot [7] ; our software will generate graphs in these formats. In case graphs contain too much information to be amenable to visual inspection they can be exported by our package to external tools such as the model checkers of the CADP (Caesar/Aldebaran) tool set [5] , and checked against correctness properties encoded in the alternation-free modal µ-calculus [8] .. Since the work on trace analysis spans several fields there are a large number of partially related works, especially in the field of software visualisation. A number of works focus on recreating the underlying protocol structures (state machines) of programs from collected trace sets. Ammons et al. [1] , for instance, use machine learning techniques to discover from traces the protocol specifications that programs must adhere to when interacting with a certain application interface and a similar effort is reported in [4] .. Efforts are under way to support limited model checking directly on the collected traces, without first generating a state graph model. We implemented a tracing tool that collects trace data from running systems. The tool is based on the tracing primitives in the Erlang runtime system, which allow tracing of e.g. messages and function calls without re-compiling code. This is a great advantage when obtaining trace data from complex systems comprising both hardware and software, where there is a great reluctance to code modifications.. In our work we focused in particular on tracing code that has been written according to certain design principles, to enable an easy recovery of the state of the processes. An abstraction mechanism was defined on traces, which maps concrete Erlang states and events to abstract one. This abstraction mechanism has shown in experiments to be easy to use even by inexperienced Erlang programmers.. One particular interpretation of the trace data is the graph obtained by collapsing identical trace states. This presentation of the data has, because of the predominance of state in Erlang components, proved to provide valuable insight into the source code of the traced application, and has been shown to be beneficial for documenting purposes.. The success of the method of tracing software in this way comes with the right choice of abstraction functions. Our experience is that designers of a system already have an accurate picture of which the important parameters of a complex state (or action) are, but often fail to appreciate the full dynamics of a system. Further, since they have no problems with programming Erlang, they are the right people to write these abstraction functions.. The trace package is currently primarily used for visualization and documentation purposes, but we hope to be able to use it more extensively for checking correctness properties of the software by means of traces in the future. Often it is infeasible to obtain realistic program models for software verification from existing code, simply because unless drastic abstractions are made, the models will be much too large. Moreover, abstractions that preserve the essentials of the program behaviour are not easy to design. Further, because of the limitations of model checking, one is typically forced to limit the study of the abstracted model to certain scenarios, since normally only closed systems (where the environment is explicitly modelled) can be considered.. The trace package can automatically generate program models, using the graph model structure of trace data, which can be later checked using state-of-the-art model checkers. There are both drawbacks and advantages in this. First, of course, coverage of the total state space of the underlying program model will be limited by the actual interactions of the environment with the traced program. On the other hand constructing artificial, realistic, environments can sometimes be prohibitively difficult. To generate reasonable sized program models abstractions are of course required. Here our emphasis on tracing standard program components, with a clearly defined notion of a program state, can greatly help in defining the right abstractions, as does having access to visualization tools.. The trace package can output graphs, as well as linear trace data, in the Aldebaran format of the CADP tool set [5] .. State information is preserved, although this is strictly not supported by the format, so that error traces resulting from failed model checking attempts can be directly related to the generated program model and visualized using the daVinci graph visualization tool.. We have experimented with model checking the generated program models using the model checker for the alternationfree modal µ-calculus supplied with the tool set. Initial experiments are positive, although for the target audience (Erlang programmers) it could prove highly beneficial to support Erlang syntax in recognizing states and actions, instead of using regular expressions over strings as the CADP tool set does.

O B O B O O B O O O O O O O B B I O O B O O O O B O O O B B O B O O O O O O O O O B O O B I O O B O O O O O O O O O O O O O O B O O O B O O O O O O O O O O B O O O B O O O O O B O O B O O B O O B I O B B I O O O O O O O B I O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O B O O O O O O O O B O O O O O O O O O O O O O O B O O O O O O O O O O O O B O O O O O O O O O O O O B O O O O O O O O O O O B O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O B O O B B O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O B I O O O O B O O O O O O O O O O O B O O O O O O O O B O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O B O O O O O O O O O O O O O O O O O B O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O B O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O B O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O B O O O B I O O O O O O O O B O O O O O O O O B O O O O B I O O B O O O O O O O O O O O O O B O O O O O O O O O O B O O O O O O O B B O O O O O O O O O O O O O O O O B O O


Lock-free deques and doubly linked lists We present a practical lock-free shared data structure that efficiently implements the operations of a concurrent deque as well as a general doubly linked list. The implementation supports parallelism for disjoint accesses and uses atomic primitives which are available in modern computer systems. Previously known lock-free algorithms of doubly linked lists are either based on non-available atomic synchronization primitives, only implement a subset of the functionality, or are not designed for disjoint accesses. Our algorithm only requires single-word compare-and-swap atomic primitives, supports fully dynamic list sizes, and allows traversal also through deleted nodes and thus avoids unnecessary operation retries. We have performed an empirical study of our new algorithm on two different multiprocessor platforms. Results of the experiments performed under high contention show that the performance of our implementation scales linearly with increasing number of processors. Considering deque implementations and systems with low concurrency, the algorithm by Michael shows the best performance. However, as our algorithm is designed for disjoint accesses, it performs significantly better on systems with high concurrency and non-uniform memory architecture. A doubly linked list is a fundamental data structure and is used in kernel as well as user level applications. For example, doubly linked lists are often used for implementing the deque (i.e., doubly ended queue) or dictionary abstract data types. A general doubly linked list should support modifications and bidirectional traversal of a list of items. The items are not necessarily enumerable as they are only related through their relative position in the list. Thus, the data structure should at least support the following operations; InsertBefore, InsertAfter, Delete, Read, Next, Prev, First, and Last. A corresponding deque abstract data type should at least support the following operations; PushLeft, PushRight, PopLeft, and PopRight.. To ensure consistency of a shared data object in a concurrent environment, the most common method is mutual exclusion, i.e., some form of locking. Mutual exclusion degrades the system's overall performance [1] as it causes blocking, i.e., other concurrent operations cannot make any progress while the access to the shared resource is blocked by the lock. Mutual exclusion can also cause deadlocks, priority inversion and even starvation.. In order to address these problems, researchers have proposed non-blocking algorithms for shared data objects. Non-blocking algorithms do not involve mutual exclusion, and therefore do not suffer from the problems that blocking could generate. Lock-free implementations are non-blocking and guarantee that regardless of the contention caused by concurrent operations and the interleaving of their sub-operations, always at least one operation will progress. However, there is a risk for starvation as the progress of some operations could cause some other operations to never finish. Wait-free [2] algorithms are lock-free and moreover they avoid starvation as well, as all operations are then guaranteed to finish in a limited number of their own steps. Some researchers also consider obstruction-free [3] implementations, that are weaker than the lock-free ones and do not guarantee progress of any concurrent operation.. The implementation of a lock-based concurrent doubly linked list is a trivial task, and can preferably be protected by either a single lock or by multiple locks, where each lock protects a part of the shared data structure. To the best of our knowledge, there exist no implementations of wait-free doubly linked lists. Greenwald [4] presented a CAS2-based doubly linked list implementation. However, it is only presented in the form of a dictionary abstract data type and thus requires enumerable items, and is not disjoint-access-parallel -a property identified by Israeli and Rappoport [5] as crucial for avoiding bottlenecks and permitting actual performed parallelism. Moreover, CAS2 is not available in modern computer systems. Recently, Attiya and Hellel [6] presented a CAS2-based doubly linked list allowing more parallelism. Valois [7] sketched a lock-free doubly linked list implementation that is based on common atomic hardware primitives. However, it is not general as it does not support any delete operations.. Several lock-free implementations [8] [9] [10] [11] [12] of the deque abstract data type have been proposed that are based on the doubly linked list. However, these implementations do not support all operations necessary for a general doubly linked list data structure, or are based on atomic hardware primitives which are not available in modern computer systems. The deque implementation by Michael [12] requires CAS of double-width for supporting fully dynamic sizes and is not disjoint-access-parallel.. Sundell and Tsigas [13, 14] presented a practical lock-free deque implementation which can also support general doubly linked list operations. 2 The basic idea is to utilize the built-in redundancy of the doubly linked list and allow temporary inconsistency of the data structure while operations are performed on it. Afterwards, based on a very similar approach, Martin [15] designed an implementation of a lock-free doubly linked list specifically for the Java framework. This implementation has been adopted for use in a lock-free deque implementation in the Java concurrency package by Lea [16] . The basic technique of optimistic pointers has also been used consequently for the design of other data structures based on linked lists, e.g., a queue by Ladan-Mozes and Shavit [17] . However, the doubly linked list algorithm in [15] does not support traversals over deleted nodes 3 and do not guarantee that the underlying data structure is consistent 4 in both directions when it is idle. Recently Heller et al. [18] showed that it can be beneficial for linked list structures to allow concurrent threads to traverse over locked nodes (i.e., logically deleted nodes), a technique also exploited in a lock-free manner in [14, 19] .. In this paper we improve and extend on the algorithm by Sundell and Tsigas [14] , by presenting the general operations for a lock-free doubly linked list as well as operations for a deque abstract data type. The algorithm is implemented using common synchronization primitives that are available in modern systems. The underlying data structure is fully consistent when it is idle, and the algorithm supports bidirectional traversals also through deleted nodes. The improved algorithm is compatible 5 with the lock-free memory reclamation scheme by Gidenstam et al. [20, 21] , and thus the data structure is fully dynamic in size and there is an upper bound of the amount of memory occupied at any time. The algorithm, which also allows disjoint accesses on the data structure to perform in parallel, is described in detail later in this paper together with the aspects concerning the underlying lockfree memory management.. We have performed an empirical study to measure the performance and scalability of our algorithm under high contention. Experiments were performed on two different multiprocessor systems equipped with 32 or 48 processors respectively, equipped with different operating systems and based on different architectures. 2 Although the basic algorithm in the paper could support general doubly linked list operations, only operations related to the deque abstract data type were described, and only in the context of expensive reference counting methods for memory reclamation.. 3 When a traversal reaches a deleted node, the traversal must be restarted from one of the ends of the list. 4 It is corrected when a traversal reaches the inconsistent part of the data structure, however with possibly severe time penalties. 5 The algorithm in [14] contains recursive calls that made the use of hazard pointers infeasible as the maximum numbers of these would consequently be unbounded. The rest of the paper is organized as follows. In Section 2 we describe the type of systems that our implementation is aiming for. The actual algorithm is described in Section 3. In Section 4 we show the correctness of our algorithm by proving the lockfree and linearizability properties. The experimental evaluation is presented in Section 5. We conclude the paper with Section 6. We have presented the first lock-free algorithmic implementation of a concurrent doubly linked list that has all the following features: (i) it supports parallelism for disjoint accesses, (ii) uses a fully described lock-free memory management scheme, (iii) uses atomic primitives which are available in modern computer systems, (iv) allows pointers with full precision to be used and thus supports fully dynamic list sizes, and (v) supports deterministic and well defined traversals also through deleted nodes.. We have performed an empirical study of our new algorithm on two different multiprocessor platforms. Results of the experiments performed under high contention show that the performance of our implementation scales linearly with increasing number of processors. We have also performed experiments that compare the performance of our algorithm with two of the most efficient algorithms of lock-free deques known, using full implementations of those algorithms. The experiments show that our implementation performs significantly better on systems with high concurrency and non-uniform memory architecture.. We believe that our implementation is of highly practical interest for multi-processor applications. We are currently incorporating it into the NOBLE [34] library.

B O O O O O O O O O B B I I O O O O O O O B B O O O O O B I I O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O B O O O O O O O O O O O O O O O O O O B O O B O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O B O O O O O O B B I I O O O O O O O O O O O O O O O O O O O O O O O O O O B I I O O O O O O O O O O O O O O O O O O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I O O O O O O O B B I I O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O B O O O O O O O O O O O B I I O O O O O O O O O O O O B I I O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O B B O O O O O O B I I O O O O O O O O O O O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O B B I I O O O O O O O O O O O O O O B B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O B B I I O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O B B I I O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O


Energy optimisation of hybrid off-grid system for remote telecommunication base station deployment in Malaysia Cellular network operators are always seeking to increase the area of coverage of their networks, open up new markets and provide services to potential customers in remote rural areas. However, increased energy consumption, operator energy cost and the potential environmental impact of increased greenhouse gas emissions and the exhaustion of non-renewable energy resources (fossil fuel) pose major challenges to cellular network operators. The specific power supply needs for rural base stations (BSs) such as cost-effectiveness, efficiency, sustainability and reliability can be satisfied by taking advantage of the technological advances in renewable energy. This study investigates the possibility of decreasing both operational expenditure (OPEX) and greenhouse gas emissions with guaranteed sustainability and reliability for rural BSs using a solar photovoltaic/diesel generator hybrid power system. Three key aspects have been investigated: (i) energy yield, (ii) economic factors and (iii) greenhouse gas emissions. The results showed major benefits for mobile operators in terms of both environmental conservation and OPEX reduction, with an average annual OPEX savings of 43% to 47% based on the characteristics of solar radiation exposure in Malaysia. Finally, the paper compares the feasibility of using the proposed approach in a four-season country and compares the results against results obtained in Malaysia, which is a country with a tropical climate. The unexpected increase in subscribers and demand for high-speed data has led to tremendous growth in cellular networks in the last several years. In 2013, the number of mobile subscribers reached 6.8 billion [1] , of whom 1 billion were in rural areas (off-grid sites) [2] . To access these new markets and provide a service to potential customers in remote rural areas, the number of BSs has been increased to fulfil the needs of mobile subscribers and increase the coverage area. According to [3] , BSs are considered the primary source of energy consumption in cellular networks, accounting for 57% of the total energy used and putting the cellular operators under immense pressure to solve the problem of electricity supply in a reliable and cost-effective way. However, electrical grids are typically not available in these remote locations due to the geographical limitations (challenging terrain) that make access to these sites difficult. Therefore, supplying power to an off-grid BS is a significant challenge. Traditionally, a diesel generator (DG) is used to supply electrical power to a base station at an off-grid site [4] . Nevertheless, the concept of using DGs to power BSs has become much less viable for network companies looking to expand and deliver their services to potential new customers for the following reasons:. 1. Economic aspect: most of the costs go to the fuel, which is expensive, and the fuel price will continue to increase in the future. Additionally, the transfer of fuel to these remote places characterised by challenging terrain may require special means of transport, such as helicopters, which increases the cost of the operation [5] . Figure 1 presents the costs of operating DGs, which include the initial capital cost, installation cost, operating and maintenance (O&M) cost and fuel cost [6] . 2. Environmental impact: air pollution by harmful components emitted from diesel fuels such as carbon dioxide, sulphur dioxide and nitrogen oxides causes global warming, the depletion of the ozone layer, cancer, genetic mutations and acid rain. According to [7] , the ICT sector's CO 2 emissions will rise to 349 MtCO 2 by 2020, with 51% (179 MtCO 2 ) of the emissions coming from the mobile sector. Accordingly, increasing awareness of the environmental impact of greenhouse gas emissions and the exhaustion of non-renewable energy resources (fossil fuel) has highlighted the critical need to improve the energy efficiency of cellular networks. 3. Technical issues: the efficiency of the DG system is low, with only approximately 30% of the fuel energy being converted to electrical energy and the rest lost as heat [2] . In addition, BS sites supplied by DGs are not reliable; 65% of the telecom service losses are due to outages resulting from a variety of the failures from which these generators suffer [2] . When a failure occurs, the input of substantial time and money is generally required to bring a technician on site to perform the necessary repairs.. These drawbacks have motivated cellular network operators to search for solutions to both promote environmental conservation and reduce capital and operational costs. The specific power supply requirements for rural BSs, such as cost-effectiveness, efficiency, sustainability and reliability, can be met by utilising the technological advances in renewable energy. The network equipment deployed in these remote locations must be optimised so that they save energy while providing the best service with the largest coverage feasible. If network companies can install renewable energy supplies for their remote sites, they would gain access to hundreds of millions of potential new customers. Furthermore, by adopting renewable energy sources, network operators can reduce their operating expenses and have a positive impact on the environment via the reduction of harmful gas emissions.. The rest of this paper is organised as follows. Section 2 presents studies that have investigated the possibility of reducing both the OPEX and greenhouse gas emissions through the use of renewable energy systems in different zones of the world. Section 3 discusses the potential for using renewable energy to supply the BSs in remote places in Malaysia, and Section 4 describes the use of solar energy in Malaysia, including the characteristics of the solar radiation of Malaysia and the barriers to using solar photovoltaic (SPV) panels in Malaysia, as well as some recommendations. In Section 5, the system architecture for the hybrid power model to supply longterm evolution (LTE)-BS is described, and Section 6 presents the mathematical model. Section 7 briefly introduces the hybrid optimisation model for electric renewables (HOMER) software, a hybrid power system modelling tool used in this study, and Section 8 includes the simulation configuration. Section 9 presents the results and discussion. Section 10 presents the comparison and estimation of the feasibility of using the solar energy approach in Germany by using Malaysia as the central point of reference, and Section 11 concludes this paper. This study examined the feasibility of the integration of a solar power system with a DG to supply power to remote BSs in off-grid sites of Malaysia to minimise both the OPEX and carbon emissions. Three key aspects have been investigated: (i) energy yield analysis, (ii) economic analysis and (iii) greenhouse gas emissions. When the solar radiation rates increase, the energy produced from the solar power system will increase, which has the positive effect of reducing the emission of polluting gases and the operating cost of the system. In summary, the bulk of the initial cost of the system is the cost of the SPV due to its inherent high cost. Meanwhile, the bulk of the annual operating and maintenance costs go to the DG, and the bulk of the replacement cost goes to the DG and batteries. However, the average annual OPEX savings of the hybrid system was 43% to 47% depending on the solar radiation rate. Comparison between Malaysia and

O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O


A Hierarchical Compositional Model for Face Representation and Sketching Abstract-This paper presents a hierarchical-compositional model of human faces, as a three-layer AND-OR graph to account for the structural variabilities over multiple resolutions. In the AND-OR graph, an AND-node represents a decomposition of certain graphical structure, which expands to a set of OR-nodes with associated relations; an OR-node serves as a switch variable pointing to alternative AND-nodes. Faces are then represented hierarchically: The first layer treats each face as a whole, the second layer refines the local facial parts jointly as a set of individual templates, and the third layer further divides the face into 15 zones and models detail facial features such as eye corners, marks, or wrinkles. Transitions between the layers are realized by measuring the minimum description length (MDL) given the complexity of an input face image. Diverse face representations are formed by drawing from dictionaries of global faces, parts, and skin detail features. A sketch captures the most informative part of a face in a much more concise and potentially robust representation. However, generating good facial sketches is extremely challenging because of the rich facial details and large structural variations, especially in the high-resolution images. The representing power of our generative model is demonstrated by reconstructing high-resolution face images and generating the cartoon facial sketches. Our model is useful for a wide variety of applications, including recognition, nonphotorealisitc rendering, superresolution, and low-bit rate face coding. In conclusion, we present a hierarchical-compositional representation for modeling human faces in the form of an AND-OR graph model, which simultaneously account for the face regularity and dramatic structural variabilities caused by scale transitions and state transitions. Experiment had shown that our model helps reconstruct face images with great structural variations and rich details and facilitates the generation of vivid cartoon sketches. We can also generate stylish sketches by learning the dictionaries from artistic drawings [5] , or produce lively cartoon animations from video [44] . Another interesting future work is to synthesize the images from sketches. H UMAN faces have been extensively studied in vision and graphics for a wide range of tasks from detection [33] , [38] , recognition [14] , [17] , [26] , [41] , [31] , tracking [35] , expression [30] , [37] , animation [16] , [2] , superresolution [3] , [22] to nonphotorealistic rendering [5] , [18] , [29] , [36] , with both the discriminative [5] , [16] , [32] and generative models [8] , [13] , [16] , [26] , [31] . Most existing models were designed only for certain image scale and mainly aimed at faces of small or medium resolutions. These models, though successful in specific problem domains, do not account for rich facial details that appear on the high-resolution or aged faces. These details are very useful for identification and extremely important for generating vivid facial sketches. Furthermore, in addition to the geometric and photometric variabilities, the structural variations are also widely observed for human faces across different expressions, genders, ages races (see Fig. 1a ), and over multiscales (see Fig. 1b ) but rarely addressed comprehensively by the existing methods. Such variations include the structure transforms of facial parts in extreme expressions (e.g., scream or wink) and the appearance of new facial features (e.g., wrinkles and marks) due to aging and scale transition. To overcome the limitations of existing models, we find it necessary to introduce a flexible multiresolution representation of human faces, which can capture fine facial details and account for large structural variations. In computer vision, numerous methods had been proposed to model human faces. Zhao et al. suggested [41] that following the psychology study of how human use holistic and local features, existing methods can be categorized as 1) global [7] , [8] , [13] , [16] , [31] , [2] , 2) feature-based (structural) [10] , [17] , [32] , [33] , [34] , [40] , and 3) hybrid [14] , [26] methods. Early holistic approaches [13] , [31] used intensity pattern of the whole face as input and modeled the photometric variation by linear combination of the eigenfaces. These PCA models 2. An illustration of the three-layer face AND-OR graph representation. The dark arrows and shadow nodes represent a composition of seven leaf nodes hBrowT ype2ðL=RÞ; EyeT ype3ðL=RÞ; SkinT ype1; NoseT ype2; MouthT ype1i, each being a subtemplate at the medium-resolution layer. This generates a composite graphical template (at the bottom) representing the specific face configuration with the spatial relations (context) inherited from the AND-OR graph.. cannot efficiently account for the geometric deformation and require images to be well aligned. Some later work separately modeled the shape and texture components of faces, e.g., the AAM [8] , [35] and Morphable Models [16] , [2] . Although these well-known methods captured some geometric and photometric variations, they are limited from handling large-scale structural variations due to the linear assumption and fixed topology. To relax the global constraint, some componentbased/structural models were presented, including the Pictorial Model [10] , Deformable Templates [40] , Constellation Model [34] , and Fragment-based Model [32] . These models first decompose faces into parts in supervised or unsupervised manners, then the intensity patterns of parts are modeled individually, and the spatial relations among parts were modeled jointly. In addition, there are some hybrid methods [14] , [26] , which corporate the global and local information to achieve better results. However, in spite of the greater structural flexibility over the global methods, these models have their own limitations: 1) in contrast to the hierarchical transforms that we observed during the scale/resolution changes of face images, the structures of these models are flat and without scale transitions to account for the emergence of new features (e.g., marks or wrinkles), 2) the topologies of these models are fixed and cannot account for structural changes caused by state transitions of the parts (e.g., opening or closing eyes), and 3) the relations among parts are usually modeled by global Gaussian or pairwise Gaussians and, therefore, the flexibilities are limited.. To model the scale variabilities, some researchers construct a Gaussian/Laplacian pyramid from the input image [20] and encode images at multiple resolutions. Others model each object as one point in the high-dimensional feature space and increase the dimension to match the augmented complexity [21] . Both methods are inefficient and inadequate for human faces, where dramatic variabilities are exhibited due to the absence of feature semantics and lack of structural flexibility. We thus call for meaningful features that are specially designed for different scales/resolutions. In any case, constraints and relations on these features shall be enforced to form valid configurations while still maintaining considerable (structural/geometric/photometric) flexibilities. Ullman et al. proposed Intermediate Complexity [32] as a criterion for selecting the most informative features. Their learned image fragments of various sizes and resolutions incidentally support our use of the three-layer dictionary: faces, parts, and primitives. Similar to the AAM models, each element in our dictionary is governed by a number of landmark points to allow more geometric and photometric variabilities, where the landmark number is determined by complexity of the element. For each part (e.g., mouth), we allow selecting from a mixture of elements (e.g., open or closed mouth) and enforce the structural flexibility during state transitions. In addition, a coarse element expands to a subgraph of finer elements and accounts for the structural change during scale transitions. The selections and expansions are then implemented using the AND-OR graph model. While the original AND-OR graph was introduced by Pearl as an AI search algorithm [24] (1984), our model is more similar to some recent works by Chen et al. [6] and Zhu and Mumford [43] . The AND-OR graph that we use is shown to be equivalent to a Context Sensitive Grammar (CSG) [28] , which integrates the Stochastic Context Free Grammar (SCFG) [11] and Markov Random Field (MRF) [42] models.. With the ability to represent large structural variations and capture rich facial details, our model facilitates the generation of facial sketches for face recognition [37] and nonphotorealistic rendering [18] , [36] . Supported by psychology studies [4] , it is known that sketch captures the most informative part of an object, in a much more concise and potentially robust representation (e.g., for face caricaturing, recognition, or editing). Related work includes [29] and [5] . The former renders facial sketches similar to high-pass filtered images by combining linear eigensketches and does not provide any highlevel description of the face. Constrained on an Active Shape Model (ASM) [7] , the latter generates facial sketches by collecting local evidences from artistic drawings in the training set and lack of structural variations and facial details.

O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O


SAGE:

String-overlap

Assembly

of

GEnomes

Background:

De

novo

genome

assembly

of

next-generation

sequencing

data

is

one

of

the

most

important

current

problems

in

bioinformatics,

essential

in

many

biological

applications.

In

spite

of

significant

amount

of

work

in

this

area,

better

solutions

are

still

very

much

needed.

Results:

We

present

a

new

program,

SAGE,

for

de

novo

genome

assembly.

As

opposed

to

most

assemblers,

which

are

de

Bruijn

graph

based,

SAGE

uses

the

string-overlap

graph.

SAGE

builds

upon

great

existing

work

on

string-overlap

graph

and

maximum

likelihood

assembly,

bringing

an

important

number

of

new

ideas,

such

as

the

efficient

computation

of

the

transitive

reduction

of

the

string

overlap

graph,

the

use

of

(generalized)

edge

multiplicity

statistics

for

more

accurate

estimation

of

read

copy

counts,

and

the

improved

use

of

mate

pairs

and

min-cost

flow

for

supporting

edge

merging.

The

assemblies

produced

by

SAGE

for

several

short

and

medium-size

genomes

compared

favourably

with

those

of

existing

leading

assemblers.

Conclusions:

SAGE

benefits

from

innovations

in

almost

every

aspect

of

the

assembly

process:

error

correction

of

input

reads,

string-overlap

graph

construction,

read

copy

counts

estimation,

overlap

graph

analysis

and

reduction,

contig

extraction,

and

scaffolding.

We

hope

that

these

new

ideas

will

help

advance

the

current

state-of-the-art

in

an

essential

area

of

research

in

genomics.

Myers

suggests

that

string-overlap

graph

based

assemblers

should

perform

better

than

those

based

on

the

de

Bruijn

graph

and

our

work

aims

at

supporting

his

prediction..

SAGE

builds

upon

great

existing

work

and

brings

several

new

ideas,

such

as

the

efficient

computation

of

the

transitive

reduction

of

the

string

overlap

graph,

the

use

of

(generalized)

edge

multiplicity

statistics

for

improved

estimation

of

copy

counts,

and

the

improved

use

of

mate

pairs

and

flow

for

supporting

edge

merging..

We

believe

that

our

work

shows

that

the

potential

of

string-overlap

graph-based

assemblers

is

higher

than

previously

thought.

SAGE

is

currently

able

to

successfully

handle

short

and

medium-size

genomes

but

future

versions

will

handle

mammalian

genomes

as

well.

Also,

we

plan

to

work

on

reducing

the

number

of

misassemblies

produced

by

SAGE..

We

hope

that

some

of

the

ideas

presented

will

be

used

also

by

others

in

order

to

boost

the

development

of

this

type

of

assemblers

and

further

improve

the

current

stateof-the-art.

As

read

length

is

going

to

grow,

we

expect

that

string-overlap

graph-based

assemblers

will

have

a

better

chance

to

improve.

The

algorithms

used

in

SAGE

are

described

here.

Some

of

the

existing

ideas

are

included

as

well

in

order

to

give

a

complete

description.

O O O O O O B I I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I I O O O O O O O O O O O O O O B I O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O


Mining hepatitis data with temporal abstraction The hepatitis temporal database collected at Chiba university hospital between 1982-2001 was recently given to challenge the KDD research. The database is large where each patient corresponds to 983 tests represented as sequences of irregular timestamp points with different lengths. This paper presents a temporal abstraction approach to mining knowledge from this hepatitis database. Exploiting hepatitis background knowledge and data analysis, we introduce new notions and methods for abstracting short-term changed and long-term changed tests. The abstracted data allow us to apply different machine learning methods for finding knowledge part of which is considered as new and interesting by medical doctors. Hepatocellular carcinoma (HCC) is the most common type of liver cancer and the fifth most common cancer in the world. About three quarters of the cases of HCC are found in Southeast Asia. HCC is also very common in sub-Saharan Africa. The exact cause of HCC is unknown. Viruses such as hepatitis B and hepatitis C have been shown to increase the risk of HCC [11] , and finding knowledge in the hepatitis domain is a challenging task in medical research.. The hepatitis temporal database collecting from 1982 to 2001 at the Chiba university hospital was given recently to challenge the data mining research [14] . This database contains results of 983 laboratory tests of 771 patients. It is a large un-cleansed temporal relational database consisting of six tables of which the biggest has 1.6 million records. Collected during a long period with progress in test equipments, the database also contains inconsistent measurements, many missing values, and a large number of non unified notations. The doctors posed a number of problems on hepatitis that are expected to be investigated by KDD techniques.. Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Temporal abstraction (TA) is one approach to deal with timerelated data in medicine research. The key idea is to transform time-stamp points by abstraction into an interval-based representation of data. Typical works on temporal abstraction are those in [1] , [3] , [8] , [10] , [16] . Temporal abstraction can be generally considered in two phases: basic temporal abstraction that concerns with abstracting time-stamped data within episodes, and complex temporal abstraction that concerns with temporal relationships between findings from a basic temporal abstraction or from other complex temporal abstractions. The findings in a basic temporal abstraction usually consist of state of a patient on a test within an episode (e.g., low, normal, high values) and trend of the patient (e.g., increase, decrease, stationary patterns), see [8] , [17] .. The common points in existing methods of temporal abstraction are they were developed for short periods and/or irregular timestamp points. The work in [1] , [3] related to temporal data of an individual measured on consecutive days in a short period. The work in [10] on insulin-dependent diabetes related to temporal data measured on consecutive days within two weeks. The work in [8] on artificial ventilation of newborn infants related to temporal regularly measured every minute. However, the main feature of the hepatitis database is it contains long-term and irregular temporal sequences.. The difficulty in mining the hepatitis database mainly lies in the fact that the patient's data were gathered from many laboratory tests in different periods, varying from several weeks to more than twenty years, and most of them are taken at irregular timestamped points. Each problem of P1-P6 requires a special subdataset derived from the original hepatitis database. This paper presents our temporal abstraction approach to such long-term and irregular temporal sequences in the hepatitis database. Different from separately finding "states" and "trends" as in related work, we introduce the notion of "changes of state" to characterize the long-term changed tests, and the notions of "base state" and "peaks" to characterize the short-term changed tests, as well as algorithms to detect them. Parts of obtained results are evaluated by medical doctors as new and interesting.. In section 2 we briefly describe the mining problems and our temporal abstraction framework for mining problems in the hepatitis domain. Section 3 presents methods and results of basic temporal abstraction. Section 4 presents methods and results of complex temporal abstraction. Section 5 provides a discussion and conclusions. Generally, we distinguish two common approaches to deal with numerical temporal sequences in machine learning: (1) methods that directly process temporal data in its original form, and (2) methods that transform temporal data into symbolic one then process transformed data with suitable mining methods for symbolic data. We adopted the second approach because that the problems P1-P6 are concerned with typical clinical tasks where physicians need to contemporaneously examine and combine significant findings on parameters, to abstract such findings into clinically meaningful higher-level concepts, and to detect significant trends in temporal data and abstract concepts. The findings with abstraction are usually easier to intuitively understand, and abstraction usually can uncover essential features by forgetting details. A meaningful abstracted concept could use data points and characterizes significant features over periods of time. We have presented a temporal abstraction approach to mining the temporal hepatitis data. From the results obtained so far, several lessons have been learned and in some issues could be further investigated.. Temporal abstraction provides many advantages in mining temporal data, and typically suitable for many clinical tasks in medicine. It is because when people can easily collect and measure numerical patient data on electronic media, they also need to be able to answer queries about abstract concepts that summarize the data. The difficulty encountered here is that often the abstraction gap between the highly specific, raw patient data and the highly abstract medical knowledge does not permit any direct unification between data and knowledge. While many machine learning methods have been developed and well applied to symbolic domains, most of them cannot be applied to temporal domains. Temporal abstraction, if it can yield meaningful abstractions, could allow us to apply symbolic learning methods to temporal data.. The temporal abstraction approach in our work differs from related temporal abstraction approaches in two points: the irregular data-stamped points and abstraction of multiple variables. Different from related work, the irregularity in measuring the hepatitis data requires a careful statistical analysis basing on and combining with the expert's opinion, in particular in the determination of episodes. Concerning the latter, different from the above-mentioned applications [1] , [8] , [10] that related to only one temporal variable, the hepatitis study simultaneously requires considering multiple variables. The complex temporal abstraction done by data mining methods in D2MS allows us to discover combinations of basic temporal abstractions that characterize description patterns. Our data mining methods with temporal abstraction can be applied to other domains where we need process similar temporal data.. The interactive and visual system D2MS provides us a powerful tool for complex temporal abstraction not only in combining obtained abstractions but also in visualizing them in order to give a understanding of relationships between basic temporal abstractions. Not only D2MS, See5, and Clementine but many other machine learning methods can be applied to the abstracted data to find other kinds of new patterns/models in the hepatitis domain.. The temporal abstraction approach presented in this paper is carried out in the scope of an on going project in collaboration with medical doctors. The issues to be investigated in the next step include refinement of abstracted patterns (says, positions of peaks), the post-processing and interpretation of obtained complex temporal abstractions. In particular, a careful analysis of the interestingness of obtained results from the statistical standpoint is under investigation by data miners and medical experts. Also, an investigation of temporal patterns that pertain to the behavior of multiple variables is being considered.

O B I O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O B I O O O O O O O O B I O O O O O O O O O O B I O O O O O O O O O O B I O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O B I O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O B I O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O B I O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O