Task Assignment in a Heterogeneous Server Farm with Switching Delays and General Energy-Aware Cost Structure We consider the task assignment problem to heterogeneous parallel servers with switching delay, where servers can be switched off to save energy. However, switching a server back on involves a constant server-specific delay. We will use one step of policy iteration from a starting policy such as Bernoulli splitting, in order to derive efficient task assignment (dispatching) policies that minimize the long-run average cost. To evaluate our starting policy, we first analyze a single work-conserving M/G/1 queue with a switching delay and derive a value function with respect to a general cost structure. Our costs include energy related switching and processing costs, as well as general performance-related costs, such as costs associated with both means and variability of waiting time and sojourn time. The efficiency of our dispatching policies is illustrated with numerical examples. In task assignment (dispatching) problems, arriving jobs are assigned to available servers immediately upon arrival. In the basic setting, these servers are modelled as work-conserving queues with a constant service rate. Task assignment problems arise, e.g., in transportation (e.g., street toll booths), manufacturing systems, (data) traffic routing, super computing, cloud computing, data centers (e.g., web server farms) and other distributed computing systems. A typical objective is to minimize the mean waiting time or the mean sojourn time (i.e, response time, latency or delay, where the terminology varies with the application). Recently, energy consumption, e.g., in data centers and distributed computing in general, has become an important consideration. Therefore, in this paper we assume that the general cost structure includes energy consumption related costs in addition to the usual performance metrics such as the mean sojourn time. Moreover, we consider a model where a server can be switched off in order to save energy. However, switching a server back on is assumed to take a certain setup time d during which no job can be served, and may incur a cost. The optimal dispatching policy finds an appropriate trade-off between the criteria of minimizing energy costs while maximizing customer satisfaction.. We approach this challenging problem in the framework of Markov decision processes (MDP) [1] [2] [3] . First we consider an isolated M/G/1 queue with a switching delay and derive the so-called size-aware value functions with respect to different terms in the cost structure. We consider two types of costs: (i) costs defined by a rate (e.g., energy consumption) and (ii) immediate costs (e.g., switching the server on or off). For some quantities such as the waiting time, it is possible to define the cost either as a cost rate (i.e., the number of waiting jobs) or as an immediate cost (the waiting time becomes known upon an arrival to a FCFS queue). We will utilize both conventions in this paper.. The value functions characterize the difference in the long-term mean costs between initial states. Using the value functions as inputs to the MDP-based heuristics of first policy iteration (FPI) and lookahead, we derive energy-and state-aware dispatching policies, which also take into account the switching delays in the servers. The resulting policies are evaluated and illustrated in numerical examples.. In this paper, we extend earlier results [4, 5] for the M/G/1 queue in several respects. First, we include a switching delay, which is an important system characteristic when, e.g., a server in a data center is switched off in order to save energy. Second, we also consider general holding cost functions, and derive explicit expressions for the second moments of the waiting time and sojourn time, which allow one to improve fairness in the system. Moreover, the energy consumption model also includes switching costs and is thus more comprehensive than in [6] . The new results are the size-aware value functions for the M/G/1 queues, when the objective is to minimize the (mean) backlogs, waiting times, sojourn times, or any combination of thereof (as well as higher moments). These results also yield the corresponding value functions for a system of parallel servers (our model for a server farm) operating under any static policy, which are prerequisites for the efficient dynamic policies via the FPI and Lookahead approaches. We have studied the classical dispatching or task assignment problem, where arriving jobs are immediately routed to one of several available parallel servers. Because of the current concern about energy consumption, and in contrast to traditional models, we assume that the servers can be switched off in order to save energy. The downside is that there is also a server-specific switching delay, i.e., switching Server i back on takes a certain time d i (e.g., the boot time of a server). Further, we assume a rather general cost structure, which includes both the server specific running and switching costs, as well as performance-specific metrics such as waiting time and sojourn time, including their second moments (as a measure of fairness).. Our analysis of the value functions for a single M/G/1 queue with a switching delay generalizes earlier results that considered only first moments and did not include switching delay. The value functions enable us, by means of FPI and Lookahead, to develop efficient state-dependent dispatching policies, which take into account the switching delay, the cost structure and future arrivals. In the numerical examples, the FPI and Lookahead based policies consistently achieved the lowest mean cost rates. FPI is only the first (albeit often the most significant) step towards the optimal policy. Our future work includes analyzing the settings where the optimal energy-aware dispatching policies can be developed. Dispatching problems have been studied extensively in the literature. Within each queue, first-come-first-served (FCFS) scheduling is usually assumed, but other scheduling disciplines have also been studied. Only a few optimality results are known for the dispatching problems, and these generally require homogeneous servers. In general, the optimal decision depends on the available information.. Round-Robin (RR), followed by FCFS, is shown to be the optimal policy when it is only known that the queues were initially in the same state, and the dispatching history is available [7] [8] [9] .. Crovella et al. [10] and Harchol-Balter et al. [11] assume that the dispatcher is aware of the size of a new job, but not of the state of the FCFS queues, and propose Size-Interval-Task-Assignment (SITA) policies, where each queue receives the jobs within a certain size interval (e.g., short jobs to one queue, and the rest to another). Feng et al. [12] later showed that SITA is the optimal size-aware static policy for homogeneous servers.. When the number of tasks per server is available, the intuitive Join-the-Shortest-Queue (JSQ) policy assigns a new job to the server with the fewest tasks. Assuming exponentially distributed interarrival times and job sizes, and homogeneous servers, [13] shows that JSQ with FCFS minimizes the mean waiting time. Since then the optimality of JSQ has been shown in many other settings [7, [14] [15] [16] [17] [18] . Recently, Akgun et al. [19] , have shown the optimality of JSQ for G/M/1 queues under very general assumptions. In contrast, Gupta et. al consider JSQ with the processorsharing (PS) scheduling discipline in [20] . Whitt [21] , on the other hand, provides several counterexamples with non-exponential services where the JSQ/FCFS policy is not optimal, even when servers are homogeneous.. If the queue-specific backlogs (unfinished work, workload) are available, then the Least-Work-Left (LWL) policy chooses the queue with the smallest backlog, i.e., it is the greedy (myopic) policy minimizing the waiting time of the new job. Interestingly, the M/G/k system with a central queue is equivalent to LWL, which means that at no time instance, a server is idle at the same time when a job is waiting in some queue. Daley [22] , based on Foss's work [23] , has shown that G/G/k (i.e., LWL with general inter-arrival times) stochastically minimizes both the maximum and total backlog with identical servers at an arbitrary arrival time instance. In contrast, the counterexample given by Stoyan [24] shows that pathwise RR can yield both a lower waiting time and a lower total backlog (at arrival times).. In general, simple policies such as RR, JSQ and LWL will no longer be optimal when there is switching delay, even in the case of homogeneous servers. Using one step of policy iteration (FPI) in the MDP framework is a promising approach to developing good heuristics for the dispatching problems with heterogeneous servers. Krishnan [25] has utilized it for minimizing mean sojourn time with parallel M/M/s-FCFS servers. See also Aalto and Virtamo [26] . Recently, FCFS, LCFS, SPT and SRPT queues were analyzed in [4, 5] with a general service time distribution. Similarly, PS is considered in [27, 28] . The key idea with the above work is to start with an arbitrary static policy, and then carry out the first policy iteration (FPI) step utilizing the value functions (relative values of states). This general approach is due to Norman [29] . See also [30, 31] for M/G/1 and M/Cox(r)/1, and [32, 33] for blocking systems.. Server farms with switching delays have only been considered recently, and only for homogeneous servers. Artalejo et. al [34] give steady-state results for an M/M/k with setup delays, where idle servers are switched off and at most one server can be in an exponentially distributed setup phase. Gandhi and Harchol-Balter [35] consider an M/G/k with an exponential setup delay and give an exact formula for the mean sojourn time in an M/M/k also assuming that at most one server can be undergoing the switching on process. In [36, 37] switch idle servers off with at most one server undergoing the switching on (as in [34, 35] ). Similarly, Mitrani [38] also considered a scheduling problem with a central queue. In contrast, Maccio and Down [39] considered different switching on/off extensions to an M/G/1 and then applied random routing in the multi-server context. Finally, Wierman et. al [40] consider a capacity management problem in a longer time scale, for which they give rules based on the variations in the arrival rate.. In contrast, switching off a server is understood much better in the context of single-server queues. In addition to switching delay vacation models and removable servers have been used to describe systems where the server is not necessarily readily available. Welch [41] considers an M/G/1 queue in which the service time of the first customer (a customer arriving to an empty system) obeys a different distribution than the service time of the other customers (customers arriving to a busy system). The Laplace-Stieltjes transform (LST) is derived for the waiting and sojourn times. As a special case, one obtains the M/G/1 queue with switching on delay. We note that it is straightforward to generalize our results on the different value functions to this more general setting. See also Bischof [42] for an analysis of the M/G/1 queue with vacations and setup times. In [43] , Hassan and Atiquzzaman also consider an M/G/1 queue with delayed vacation and setup time. That is, a server waits a certain time T after the last job has departed before it is switched off. Once switched off, there is a switching on delay C. Explicit expressions for the mean waiting time and the rate of busy cycles are derived.. In the above work, the additional delay is assumed to be a given property of the system, whereas Artalejo [44] considers minimization of different cost functions by delaying the start of service according to N, T and D policies. With these control policies, the server is switched off when the last customer departs. With N policy, the service starts once the number in queue exceeds N [45, 46] , and with D policy, when the backlog exceeds D. T policy, on the other hand, activates the server T time units after the end of the last busy period [47] . See also [48, 49] for overviews.

B I O O O O O O O O O O B O O O O O B I 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 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 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 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 B 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 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 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 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 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 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 B 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 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 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 O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O 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 O O O O O O O O O O O O O O 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 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


Design and Evaluation of a High Throughput QoS-Aware and Congestion-Aware Router Architecture for Network-on-Chip Abstract-This paper proposes a novel QoS-aware and congestion-aware Network-on-Chip architecture that not only enables quality-oriented network transmission and maintains a feasible implementation cost but also well balance traffic load inside the network to enhance overall throughput. By differentiating application traffic into different service classes, bandwidth allocation is managed accordingly to fulfill QoS requirements. Incorporating with congestion control scheme which consists of dynamic arbitration and adaptive routing path selection, high priority traffic is directed to less congested areas and is given preference to available resources. Simulation results show that average latency of high priority and overall traffic is improved dramatically for various traffic patterns. Cost evaluation results also show that the proposed router architecture requires negligible cost overhead but provides better performance for both advanced mesh NoC platforms. Multi-core integrated circuit designs have been proposed and proven a prevailing architecture recently. Multiprocessors (CMPs) such as 64-core SoC and 80-core NoC architecture [6] [33] were presented to pave the way to networkbased interconnection network design. NoC interconnection scheme has been demonstrated as a better solution because of superior performance and fault tolerance characteristics [7] [11] . NoC interconnection architecture uses a distributed control mechanism, providing a scalable interconnection network.. A multiprocessor system platform called Network-based Processor Array (NePA) has recently developed [5] , in which processors are interconnected by using an on-chip two-dimensional (2D) mesh network. NePA is a deadlockfree and livelock-free network that implements wormhole packet switching technique and utilizes an adaptive minimal routing algorithm. Because of the limitation of traditional 2D mesh topology, additional alternative routing resources which provide more network tolerance are employed to further improve the performance of NePA architecture. Moreover, diagonal links for the 2D mesh network are proposed to improve throughput and performance because of the emergence of X-architecture routing technique in chip manufacturing [14] [30] . The proposed NoC architecture referred to as Diagonally-linked Mesh (DMesh) employs diagonal express links between routers on a baseline NePA network. Diagonal links not only reduce the distance between source and destination nodes, but also help alleviate network congestion so that network performance is enhanced dramatically [37] .. Adaptive routing algorithms has been employed in multichip interconnection networks as means to improve network performance and to tolerate link or router failures. However, congestion in interconnection networks is a well-known phenomenon. This work utilized a congestion control scheme to provide adaptive routing arbitration control and thus exploit available routing resources efficiently. This allows avoiding control beyond target baseline adaptive routing algorithm which can adaptively balance traffic load and increase NoC overall throughput by intelligently allocating existing resources. Quality-of-Service (QoS) provision supports differentiated service classes among various applications and can further improve utilization efficiency of network bandwidth. Instead of original approaches of adding abundant buffers or virtual channels (VCs), the proposed mechanism featuring congestion avoidance scheme and QoS ability facilitates differentiated service transmission while maintaining a high throughput tolerance.. The rest of the paper is organized as follows. Section II summarizes related work in on-chip interconnection networks. Section III describes an overview of NePA and DMesh NoC platforms. Section IV proposes an innovative router design with congestion-aware and QoS-aware router scheme. Section V shows performance and cost evaluation of the proposed architecture. Concluding remarks are provided in Section VI. Current high-performance routers demand congestion management and QoS provision for boosting network performance and supporting differentiated services. Flexible router design and adaptive routing algorithm not only effectively exploit routing resources, but also support more advanced features to accommodate versatile application traffic traces. Fully adaptive routing, parallel buffers and congestion-aware routers alleviate congestion and enhance NoC performance in terms of latency and throughput. QoS-aware routing without multiple PBs provides acceptable performance improvement for GT traffic. Routers with multiple PBs further provide guaranteed transmission performance. Experimental results showed that performance improvement is considerable and implementation cost overhead is moderate for both NePA and DMesh platforms. With alternative links employed between routers, DMesh demonstrated significant performance enhancement for GT and overall traffic. Congestion control: Congestion management was proposed to prevent networks from saturation and improve the throughput in NoC. Buffer and link status are two of the most popular ways to indicate the existence of network congestion [28] [31] [32] . A congestion-aware routing algorithm is targeted to evenly distribute traffic load over the network. For instance, a self-optimized routing strategy [31] decides a favorable path for incoming packets based on buffer load information. A proximity congestion awareness technique is proposed to avoid congested areas based on the use of stress values which are passed from neighboring switches [26] . Both techniques attempt to divert packets from hot spots in the network. A contention-aware input selection algorithm which gives priority to incoming packets from congested areas was proposed to alleviate congestion in upstream area [38] . An application-aware congestion control algorithm in on-chip bufferless networks is proposed by making proper throttling decisions [27] .. In order to design a lightweight congestion-aware NoC router, an approach based on dynamic port arbitration to resolve congestion and adaptive output path selection to distribute traffic load efficiently was devised [36] . This work utilized this methodology to relax congestion situation.. QoS provision: QoS is commonly achieved by providing each traffic class with a separate virtual channel, either in a time-division multiplexing [13] [23] or dynamic virtual channel allocation [15] [16] manner. Networks providing guaranteed throughput (GT) and best effort (BE) services use VC reservation methodology. The AEthereal is a NoC that provides GT that is connection-oriented and BE that use non-reserved time slots, and it supports statical and dynamic allocation of slots [12] . The MANGO [8] is another NoC that provides connectionless BE routing and connection-oriented guaranteed services (GS). Another implementation example adopts deterministic dimension order source routing strategy and assigns priority to GT traffic. BE packets are allocated in a round robin manner if GT associated virtual channels (VCs) are empty [35] . A customized QoS NoC (QNoC) which classifies service into four classes: signaling; realtime; RD/WR and block transfer was proposed. There are individual buffers to store different classes of traffic and bandwidth are allocated accordingly [9] .. Although multiple VCs are implemented to support more service levels, these designs increase switch complexity and arbitration delay. A area-efficient design using two VCs at switches was presented to provide full QoS support, which demonstrates a more than acceptable performance and meets the low cost need of NoC stringent implementation requirement [20] [22] . The trend of providing sufficient adaptive routing or fault tolerance is to increase the number of ports instead of increasing the number of VCs per port was also indicated [22] [24] .. Hybrid mechanism: Routers with congestion management and QoS provision generally require a high number of buffers at switch ports, so the implementation cost is high and therefore prohibits their adoption of NoCs. An interconnection network architecture combining both technologies has been proposed recently [19] [21] . Regional Explicit Congestion Notification (RECN) which needs no VCs and QoS-aware design with two VCs dramatically reduce resources requirement and design complexity. The combined architecture demonstrates cost efficiency and performance improvement.. This work integrated QoS provision and congestion-aware routing algorithm in an efficient way to facilitate packet transmission and enhance throughput for NoC routers.

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 O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O 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 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 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 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 O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O 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 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 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 B O O O O O O O O O O O O O O O O


The cost of getting local monotonicity Abstract. In [15] Manfred Holler introduced the Public Good index as a proposal to divide a public good among players. In its unnormalized version, i.e., the raw measure, it counts the number of times that a player belongs to a minimal winning coalition. Unlike the Banzhaf index, it does not count the remaining winning coalitions in which the player is crucial. Holler noticed that his index does not satisfy local monotonicity, a fact that can be seen either as a major drawback [9, 221 ff.] or as an advantage [16] .In this paper we consider a convex combination of the two indices and require the validity of local monotonicity. We prove that the cost of obtaining it is high, i.e., the achievable new indices satisfying local monotonicity are closer to the Banzhaf index than to the Public Good index. All these achievable new indices are more solidary than the Banzhaf index, which makes them as very suitable candidates to divide a public good.As a generalization we consider convex combinations of either: the Shift index, the Public Good index, and the Banzhaf index, or alternatively: the Shift Deegan-Packel, Deegan-Packel, and Johnston indices. Consider a set of players who jointly make decisions under a given set of rules. Here we specialize to simple games and subclasses thereof. Power indices address the question of how much power collective decision rules, like a weighted (voting) rule, award to each individual player: is player i more or less powerful than player j, and by how much? For an example of an applied voting power analysis in the EU, we refer the interested reader to e.g. [1, 6, 32] .. Different power indices measure different aspects of power and there is still a lot of research in order to answer the question which index to choose, see e.g. [17] . For a recent overview of different power indices see e.g. [5] . Many of these indices are based on decisiveness. A player is called decisive in a coalition if his/her deletion in the coalition changes its status from winning to losing, so that the individual is decisive or crucial for it. All power indices, the classical and the newly introduced ones, considered in this paper are indeed based on counting different types of decisiveness for players in coalitions.. Some particular rules, weighted games, specify that each player i = 1, . . . , n has a specific voting weight w i and that a collective decision requires enough supporters such that their total weight equals or surpasses a decision quota q. Let p i be the power value assigned to player i by a power index. The power index is called locally monotonic if w i ≥ w j implies p i ≥ p j , i.e., a player i who controls a large share of vote does not have less power than a player j with smaller voting weight. Local monotonicity is considered as an essential requirement for power measures by many authors. Felsenthal and Machover [9, 221 ff.], for instance, argue that any a priori measure of power that violates local monotonicity, LM for brevity, is 'pathological' and should be disqualified as serving as a valid yardstick for measuring power. On the other hand e.g. in [16] it is argued that local non-monotonicity is a very valuable property of a power index, since it can reveal certain properties of the underlying decision rule that are overlooked otherwise.. Local monotonicity is an implication of the dominance postulate which is based on the desirability relation as proposed by Isbell [20] . This property formalizes that a player i is at least as desirable as a player j if for any coalition S, such that j is not in S and the union of S and {j} is a winning coalition, i.e., is able to pass the collective decision at hand, the union of S and {i} is also a winning coalition. A power index satisfies dominance if p i ≥ p j whenever i dominates j.. Freixas and Gambarelli [10] use desirability to define reasonable power measures and note that the dominance postulate implies local monotonicity. In this paper we will consider the Public Good, the Banzhaf, the Shift, the Shift Deegan-Packel, the Deegan-Packel, the Johnston index and convex combinations thereof. Since the Deegan-Packel index [7] , and the Public Good Index (see Holler [15] ; Holler and Packel [19] ) violate local monotonicity, they also violate the dominance postulate. Moreover, any violation of local monotonicity for the Deegan-Packel index implies a violation of the Shift Deegan-Packel index (see [3] ) and any violation of the local monotonicity for the Public Good Index implies a violation of the Shift index (see [2] ). It is well-known that the Banzhaf [4] and Johnston [21] indices satisfy the dominance postulate and therefore local monotonicity. If one or several power indices violate LM then a convex combination with another power index, that does not violate LM, yields a power index that also does not violate LM as long as the weight of the latter index is large enough. To study how large this has to be is the purpose of this paper.. Some works are devoted to verify the properties of dominance or local monotonicity (among others) for some power indices and to show failures for some other power indices (see among others, Felsenthal and Machover [8] or Freixas et al. [12] ). Other works are devoted to study subclasses of games for which a given power index not fulfilling local monotonicity satisfies it for such a subclass of games (see for instance, Holler et al. [18] and Holler and Napel [16] for the Public Good Index). Here we will also make a new contribution of this type, i.e., we consider two new subclasses of games for which the Public Good Index satisfies local monotonicity.. The strictest generalization of local monotonicity is proportionality of power and weights. For the classical power indices this property is satisfied for a subset of weighted games only. Power indices which generally satisfy this property are constructed in [22] . This paper starts by modifying the Public Good index with the purpose to achieve a new power index being local monotonic and more solidary than the Banzhaf index. These two properties make those achievable power indices (if they exist) well-situated as yardstick for doing a fair division of a public good. The idea of such modification is nothing else than an hybrid between the original Public Good index and the Banzhaf index. It will turn out that the cost of obtaining local monotonicity is rather high, i.e., the achievable new indices satisfying local monotonicity are closer to the Banzhaf index than to the Public Good index. However these indices stress more in minimal winning coalitions, as the Public Good index does, than in the rest of crucial winning coalitions, with goes in the direction of Riker's size principle, see [31] . The final result permits to find new indices being locally monotonic and being more solidary than the Banzhaf index, which makes them as good alternatives for the fair division of a public good among participants in the voting procedure.. The idea developed previously naturally extends when the raw Shift index is incorporated to the duo formed by the raw Public Good and raw Banzhaf indices. Local monotonic indices which are convex combinations of the three given raw indices are a further target of our research.. As an extension we do a similar study for convex combinations of the raw Johnston index, the raw Deegan-Packel index, and the raw Shift Deegan-Packel index.. The remaining part of the paper is organized as follows: In Section 2 we introduce the basic notation of games and power indices. Two subclasses of weighted games satisfying local monotonicity are presented in Section 3. The concept of considering convex combinations of some power indices as a new power index is outlined in Section 4. The cost of local monotonicity is introduced in the same section. Additionally we prove some structural results. An integer linear programming approach to compute the cost of local monotonicity is presented in Section 5. With the aid of the underlying algorithm we are able to state some exact values and lower bounds for the cost of local monotonicity in Section 6. The set of all convex multipliers leading to a locally monotonic power index is the topic of Section 7. We end with a conclusion in Section 8. We have introduced the concept of considering convex combinations of power indices. Several of the main properties of power indices are preserved by convexity, i.e., given a collection P of power indices such that each power index in P has a certain property, then also every convex combination of the power indices in P has this property. Lemma 1 gives some examples of such properties being preserved by convexity. The freedom in choosing the multipliers almost arbitrarily enables us to search for power indices, which satisfy some other useful properties. As an application we study local monotonicity. It is well known that the Public Good index does not satisfy local monotonicity, while e.g. the Banzhaf index does. So, what proportion of the Banzhaf index is necessary so that a convex combination of both indices becomes locally monotonic? The newly introduced cost of local monotonicity answers this specific question. Similar measures may of course be introduced for other properties of power indices. It turns out that with an increasing number of players the weight of the Banzhaf index needs to tend to 1. For a finite number of players there is still some freedom to incorporate some information from the Public Good index, while maintaining the local monotonicity of the Banzhaf index.. Restricting the class of the underlying games to strong or proper games typically decreases the cost of local monotonicity, but does not change the general behavior.. The cost of local monotonicity for combinations of the Banzhaf and the Shift index is considerably higher. So, in some sense the Shift index is even less locally monotonic than the Public Good index. Going over to the so-called equal division version of the Banzhaf-, Public Good-, and the Shift index, i.e., The Johnston-, the Deegan-Packel and the Shift-Deegan Packel index, seems to generally lower the cost of local monotonicity. Nevertheless, the corresponding cost of local monotonicity approaches 1 as the number of players tends to infinity. So, our study has shed some light on the property of local monotonicity of some power indices. The methodology of considering convex combinations of power indices in order to obtain some desirable properties is quite general and the presented theoretical and algorithmic framework may be applied in further studies.

O O O O B I 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 O O O O O O O O O O O O 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 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 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 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 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 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 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 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 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 B I 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 O O O O O O O O O B I 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 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 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 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 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 I O B I 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 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 B I 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 B I O O O O O O O O O B I O O O O O O O O O B I I 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 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 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 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 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 B I O O O O O O B I I 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 O O O O O O O O O O O O O O O O O O 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 B I 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 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 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 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 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


THE USE OF EVOLUTIONARY ALGORITHMS TO OPTIMIZE INTELLIGENT BUILDINGS ELECTRICITY SUPPLY Abstract: This paper formulates a unit commitment optimization problem for renewable energy sources distributed in a micro-grid formed by a complex of intelligent buildings of both office and residential characters, including a wide range of amenities. We present a general description of the solution of this task using the simulated annealing heuristic optimization technique. The experiment was processed in the specialized computer program. For comparison, Appendix A of the article describes the Lagrange multipliers optimization method as the conventional alternative to the used heuristic technique. A description of the concept of intelligent buildings is provided in Appendix B. In the context of sustainable development of human society, which depends on the planet's energy sources, covering the needs of the society requires a focus on renewable energy sources such as geothermal energy, atmospheric currents, hydrogeological cycles, solar radiation or biomass, due to their relative inexhaustibility and the minimization of the impacts of human activities on the environment related to their conversion to energy.. Biomass is a renewable energy source meeting the requirements to stabilize the amount of carbon dioxide in the atmosphere, i.e. the amount of carbon dioxide absorbed during the growth of the organic matter is equal to the amount of carbon dioxide emitted into the atmosphere during the combustion process. In connection to the decrease of fossil fuels and the deterioration of the global climate, the use of biomass energy accumulated from the sun appears to be desirable. Photovoltaic power plants are based on the direct conversion of sunlight into electrical energy in photovoltaic panels generating direct current, and so they must be equipped with a solid-state voltage invertor for their connection to the grid.. Atmospheric circulations as well as the hydrological cycle are powered by thermal energy from sunlight. Uneven heating of the planet's surface and adjacent air layers leads to differences in air pressure in the atmosphere and the result of the balancing of these pressure differences is the atmospheric flow, the kinetic energy of which is converted into electrical energy in wind power stations.. The kinetic energy of the water flow, caused by an altitude difference between two positions of the flow (the slope), is converted into electrical energy in water or pump storage units. Pump storage power plants, unlike standard power plants, operate as follows: when there is a shortage of energy, it operates as a generator, and during periods with excess energy, it operates as a motor which pumps water from a lower to a higher altitude, thereby storing electrical energy generated by other sources in the network in the form of potential energy of the transferred water.. Geothermal energy is available everywhere, is stable and can be easily regulated. Current technologies for using geothermal energy are relatively expensive from an investment standpoint, but have a quick economic return and have no negative impacts on the environment. The issue of geothermal energy is complicated and its proper utilization requires the connection of different results from many disciplines, and so now geothermal energy is becoming a new scientific field of its own.. Cogeneration units are another convenient addition to the range of renewable energy sources. These typically operate by burning fossil fuels to produce electricity while at the same time delivering the residual heat of the Carnot cycle for further use instead of letting it escape into the atmosphere through cooling towers, as is the case in conventional power plants. By the construction of cogeneration units, we could gain the advantage of self-sufficient energy units, such as in the case of complex intelligent buildings or even individual intelligent buildings. This saves energy costs and also protects the environment by eliminating the need for a separate heat source.. When connecting the above mentioned energy sources to the grid via transformers, the surplus can be sold off to the respective distribution companies. The implementation rate of the above proposition depends on the cost of the chain of production, transmission and consumption of energy. In relation to electricity, we are therefore minimizing production costs through the optimal operation of the electrical transmission network, i.e. a suitable choice for the connection and size of the injection active or reactive power in the network nodes, and finally by minimizing the consumption side.. Minimizing the above costs, due to the complexity of the problem as a whole, is usually realized more or less separately on three separate planes (generation, transmission and consumption), i.e. instead of one optimum we only obtain three sub-optima. In connection with the second or third plane, we speak of smart networks [2] or intelligent buildings [3] , however the subject of this paper is the solution of this problem on the first level, i.e. unit commitment optimization problem. By comparing Fig. 6 to Tab. II, it is clear that the power consumption on Saturday is primarily covered by sources with more or less lower production costs, such as both hydro-electric plants and the first wind-power park together with cogeneration units, which contribute by supplying the town with heat. The mid-day consumption peak corresponds well with the cluster of outputs supplied by the biomass power plant and the startup of one transformer, which together with one source of the specified cluster also covers the evening consumption peak. Referential resp. optimal costs for the coverage of the Saturday energy consumption then amount to 65 254 resp. 38 446 CZK, i.e. the optimization has led to savings amounting to 26 809 CZK.. By comparing Fig. 7 to Tab. III, it is clear that the Wednesday consumption is covered in a similar fashion, but due to the increased volumes, i.e. a larger area below its progression, the cluster of outputs supplied by the first and second biomass power plants covering the mid-day and evening peaks is larger. Three transformers of one of the distribution companies, specifically the one with the lower price of energy, were turned on during the midday peak -one of which was turned off temporarily between the peak hours. The third biomass power plant was not used at all due to its higher startup costs and relatively high operating costs. Referential resp. optimal costs for the coverage of the Wednesday energy consumption then amount to 69 216 resp. 45 006 CZK, i.e. the optimization has led to savings amounting to 24 210 CZK.. The proposed sorting of the sources in general implies that sources with the highest production costs, i.e. transformers supplying energy from distribution companies, are only used during peak hours, which is in compliance with the accentuation on the energy self-sustainability of the town in our example.. The description of the computational experiment implies a high efficiency of the optimization algorithm of simulated annealing when searching the admissible solution space, given by the ratio of the total number of admissible solutions to the number of simulated admissible solutions in each hour of the considered period, i.e. 10 75 : 10 6 .

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 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 O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O 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 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


Using Absolute Metric Maps to Close Cycles in a Topological Map In simultaneous localisation and mapping (SLAM) the correspondence problem, specifically detecting cycles, is one of the most difficult challenges for an autonomous mobile robot. In this paper we show how significant cycles in a topological map can be identified with a companion absolute global metric map. A tight coupling of the basic unit of representation in the two maps is the key to the method. Each local space visited is represented, with its own frame of reference, as a node in the topological map. In the global absolute metric map these local space representations from the topological map are described within a single global frame of reference. The method exploits the overlap which occurs when duplicate representations are computed from different vantage points for the same local space. The representations need not be exactly aligned and can thus tolerate a limited amount of accumulated error. We show how false positive overlaps which are the result of a misaligned map, can be discounted.

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


Modelling the profitability of credit cards by Markov decision processes This paper derives a model for the profitability of credit cards, which allow lenders to find the optimal dynamic credit limit policy. The model is a Markov decision process, where the states of the system are based on the borrower's behavioural score and the decisions are what credit limit to give the borrower each period. In determining the Markov chain which best describes the borrower's performance second order as well as first order Markov chains are considered and estimation procedures that deal with the low default levels that may exist in the data are considered. A case study is used to show how the optimal credit limit can be derived. Since the advents of credit cards in the 1960s, lenders have used credit scoring, both application and behavioural scoring to monitor and control default risk.. However in the last decade their objective has changed from minimising default rates to maximising profit. Lenders have recognized that operating decisions are crucial in determining how much profit is achieved from a card. This paper focuses on the most important decision in an operating policy: the management of credit limit. Soman and Cheema (2002) conducted a study on the use of credit limit policies in encouraging spending and found that the availability of additional credit does promote card usage in some consumers.. Consumers assumed lenders have some sophisticated models, which was used to determine appropriate credit limits, but that is not the case in reality.. So how do lenders currently decide on what credit limit to offer a credit card customer? Most use subjective policies based on a risk/return matrix, i.e. they agree credit limits for each combination of risk band and average balance, which is considered a surrogate for the return to the lender from that customer. This approach is static in that it does not consider whether or how the customers default risk and profitability to the lender will change over time.. Nor is there any model to guide what are the optimal credit limits to choose.. We therefore propose using Markov Decision Processes (MDP) to improve the credit limit decision. A MDP model provides a way of making sequential decision by considering the evolution of a customer's behaviour over time. It also allows one to calculate the profitability of a credit card customer under the optimal dynamic credit limit policy. Lenders keep a wealth of historical credit card data, in particular the monthly values of a customer's behavioural score which is their way of assessing the default risk of the customer in the next year. Building the Markov decision process model on behavioural scores has the advantage that most lenders have been keeping this data on customers for a number of years. With the advent of the Basel Accord in 2008, lenders are required to keep such data for five years and are encouraged to keep it through a whole economic cycle.. MDPs have been used in a number of different contexts (Heyman and Sobel, 1982; Ross, 1983; White, 1985 White, , 1988 White, , 1993 Kijma, 1997) . The first application of MDPs in consumer credit was by Bierman and Hausman (1970) who looked at the repayment of a loan where no further borrowing was allowed.. The model assumed the repayment of the customer followed a prior probability distribution. Using a Bayesian approach, the model revised the probability of repayment in the light of the collection history. Modifications of the basic model were made both in the accounting rules (Dirickx and Wakeman, 1976) and in the form of the Markov chain (Frydman et al., 1985) followed.. The use of MDP models to manage the characteristics of consumer lifetime value can be found in Trench et al. (2003) where MDP models were used with the objective of adjusting a consumer's credit card limit or annual percentage rate (APR). The objectives in that paper are similar to the one in this paper.. However their state space did not involve behavioural scores nor were they concerned with the problems that occur in estimating the transition probabilities if there are low default rates. Instead they used a six dimensional state space each dimension having only two or three categories describing the recency and frequency of purchases and payments. They developed mechanisms for reducing the size of the transition matrix through merging states. Ching et al. (2004) used MDPs to manage the customer lifetime value generated from telecommunication customers. The state space in that study again used marketing measures not risk measures and the decision was whether to implement promotions. This paper is the first to use behavioural score bands as the basis for MDP models. The advantage of basing the model on behavioural score are considerable. Almost all lenders calculate such scores every month for every individual both as a basis for their Basel Accord probability of default calculations, and as a way of segmenting the population on risk -see our previous discussion on risk/reward matrices.. When modelling real problems using Markov Decision Processes, the curse of dimensionality (Puterman, 1994) can mean the state space is very large and that one would need a large amount of data to obtain robust estimates of the transition probabilities. Using behavioural scores helps to overcomes this first difficulty because it itself is a "sufficient statistic" of the risk of the account and already contains information from a number of different characteristics.. Also by aggregating states one can obtain a simple but meaningful state space.. In our case we make part of each state an interval of behavioural scores and similarly combine possible credit limits into bands, to make up the other part of the state. We also take each of these credit limit bands to be one of the possible actions that can be chosen.. The difficulty with the quantity of data needed to calculate robust estimators of the transition probabilities is less severe in the consumer credit context because of the size of the data sets available to lenders. The only problem is that with some portfolios of loans, the number of movements directly into default from some states is so low (quite possibly zero) that the resultant estimates of zero transition probability of default may affect the structure of the Markov chain, making it non-robust. This problem of estimating default probabilities in low default portfolios also occurs in the Basel Accord mentioned earlier. We therefore use an approach suggested in that context by Pluto and Tasche (2006) and extended by Benjamin et al. (2006) which ensures the resulting Markov chain model is robust and conservative. The conservativeness is reasonable as one would prefer the model to underestimate rather than over estimate the profitability of a credit card account.. The main contribution of this paper is to show how one can use Markov decision process models based on states consisting of behavioural score bands -scores which most lenders calculate on a monthly basis -to determine optimal credit limit policies in terms of profitability. The rest of the paper is organized as follows: Section 2 describes the MDP model formulation. Section 3 discusses the estimation of the transition probabilities including the probabilities of defaulting immediately. Section 4 presents the practical issues in applying the MDP model to the real credit card data and the results of the case study. The final section draws some conclusion on the model and the resultant case study. This paper identifies the use of the MDP model to generate a dynamic credit limit policy. It explains how one can link the profitability of a borrower to their default risk by employing a risk estimate-the behavioural score-that is used by every lender. The paper has also considered a conservative alternative to using MLE estimate for all transition probabilities which would avoid difficulties in low default portfolios. The effectiveness of using this method has been shown by a real credit card dataset. Table 4 Transition matrix -moving to special accounts Table 6 Transition matrix of the adjusted PDs on LDPs -moving to special accounts -706 -1131 -1581 -2067 -2047 -2576 -3316 -3845 -5461 -10209 Score2 202 255 367 489 555 697 894 1210 1351 2052 Score3 151 189 282 395 220 462 599 704 915 1674 Score4 33 42 80 132 77 170 235 296 429 1126 Score5 8 6 18 29 27 42 60 78 123 311 Score6 8 2 8 14 16 23 32 39 66 194 Score7 0 -2 3 5 14 16 24 36 61 142 Score8 -6 -6 -3 0 9 10 17 24 44 102 Score9 -7 -8 -5 -3 4 6 11 21 35 85 Score10 -9 -7 -6 -4 4 5 8 17 26 70 Table 7 Profit Function (in HK$)

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 O B I 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 O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O 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 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 B 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 B I 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 O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O 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 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 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 O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O 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 O O O O O O O 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 B I O O O O O O O O O O O O O O B I I 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 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 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 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 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


A New Clustering Algorithm Based on Near Neighbor Influence Abstract: This paper presents Clustering based on Near Neighbor Influence (CNNI), a new clustering algorithm which is inspired by the idea of near neighbor and the superposition principle of influence. In order to clearly describe this algorithm, it introduces some important concepts, such as near neighbor point set, near neighbor influence, and similarity measure. By simulated experiments of some artificial data sets and seven real data sets, we observe that this algorithm can often get good clustering quality when making proper value of some parameters. At last, it gives some research expectations to popularize this algorithm. Clustering is an unsupervised learning method which tries to find some distributions and patterns in unlabeled data sets. Usually, those points in the same cluster should have more similarity than other points in other clusters. There have been thousands of clustering algorithms until now, but none of them is all purpose.. Clustering algorithms are usually categorized into partitioning methods, hierarchical methods, density-based methods, grid-based methods, and model-based methods [8, 13] .. KMeans [11] is a classical partitioning clustering algorithm presented in 1967. It has some inherent shortcomings. For example, this kind of algorithm needs a predefined number of clusters, but this number cannot be obtained correctly before clustering process. KMeans only adapts to find those globular clusters with near radius because of its assignment strategy of point to the nearest cluster. When the number of clusters is large, KMeans is very sensitive to initialization.. Affinity Propagation (AP) [5] is a new type of clustering algorithm published on Science in 2007. It needs a predefined similarity measure and Θ(n 2 ) time and space cost when computing and storing a similarity matrix corresponding to its data set.. Finally, it produces a clustering result but can't give a hierarchical clustering structure in a form of multi-level tree. This paper presents a new effective clustering algorithm CNNI, which can often get better clustering results or faster clustering speed for some data sets than some classical clustering algorithms.. CNNI algorithm is robust to outliers and allows to find clusters with different shapes. The number of clusters does not have to be fixed before clustering. Usually, parameter δ has some valid interval that can be determined by using an exploring method. In the process of constructing δ near neighbor point sets, if using an improved constructing method [1] , or using the SS-tree [15] (or SR-tree [16] ) index structure, the time complexity of this algorithm can even be decreased to O(nlogn), which means it can be suitable to large data sets.. CNNI algorithm is sensitive to parameters δ when many noises and few obvious clusters exist, and it also cannot generate clusters with different levels of scatter because parameter δ is fixed before clustering.. The next work is to further improve this algorithm in time cost or clustering quality and overcome its two drawbacks. This paper is related in some aspects to several papers [2, 6, 7, 9, 12] , although it was developed quite independently. Jarvis and Patrick [9] presented a shared nearest neighbor approach to similarity first. A similar idea was later proposed in ROCK [6] .. In [9] , a shared nearest neighbor graph is constructed from a proximity matrix, in which a link is created between a pair of points X and Y if and only if point X and point Y have each other in their closest k nearest neighbor lists.. L. Ertöz et al. [2] presented an improved J-R clustering method by redefining the similarity between pairs of points in terms of how many nearest neighbors the two points share. This paper is also superficially similar to some density-based clustering methods, such as DBSCAN [3] . DBSCAN needs two parameters, and our CNNI algorithm only needs one parameter that can be determined easily. You will see that they have essential difference in basic idea and concrete implementations.

O O B O O O B I I O O O O B O O B I I 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 I I I 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 B 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 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 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 O O O O O O O O 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 B 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 B 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 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 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 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 O O O O O O O O O O O O O O O O O O O O O O O O


Computational rim illumination of dynamic subjects using aerial robots Creative Commons AttributionLighting plays a major role in photography. Professional photographers use elaborate installations to light their subjects and achieve sophisticated styles. However, lighting moving subjects performing dynamic tasks presents significant challenges and requires expensive manual intervention. A skilled additional assistant might be needed to reposition lights as the subject changes pose or moves, and the extra logistics significantly raises costs and time. The associated latencies as the assistant lights the subject, and the communication required from the photographer to achieve optimum lighting could mean missing a critical shot.We present a new approach to lighting dynamic subjects where an aerial robot equipped with a portable light source lights the subject to automatically achieve a desired lighting effect. We focus on rim lighting, a particularly challenging effect to achieve with dynamic subjects, and allow the photographer to specify a required rim width. Our algorithm processes the images from the photographer's camera and provides necessary motion commands to the aerial robot to achieve the desired rim width in the resulting photographs. With an indoor setup, we demonstrate a control approach that localizes the aerial robot with reference to the subject and tracks the subject to achieve the necessary motion. In addition to indoor experiments, we perform open-loop outdoor experiments in a realistic photo-shooting scenario to understand lighting ergonomics. Our proof-of-concept results demonstrate the utility of robots in computational lighting. Lighting plays a critical role in good photography. Through the careful placement of lights, photographers can define space and enhance the mood of photographs. Perhaps the most dramatic example is the use of a rim light behind the subject, which highlights silhouettes and can be used as the main light for silhouetted styles, or as an accent to separate a subject from the background. Rim lighting effects are usually associated with posed studio photography because they require careful placement of lights relative to a static subject and often involve a whole crew where assistants move the lights until the photographer is satisfied with the look of the image. Photographers increasingly try to push the envelope and deal with dynamic scenarios by having assistants track a moving subject, but this remains costly, challenging, and might require many takes. There are two central challenges in rim lighting for photography of dynamic scenes: the ability to move the lights (usually handled by assistants), and the decision of how to move them, usually made by the photographer based on what he or she sees in the viewfinder.. In this paper we propose an automated technique for rim lighting in dynamic settings with moving subjects. We combine the use of computational photography and robotically controlled light source to facilitate the use of advanced lighting effects such as rim lighting for moving subjects. Our vision is that light sources should be actuated and be able to react to movements in the scene based on feedback from the main camera to achieve a lighting specified by the photographer. In particular, we leverage recent advances in aerial robotics and their commoditization, to enable full 3D placement of light sources around the subject. We focus on the case of rim lighting because it is particularly challenging, important for artistic control, and requires precise positioning of lights.. In our scenario, the photographer holds a main camera with the goal of capturing a picture of a potentially moving subject. The photographer controls a desired rim width as a function of the look they want to achieve. An aerial robot (also known as drones, unmanned aerial vehicles, or UAVs) is responsible for the rim light Contents lists available at ScienceDirect journal homepage: www.elsevier.com/locate/cag and reacts to the movements of the photographer and the subject to automatically position the light to achieve the desired rim width. The photographer can also specify a wider or thinner rim width and the aerial robot responds accordingly. We introduce a simple computational measure of rim width from the image seen by the photographer's camera. While this quantitative rim width is not intended to be a direct characterization of aesthetics, it provides easy control for the photographer who can increase it or decrease it until they achieve a desired look.. To enable the automatic placement of rim lights, we introduce a new aerial robot control strategy based not only on absolute localization and sensors on the aerial robot, but also on a computational characterization of rim lighting from the main camera. At a very high level, our control strategy moves the robot away from the photographer (behind the subject) to make the rim thinner, and closer to make it wider. We focus on the placement of the robot within a given horizontal plane because it is the most critical degree of freedom for rim lighting human subjects, but a similar strategy could be used to also modulate the altitude of the aerial robot. In addition to rim width, our controller needs to achieve a number of other objectives such as respecting a given distance to the subject, keeping the robot at a given height, and making sure that the light carried by the robot is directed towards the subject. Fig. 1 top row shows our results for various rim widths.. We demonstrate our approach with a prototype that relies on a small quadrotor aerial robot that weighs less than a pound (see Fig. 1 , bottom left). The aerial robot we use is a low cost (about $300), lightweight quadrotor [1, 2] that can easily carry a standard flash as well as a lidar unit to help track the subject. The Lidar can easily be replaced with a cheaper alternative such as a Kinect sensor. We show that the system is able to automatically adjust to subject movement and to free photographers from the labor of lighting placement, enabling free-form photography while achieving a desired rim lighting. This paper is an extended version of the conference paper by Srikanth et al. [3] that made the following contributions:. We demonstrate the first approach for studio quality lighting using aerial robots.. We introduce a control approach based on a combination of rim computation from the perspective of the camera and tracking of the subject from the aerial robot.. We make the following specific contributions in this paper:. Using numerical simulation, we show approximate monotonic behavior of rim width with reference to the light position under certain conditions.. We present more details on the robot control system and the image compositing.. Unlike the setup of Srikanth et al. [3] , which was an indoor lab based fully automatic system, we present an outdoor open-loop setup that essentially highlights (a) design tradeoffs for aerial robot based lighting and (b) ergonomics of robotic lighting in a realistic shooting scenario. The photographer aims the camera at the subject, while an aerial robot equipped with a light source hovers near the subject to provide rim lighting. Our algorithm analyzes the images from the camera to evaluate the rim lighting. Given a desired rim width as specified by the photographer, our guidance policy determines the direction of motion of the robot (hence the light), so as to achieve the desired rim width. Our real-time control loop ensures quick adaptation to the changes in the subject position and posture, as well as to the changes in the position of the photographer.. The aerial robot is a standard off-the-shelf quadrotor and its four propellers provide four controllable degrees of freedom: xyz position, and rotation about its own vertical z-axis (also called yaw angle). The tilt angles (roll and pitch) are internally used for controlling the lateral xy position of the robot: when the robot is tilted, it moves along the corresponding horizontal direction.. We use a continuous light source and a flash strobe on the aerial robot, and both are assumed to be spot lights. The continuous light is used during the process of robot position optimization, during which it should be the dominant light source. The onboard flash strobe is triggered only at the time of capturing the final still photograph, and additional light sources can be fired as well, such as key and fill. To keep the subject in the field of the light sources, the aerial robot is always kept oriented towards the subject. We also keep it at a fixed distance to the subject to ensure safety and a constant light intensity. The location of the subject with respect to the robot is estimated using a lidar mounted on the robot.. The characteristics of the rim light as seen from the main camera are directly related to the angle around the subject between the main camera and the light source (Fig. 5) . The rim light can be made thinner by moving the robot towards the back of the subject, and it can be made wider by moving it to the front. The height of the robot also affects the rim light but does not require as much adjustment in our experience, unless subjects dramatically change pose and, e.g. go from sitting to standing. In our work, we let the photographer specify the height of the robot directly and use a standard low-level control to maintain it.. Our approach is summarized in Fig. 2 . We acquire video feed from the camera and compute rim width in real-time. Rim width is computed by looking at the silhouettes (gradients), that is, the width of the bright area across silhouettes (Section 4).. In each iteration, the rim width is computed and compared against the desired rim width (specified by the photographer). The difference between the measured and desired rim widths is used to determine the direction and the magnitude of the motion of the robot. The robot is moved to the new location, and the iteration is repeated until the difference is driven to zero. In addition, we track the subject location using the lidar and ensure the robot is properly oriented and positioned.. In addition to these high-level controls, we manage the subtle dynamics of the quadrotor and provide high-frequency mid and lowlevel control. This is a well-studied problem in robotics and we rely on mostly standard solutions: a combination of onboard sensors and absolute localization provided by a motion capture system. Future versions could replace the latter by cheaper alternatives or richer onboard sensors, but like most research on quadrotor control, we decided to focus on our high-level objectives and use the motion capture system. Our motion capture system uses retroreflectors that are mounted on the quadrotor. Using an array of cameras, the motion capture system triangulates the position and orientation of the quadrotor. This paper presents a new approach to computational illumination where light sources are actuated and automatically adjusted to the view from the photographer's camera, which allows lighting to react in real time to changes in viewpoint, subject location, and pose. Our new rim lighting scheme handles dynamic subjects and relies on an aerial robot as a light carrying platform. We propose a new lighting control system based on the collaboration between the aerial robot and the main camera that achieves and maintains given rim lighting characteristics under changes in subject posture and position, and camera movement. Using an aerial robot, a quadrotor, and a few off-the-shelf components, we demonstrate our approach on a variety of subjects. Using an open-loop outdoor experimental setup, we show that our proposed strategies for lighting are inline with the ergonomics of the lighting. We believe that such a combination of computational photography, image analysis, and robotically actuated computational illumination can provide photographers with greater flexibility in dynamic situations and dramatically reduce the need for a full crew of assistants. We demonstrate our approach on various subjects including a plastic mannequin, and male and female models with varied clothing. We show photographic results, as well as experimental plots to validate our approach. Our work is focused on closed-loop real-time computational illumination of real life objects for photographic purposes. We briefly . By analyzing the images from the photographer's camera, an aerial robot carrying a light source automatically guides itself to a lighting location to achieve a desired rim lit photograph. Top row: results with various specified rim width values. Bottom-left: our aerial robot, a quadrotor aerial robot equipped with a flash, continuous light source, and a Lidar to detect and follow a moving subject. Bottom-right: our photography setup showing the subject, aerial robot and the photographer.. review papers on computational illumination of both real objects and computer graphics objects (where the geometry is known).. Computational illumination: Petschnigg et al. [4] and Eisenmann et al. [5] propose methods to computationally combine photographs, captured with and without an on-camera flash, so as to improve the overall illumination of the scene. Raskar et al. [6] propose to combine multiple photographs, each taken with a different light position, to generatea single non-photorealistic image.. Debevec et al. [7] introduced the light stage, a dome with hundreds of lights that can achieve arbitrary lighting of a dynamic subject to match a given characteristic. The main drawbacks of such an approach are cost and portability. Anrys et al. [8] propose to arrange a set of fixed lights around a near diffuse static object whose intensities are to be determined. Using an image based user interface, the user is allowed to express the desired lighting characteristics. Mohan et al. [9] propose a mechanical rotating light system that is used to capture a number of images of a static scene with various lighting conditions.With a user interface, they combine images to generate the desired lighting effect. Wang et al. [10] propose a realtime feedback system to light a dynamic scene in order to emphasize certain characteristics of the scene (for instance the edges of the objects). The main goal here is to better visualize the actual scene rather than obtaining an optimally lit photograph. Their system relies on optically aligned camera and projector through a beam splitter, and shared light spectrum (IR and visible light). More recent work by Boyadzhiev et al. [11] uses several flash photographs of a static scene captured from the same view point with varying light positions. They combine the images, with some user inputs, to produce a composite that has the desired lighting characteristics. Obviously, this approach is well suited for static scenes, for instance architectural photography. Moreover, the capture process is not well guided or automated (except for the photographer's own experience), and the photographer may end up capturing more photographs than necessary, often containing redundant information. Dorsey et al. [12, 13] design stage lighting of large environments, and present a lighting control system that takes spatiotemporal issues of lighting into account. Their goal is to optimally control the installed lights in a theatrical stage.. Lighting design in computer graphics: Bousseau et al. [14] synthesize an optimal lighting environment map that enhances the appearance of scene objects from a given viewpoint. They use an image quality metric, and knowledge of the scene geometry and material properties to design the optimal environment map. Pellacini et al. [15] propose an iterative system where the user specifies the desired scene lighting by means of light painting the surface of the 3D objects. They then solve for the light parameters that achieve the desired look. Akers et al. [16] present methods to enhance rendering by changing lighting. They propose the use of rim lighting as a way to highlight the silhouette of a 3D model. Schoeneman et al. [17] present painting with light, which attempts to solve an inverse problem. Given a desired appearance of the scene that has fixed light sources, they solve for the color and the intensity of the light sources. Poulin et al. [18] propose using highlights and shadows as a user specified input; they then solve for the optimal lighting parameters.. In contrast to the above, our work is focused on real-time lighting optimization of real life dynamic objects. We use a robotic platform that responds to the motion of the subject and photographer in order to maintain a desired lighting effect. To make the robot respond quickly, we design an efficient control system for the robot. Hence, understanding and using the dynamics of the robot becomes an integral part of the problem.. Quadrotor aerial robot: A quadrotor aerial robot, also known as an unmanned aerial vehicle, is capable of complex flight motion, and is also capable of hovering at a fixed location in 3D space.. Aerial robots are routinely used to carry a camera in photography and videography. To our best knowledge, application of an aerial robot to carry a light source for photographic purposes is novel. In addition, using feedback to correct and optimize the light position is also novel.

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 O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O 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 O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O 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 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 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 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 O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O 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