4 research outputs found

    Strategies for minority game and resource allocation.

    Get PDF
    She, Yingni.Thesis (M.Phil.)--Chinese University of Hong Kong, 2009.Includes bibliographical references (leaves 74-78).Abstracts in English and Chinese.Chapter 1 --- Introduction --- p.1Chapter 1.1 --- Scope --- p.2Chapter 1.2 --- Motivation --- p.5Chapter 1.3 --- Structure of the Thesis --- p.6Chapter 2 --- Literature Review --- p.7Chapter 2.1 --- Intelligent Agents and Multiagent Systems --- p.8Chapter 2.1.1 --- Intelligent Agents --- p.8Chapter 2.1.2 --- Multiagent Systems --- p.10Chapter 2.2 --- Minority Game --- p.13Chapter 2.2.1 --- Minority Game --- p.13Chapter 2.2.2 --- Characteristics of Minority Game --- p.14Chapter 2.2.3 --- Strategies for Agents in Minority Game --- p.18Chapter 2.3 --- Resource Allocation --- p.22Chapter 2.3.1 --- Strategies for Agents in Multiagent Resource Allocation --- p.23Chapter 3 --- Individual Agent´ةs Wealth in Minority Game --- p.26Chapter 3.1 --- The Model --- p.26Chapter 3.2 --- Motivation --- p.27Chapter 3.3 --- Inefficiency Information --- p.28Chapter 3.4 --- An Intelligent Strategy --- p.31Chapter 3.5 --- Experiment Analysis --- p.32Chapter 3.6 --- Discussions and Analysis --- p.35Chapter 3.6.1 --- Equivalence to the Experience method --- p.36Chapter 3.6.2 --- Impact of M' and S' --- p.38Chapter 3.6.3 --- Impact of M and S --- p.41Chapter 3.6.4 --- Impact of Larger Number of Privileged Agents --- p.48Chapter 3.6.5 --- Comparisons with Related Work --- p.48Chapter 4 --- An Adaptive Strategy for Resource Allocation --- p.53Chapter 4.1 --- Problem Specification --- p.53Chapter 4.2 --- An Adaptive Strategy --- p.55Chapter 4.3 --- Remarks of the Adaptive Strategy --- p.57Chapter 4.4 --- Experiment Analysis --- p.58Chapter 4.4.1 --- Simulations --- p.58Chapter 4.4.2 --- Comparisons with Related Work --- p.62Chapter 5 --- Conclusions and Future Work --- p.69Chapter 5.1 --- Conclusions --- p.69Chapter 5.2 --- Future Work --- p.71A List of Publications --- p.73Bibliography --- p.7

    Semantic resource management and interoperability between distributed computing platforms

    Get PDF
    Distributed Computing is the paradigm where the application execution is distributed across different computers connected by a communication network. Distributed Computing platforms have evolved very fast during the las decades: starting from Clusters, where a set of computers were working together in a single location; then evolving to the Grids, where computing resources are shared by different entities, creating a global computing infrastructure which is available to different user communities; and finally becoming in what is currently known as the Cloud, where computing and data resources are provided, on demand, in a very dynamic fashion, and following the Utility Computing model where you pay only for what you consume. Different types of companies and institutions are exploring the potential benefits of moving their IT services and applications to Cloud infrastructures, in order to decouple the management of computing resources from their core business process to become more productive. Nevertheless, migrating software to Clouds is not an easy task, since it requires a deep knowledge of the technology to decompose the application and the capabilities offered by providers and how to use them. Besides this complex deployment process, the current cloud market place has several providers offering resources with different capabilities, prices and quality, and each provider uses their own properties and APIs for describing and accessing their resources. Therefore, when customers want to execute an application in the providers' resources, they must understand the different providers' description, compare them and select the most suitable resources for their interests. Once the provider and resources have been selected, developers have to inter-operate with the different providers' interfaces to perform the application execution steps. To do all the mentioned steps, application developers have to deal with the design and implementation of complex integration procedures. This thesis presents several contributions to overcome the aforementioned problems by providing a platform that facilitates and automates the integration of applications in different providers' infrastructures lowering the barrier of adopting new distributed computing infrastructure such as Clouds. The achievement of this objective has been split in several parts. In the first part, we have studied how semantic web technologies are helping to describe applications and to automatically infer a model for deploying them in a distributed platform. Once the application deployment model has been inferred, the second step is finding the resources to deploy and execute the different application components. Regarding this topic, we have studied how semantic web technologies can be applied in the resource allocation problem. Once the different components have been allocated in the providers' resources, it is time to deploy and execute the application components on these resources by invoking a workflow of provider API calls. However, every provider defines their own management interfaces, so the workflow to perform the same actions is different depending on the selected provider. In this thesis, we propose a framework to automatically infer the workflow of provider interface calls required to perform any resource management tasks. In the last part of the thesis, we have studied how to introduce the benefits of software agents for coordinating the application management in distributed platforms. We propose a multi-agent system which is in charge of coordinating the different steps of the application deployment in a distributed way as well as monitoring the correct execution of the application in the computing resources. The different contributions have been validated with a prototype implementation and a set of use cases.La Computación Distribuida es un paradigma donde la ejecución de aplicaciones se distribuye entre diferentes computadores contados a través de una red de comunicación. Las plataformas de computación distribuida han evolucionado rápidamente durante las últimas décadas, empezando por los "Clusters", donde varios computadores están conectados por una red local; pasando por los "Grids", donde los recursos computacionales son compartidos por varias instituciones creando un red de computación global; llegando finalmente a lo que actualmente conocemos como "Clouds", donde nos podemos proveer de recursos de manera dinámica, bajo demanda y pagando solo por lo que consumimos. Actualmente, varias compañías están descubriendo los beneficios de mover sus aplicaciones a las infraestructuras Cloud, desacoplando la administración de los recursos computacionales de su "core business" para ser más productivos. Sin embargo migrar el software al Cloud no es una tarea fácil porque se requiere un conocimiento exhaustivo de la tecnología y como usar los servicios ofrecidos por los diferentes proveedores. Además cada proveedor ofrece recursos con diferentes capacidades, precios y calidades, con su propia interfaz para acceder a ellos. Por consiguiente, cuando un usuario quiere ejecutar una aplicación en el Cloud, debe entender que ofrece cada proveedor y como usarlo y una vez que ha elegido debe programar los diferentes pasos del despliegue de su aplicación. Si además se quieren usar varios proveedores o cambiar a otro, este proceso debe repetirse varias veces. Esta tesis presenta varias contribuciones para mitigar estos problemas diseñando una plataforma para facilitar y automatizar la integración de aplicaciones en los diferentes proveedores. Estas contribuciones se dividen en varias partes: Primero, el estudio de como las tecnologías semánticas pueden ayudar para describir aplicaciones y automáticamente inferir como se puede desplegar en un plataforma distribuida. Una vez obtenemos este modelo de despliegue, la segunda contribución nos presenta como estas mismas tecnologías pueden usarse para asignar las diferentes partes del despliegue de la aplicación a los recursos de los proveedores. Una vez sabemos la asignación, la siguiente contribución nos resuelve como se puede usar "AI planning" para encontrar la secuencia de servicios que se deben ejecutar para realizar el despliegue deseado. Finalmente, la última parte de la tesis, nos presenta como el despliegue y ejecuciones de las aplicaciones puede coordinarse por un sistema multi-agentes de una manera escalable y distribuida. Las diferentes contribuciones de la tesis han sido validadas mediante la implementación de prototipos y casos de uso

    Negotiating Socially Optimal Allocations of Resources with Argumentation

    No full text
    The resource allocation problem of multi-agent systems is the problem of deciding how to allocate resources, controlled by agents, to agents within a given system. Agents typically have preferences over alternative allocations of resources. These preferences may be derived from the agents’ goals, which can be fulfilled by different plans (sets of resources). The problem arises because agents may not be able to fulfil their goals without being re-allocated resources controlled by other agents and agents may have conflicting preferences over allocations. Examples of the resource allocation problem include electronic commerce (where resources are commodities equipped with prices), the grid (where resources are computational entities equipped with computational power), and scheduling and timetabling (where resources may be tasks with costs). The focus in this thesis is distributed decision-making amongst agents, whereby agents actively participate in computing re-allocations, starting from initial allocations which may or may not fulfil their goals. A re-allocation is arrived at by means of local negotiation steps wherein resources change hands between the agents involved in the negotiations. The negotiation method of choice in this thesis is argumentation-based negotiation supported by assumption-based argumentation. This method allows agents to work towards their goals despite incomplete information regarding the goals of and resources allocated to other agents, to share knowledge, thereby eliminating unknowns, and to resolve conflicts within themselves and between one another which may arise because of inconsistent information. Solutions generated by a resource allocation mechanism may be ranked according to how they affect the individual welfare of the agents as well as the overall social welfare of the agent society, according to different notions of social welfare borrowed from economics. The argumentation-based negotiation mechanism we propose guarantees, for the problem domain of interest in this thesis, that negotiations between agents always terminate converging to a solution. Moreover, the mechanism guarantees that solutions reached optimise the welfare of the individual agents as well as the agent society as a whole according to Pareto optimal and utilitarian notions of social welfare

    An Agent-based Resource Allocation Model for computational grids

    No full text
    corecore