Patrick Pujo
email: patrick.pujo@lsis.org

Nicolas Broissin

Fouzia Ounnar

PROSIS: an isoarchic structure for HMS control

Keywords: Holonic Manufacturing System (HMS), Flexible Manufacturing System (FMS), Shop floor control, Isoarchic control, Autonomous Control Entity (ACE), PROSIS

This paper presents a holonic and isoarchic approach to the FMS (Flexible Manufacturing System) control. This approach is based on a flat holonic form, where each holon is a model for each entity of the FMS, with a unifying level of communication between holons. After description of this model, called PROSIS, the interaction protocol and decision rules are presented. The objective is to increase the FMS productivity and flexibility, particularly on responsiveness aspects. This responsiveness is achieved through decentralized generation of the production tasks. The reactive behaviour of the FMS control is illustrated by the example of a flexible turning cell, upon occurrence of a failure or of an urgent batch order, and the resulting Gantt charts are shown.

Main text:

Introduction

When production systems are too strongly affected by contingent and unforeseen disturbances or by intrinsic disturbances due to a need for flexible behaviour, creating and exploiting estimated plans may turn out to be illusory. The difference between the real unfolding of events and the estimated plan is then too great for adjustments to be made and permanent updating is extremely difficult to manage. A purely estimated approach is not very adapted to the requirements for flexibility and responsiveness. In fact, the search for a 'good' responsiveness requires to interact with real data and to reduce decision loops, so as to adapt the reaction horizon to the decision level. A solution consists in reducing the number of decision strata, by merging adjoining decision levels.

For that, many innovating ideas, mainly based on heterarchical architecture control, have been proposed over the past twenty years or so. In this paper, a new control architecture, both holonic and isoarchic, is proposed. It is based on the cooperation between the various entities composing the production system and also on a completely self-organized and decentralized decision making, carried out without any consideration of hierarchy between these entities. In the context of a production system that can be broken down into entities to be controlled, the absence of any hierarchical decision-making centre requires to equip each one of these entities with its own capacity of decision making. This allows them, through a communication system, to elaborate, by negotiation and in real time, a control solution which is the most effective and the most efficient possible. This approach can be described via the holonic paradigm, and more particularly via the reference architecture PROSA [START_REF] Van Brussel | Reference architecture for holonic manufacturing systems: PROSA[END_REF], according to a breakdown into holons such as Product, Resource, Order and Staff.

After presenting, in section 2, the evolution of the fundamental concepts of the operation of the control systems for manufacturing systems and the principal orientations followed by the scientific community, the main characteristics of PROSA are recalled and a definition of the isoarchic control is given.

Section 3 deals with the implementation of a holonic approach in an isoarchic context. The PROSIS approach proposed here (PROSIS stands for Product, Resource, Order and Simulation Isoarchic Structure) was inspired from the PROSA concepts, with significant differences however. These differences, as well as the PROSIS decision mechanisms, will be clarified. For this purpose, control is achieved through the support of an Autonomous Control Entity (ACE). The whole set of the ACE constitutes the implementation structure of PROSIS.

Section 4 introduces the case study allowing the application of this approach to a real industrial situation, the first results being obtained from simulation on a demonstrator.

In section 5, the reactive behaviour of the FMS control using PROSIS is illustrated through the example of a turning cell, upon occurrence of a failure and of an urgent batch order. The resulting Gantt charts are presented.

Finally, Section 6 provides conclusions and future work.

Holonic and isoarchic approach for FMS control

The control systems of production systems have to face the evolution of the decision modes currently used in industry. From the conventional control approaches, the new approaches being currently developed are recalled and the holonic and isoarchic approach is presented.

2.1.

Evolution of the production system control In a production system, the operational control must indicate in a precise way the actions to be taken in the short term. The objective is to obtain an effective and efficient operation of the production system.

This must often be carried out in real time. In practice, it is necessary to indicate, according to the Hexameter of Quintilien (the Five Ws), WHICH does WHAT, WHEN, WHERE and HOW, by respecting not only the constraints defined at the higher decisional levels (representative of the total operation of the factory), but also those relating to the production system and to its environment (representative of its limits or operation possibilities). WHO represents the resources (equipment and/or operators), WHAT describes the task to be carried out on the product, through the differential between the state after and the state before the task (the added value), WHEN defines the temporal aspects (start dates, end dates, durations…), WHERE relates to the localization of the execution, and finally HOW indicates the procedure to be followed to bring the added value. In the almost cases where the production system is automated, the 'WHICH' is associated to the 'WHERE' (the identification of the resources implies their localization), and the 'HOW' is preset for each 'WHAT' (industrialization implies that the tasks are described in detail, validated and programmed).

The organization of the tasks requires the definition of a subset of the Cartesian product {WHAT} X {WHERE} X {WHEN} for the whole of the tasks to be performed. This organization activity is generated by a planning carried out off line and in a precise way, leading to a scheduling of the operation of the workshop: it is the estimated control [START_REF] Pujo | Vers une approche holonique des systèmes mécatroniques complexes. Proposition d'un système de pilotage auto-organisé et isoarchique[END_REF].

Unfortunately, while the effective implementation of the tasks in the workshop, contingent events occur and disturb the initial planning. The role of the control is thus to find on line a solution allowing the operation of the workshop to be continued by preserving acceptable performances. This operational aspect of control is more and more often carried out by MES (Manufacturing Execution System), on the basis of the re-scheduling of the tasks on the ad hoc resources. It is obvious that the performances will be poorer, and that the initial investment to obtain an optimal solution of resource scheduling will be lost.

A scientific community has recently emerged around Product-Driven Systems [START_REF] Mc Farlane | Auto ID systems and intelligent manufacturing control[END_REF][START_REF] Bajic | Proposition de projet transversal exploratoire du GDR MACS : «Système Contrôlé par le Produit[END_REF]. The interaction between the manufacturing process and the product [START_REF] Wang | Integrated design-to-control approach for holonic manufacturing systems[END_REF] must integrate, in the cybernetic loop, new technologies such as the WSN (Wireless Sensors Network) and the RFID (Radio Frequency IDentification). These technologies must allow the product to be equipped with storage, calculation and communication capacities: then, it becomes "active" within the production system that processes it. This "active" product can be equipped with means allowing the variations of its environment to be collected, decisions to be taken and thus full interaction with its environment (resources of the process, other products, operators…).

Many are the researchers who see in these new capacities the opportunity of largely improving the performances of the operational control of production systems (McFarlane et al., 2002;[START_REF] Pétin | Supervisory synthesis for product-driven automation and its application to a flexible assembly cell[END_REF].

This approach was also recommended by the Productics Experts Committee of the French National Center for Scientific Research (CNRS), in its last prospective analysis.

However, this same committee referred to the need to "make objects of different nature interoperate by exploring the possibilities of homogenizing their respective interaction capacities while controlling the emergence of properties resulting from these multiple interactions". They also mentioned the holonic paradigm, which, in the domain of HMS (Holonic Manufacturing System) [START_REF] Mathews | Organizational foundations of intelligent manufacturing systems -the holonic viewpoint[END_REF], is not restricted to a product-only-oriented vision. This vision related to the evolution of the control system is very interesting: product-driven control of production systems is not sufficient. Indeed, the product as such does not carry all the operation constraints and all the associated information that would allow optimal -or at least satisfactory-control decisions to be taken. This position is largely consolidated by the IMS (Intelligent Manufacturing System) community work [START_REF] Ims | 4th IFAC Workshop on Intelligent Manufacturing Systems, IMS'97[END_REF], which allows the identification of the various types of entities in interaction in a manufacturing production system. Each one of these entities brings its own data set and its own constraints, thus constituting a point of view. It is the taking into account of the whole of the data and constraints, sometimes contradictory, which can generate the best possible solution at a given time. This is why a control integrating multiple points of view and resulting from various types of entities in interaction seems more promising. The HMS results are conceptually in agreement with this proposal [START_REF] Hms | Holonic Manufacturing Systems consortium web site[END_REF].

Holonic architecture of the control

The holonic paradigm was initially proposed by (Kostler, 1967) allowing the modelling of complex social systems. In such systems, an entity (a holon) is at the same time a whole and part of a whole (Janus effect). This approach marks a break with the former hierarchical models, where the behaviours are of the 'master-slave' type according to an arborescent and invariant topology of the decision-making centres, the whole reinforced by the respect of the orders by the decision-making centre slave. Indeed, the holon has a decisional intelligence which enables it to act on its own behaviour, but which also enables it to intervene on the behaviour of the system it belongs to [START_REF] Pujo | Vers une approche holonique des systèmes mécatroniques complexes. Proposition d'un système de pilotage auto-organisé et isoarchique[END_REF]. The hierarchical decomposition is replaced by the recursion of holons and the implementation of the Janus effect. This provides plenty of scope for the implementation of the control system, according to an heterarchical architecture [START_REF] Trentesaux | Les systèmes de pilotage hétérarchiques[END_REF], i.e. being able to mix centralized and non centralized decision centres.

Various holonic architectures are proposed in the scientific literature for the HMS control. The most well known is PROSA (Product, Resource, Order, Staff Architecture) [START_REF] Van Brussel | Reference architecture for holonic manufacturing systems: PROSA[END_REF]. Other architectures are extremely close to that one. For example, ADACOR (Leitão et al., 2006) substantially enhances the hierarchical aspect and positions without ambiguity by adding to the basic PROSA holons a supervisory holon in charge of the coordination and optimization in a group of holons: it is a local and centralized decision-making center. MetaMorph [START_REF] Maturana | MetaMorph: An adaptive agent-based architecture for intelligent manufacturing[END_REF][START_REF] Juin Balasubramanian | An architecture for metamorphic control of holonic manufacturing systems[END_REF] is a holonic control architecture based on a control via a whole set of mediators that are centralized decision-making centres. MetaMorph has been the focus of a certain industrial interest, which has led to the elaboration of the IEC 61499 standards.

The core of PROSA is constituted of 3 types of basic holons: Product Holon (PH), Resource Holon (RH) and Order Holon (OH) (figure 1).

The Product Holon (PH) contains the product manufacturing process, i.e. the necessary knowledge to ensure its manufacture by obtaining a sufficient quality. It acts as an information server at the disposal of the other holons of the HMS, but does not contain the state of the product. The Resource Holon (RH) contains a physical part, namely the production equipment, and an information processing part which orders the equipment and contains resource allocation methods. The Order Holon (OH) represents a task in the production system. It is responsible for the completion of the assigned work within the deadlines.

It controls the physical product, the product state model, and manages the logistic information processing related to the work.

The knowledge management relating to the production results from the interactions between these 3 types of holons. The PH-RH interactions provide knowledge of the process: execution methods of the resources, capacity, achievable quality and possible results. The PH-OH interactions provide knowledge of the production: description of the batches (quantities to be delivered, product reference, tickler file, etc). The RH-OH interactions provide knowledge of the execution process: follow-up of the execution of the processes on the resources, monitoring of the progress and of the process interruption, etc).

Insert here Figure 1. Basic holons and types of associated knowledge PROSA also envisages the possibility of using Staff Holons to support basic Holons in the execution of their tasks, to solve blocking situations or to seek optimization. Staff Holons do not have any decisionmaking power, but can propose a total solution to solve a problem according to the data which are transmitted to them by basic Holons, which remain responsible for the final decision making. However, the use of Staff Holons remains very close to hierarchical view: the proposal for a solution is elaborated in a centralized manner by the Staff Holon, according to techniques that are considered as being very conventional. Then, this solution is used as a basis for the forecasting program, which the basic holons will try to carry out, like in a traditional distributed solution.

Generally, PROSA is implemented via MAS (Multi-Agent System) [START_REF] Blanc | A Holonic approach for manufacturing control: An industrial application[END_REF][START_REF] Germain | A multi-agent supply network control framework[END_REF][START_REF] Valckenaers | MAS coordination and control based on stigmergy[END_REF]. Others HMS [START_REF] Gou | Holonic manufacturing scheduling: architecture, cooperation mechanism, and implementation[END_REF][START_REF] Fischer | Agent-based design of holonic manufacturing systems[END_REF][START_REF] Kotak | Agent-based holonic design and operations environment for distributed manufacturing[END_REF][START_REF] Heragu | Intelligent Agent Based Framework for Manufacturing Systems Control[END_REF][START_REF] Kim | Intelligent Agent Based Framework for Warehouse Control[END_REF][START_REF] Rodriguez | Holonic modelling of environments for situated multi-agent systems[END_REF] also use MAS platforms. MAS can be also used directly [START_REF] Kouiss | Using multi-agent architecture in FMS for dynamic scheduling[END_REF][START_REF] Tranvouez | A multi-agent based scheduling system: a cooperative and reactive approach[END_REF]Caridi and Cavalieri, 2004).

Isoarchical Structure of the Control

The development of control systems disregarding the concepts of hierarchy and centralization [START_REF] Brun-Picard | Contribution à l'élaboration d'un modèle de commande décentralisée[END_REF][START_REF] Pujo | Vers une approche holonique des systèmes mécatroniques complexes. Proposition d'un système de pilotage auto-organisé et isoarchique[END_REF] gradually resulted in passing from the idea of decentralization to the concept of self-organization, then in developing the isoarchy concept, thus revisiting the use of some concepts proposed by PROSA. Distribution and decentralization of decision-making mechanisms are nearby concepts, which have in common the rejection of subordination hierarchical links that traditionally exist in the centralized control systems (Mesarović, et al., 1970), replaced by heterarchic links [START_REF] Trentesaux | Les systèmes de pilotage hétérarchiques[END_REF]. The concept of decentralization can however be distinguished from the less constraining concept of distribution by a functional organization based on the duplication of identical decision mechanisms on all the entities constituting the control system. Certain functions are identically reproduced on all these entities while others maintain a same objective and are adapted to each type of entity. All of them are parameterized, allowing these decision mechanisms to be adapted to their own characteristics. Decentralization is thus a purely architectural concept.

Another aspect that must be taken into account is the temporal sequence of the decision making. The self-organization supposes the absence of estimated organization [START_REF] Pujo | Proposition d'un pilotage décentralisé et auto-organisé pour systèmes automatisé flexible. Application à un Hub de transbordement robotisé fer/fer[END_REF]: if an organization were envisaged, for example a pre-established scheduling, there would be no need for selforganization any more. That implies a decision-making horizon for the very short term, without preliminary estimated organization. Certain works introduce the concept of real-time scheduling [START_REF] Iwamura | A study on a real-time seheduling of holonic manufacturing system -coordination among holons based on multi-objective optimization problem[END_REF]. This concept of self-organization does not predetermine any architectural choice [START_REF] Roy | SYROCO: A Novel Multi-agents Shop-floor Control System[END_REF]. However, a decentralized architecture largely facilitates its implementation.

A control system that is at the same time decentralized, at a single decision level, and self-organized, in real time, can be characterized as isoarchic. The definition of 'isoarchy' can be envisaged from the two Greek radicals: iso-(equal) and -archy (power). It thus means the same authority for the different decision-making centres and thus a total absence of hierarchy, functional as well as in time. In a decision system composed of several decision-making centres, a decisional architecture can be described as isoarchic when each decision-making centre is equipped with the same capacity of decision (it is a collective decision because each concerned holon brings in its decision in decision-making.). This property can be easily obtained when the decision mechanisms are duplicated on each decision-making centre and are parameterized according to the characteristics of each one of them. Isoarchy thus appears as a particular specification of the heterarchy concept and the absolute opposite to the hierarchy concept (Mesarović et al., 1970). Within the meaning of [START_REF] Trentesaux | Les systèmes de pilotage hétérarchiques[END_REF], it can be classified in 'decentralizedtype III' and must not tolerate any nuance. Indeed, the scientific discussions about the architectural structures of control are situated in a linguistic space: from 'centralized/hierarchically' to 'decentralized/self-organized'. Of course, this space includes all the intermediate solutions (semi / pseudo / partial decentralized, etc), or non hierarchical [START_REF] Duffie | Non hierarchical control of a manufacturing system[END_REF] or distributed [START_REF] Sousa | A distributed architecture and negotiation protocol for scheduling in manufacturing systems[END_REF][START_REF] Tharumarajah | Survey of resource allocation methods for distributed manufacturing systems[END_REF]). This cause collateral damage, since it no longer exists an exclusive term whose meaning is the opposite of 'centralization'. For example, the 'heterarchical' term, which has been used for some time now, is being applied to distributed architectures on several decision levels, with local hierarchical decisions. Finally, the concept of isoarchy should only be used on really and completely egalitarian and self-organized architectures.

For the same reasons, it is difficult to validate this isoarchic approach on multi-agent platforms.

These platforms favour more a distribution control (distributed artificial intelligence) than a decentralized one: isoarchy is difficult to obtain with MAS, because there is generally a stimulating, facilitating, coordinating or supervising agent. These various terminologies always imply an agent of higher decisional level, guaranteeing the operation of the system, i.e. able to take decisions in the case of conflicts between agents or in the case of non distributed resolution of the problem [START_REF] Pujo | Vers une approche holonique des systèmes mécatroniques complexes. Proposition d'un système de pilotage auto-organisé et isoarchique[END_REF]. The multi-agent platforms being presented as versatile necessarily involve operational requirements. However, the isoarchic approach can be implemented via the holonic paradigm, given specific software developments. For that, the approach initially proposed by PROSA will be extended and particularized in the next section, with the presentation of PROSIS.

The PROSIS approach

Implementation of a holonic approach in a isoarchic context

In a complex system composed of entities having decisional capacities, the isoarchy is characterized by the fact that all the decisions are taken thanks to the autonomy of these entities. This requires a direct communication capacity between these entities, so as to solve synchronization, coordination and/or cooperation problems effectively. The isoarchic structure of the decision centres offers this possibility:

various holons jointly ensure the decisions that concern them, without instruction or order coming from higher level entities and in interactions via a common communication protocol. This concept of isoarchy can be implemented via the holonic paradigm: it can be noticed that the concept of 'Flat Holonic Form' [START_REF] Bongaerts | Hierarchy in distributed shop floor control[END_REF] is an isoarchical particularization of holonic architecture. In addition, the absence of a central decision system prohibits any preset or estimated organization of the workshop control, which will be progressively organized by the entities. This self-organization implies a real time character which takes into account all information characterizing each entity contributing to the establishment of this operation. The self-organized control functions are integrated in the intelligence associated to each entity (or holon): the authors define a Holon as a conceptual entity based on the association of a given Material Structure (the M_holon), an Information System and a Processing System (the I_holon) that provides a decisional intelligence allowing interaction with other Holons. This structure allows recursive decomposition of manufacturing systems, in compliance with the holonic paradigm, by clearly showing the duality and parallelism between the real world (material) and the informational world (immaterial, in which data and decision making stands). The main problem is synchronisation between material and immaterial parts of this Holon. This is solved with infotronics technologies: The M_Holon has an ID tag containing at the minimum a unique identification number associated to the Holon whose value is stored in the information system of the I_Holon (figure 2).

Insert here Figure 2. Conceptual structure of a Holon xx

The concept of holon is fully compatible with the traditional model of information system (Gigch and Le [START_REF] Van Gigch | The design of an organization information system: Intelligent artifacts for complex organizations[END_REF]) which corresponds to the general system theory (Eriksson 97): It integrates the immaterial aspects (information and decision) and the material aspects (real physical object).

This structuring allows a recursive decomposition of the production systems, in agreement with the holonic paradigm, while clearly revealing the duality and parallelism between the physical world (material) and the informational world (immaterial, where the decision-making is situated).

Product, Resource, Order & Simulation Isoarchic Structure

The PROSIS concepts inherit from the PROSA basic concepts (Product Holon, Resource Holon and Order Holon).

Product Holon (PH) consists of a material product (the physical part) and an informational product (the immaterial part), called I_Product. This I_Product contains the manufacturing process data of the product, but also its state model and all information concerning its traceability. There thus are as many PH as manufactured products or as products in the Work In Progress (WIP). This is a major difference with PROSA. This unit identification requires the deployment of ad hoc technologies, a good example of which being RFID. The ID Tag is fixed on the manufactured product. This ID Tag contains information ranging -depending on the technology implemented and its memory size -from a single identification number to all the data relating to this manufactured product: single identifier, technical description data (dimensions, routing, etc), traceability and quality control data, optimization criteria specific to this product, etc. If only the identifier is stored on the ID Tag, these data are then moved to the information system of the control system, in a structure specially assigned to this product.

Order Holon (OH) represents a task in the production system: a work order concerns a set of PH. It is thus closely related to the concepts of batch, WIP and lead times. A product order is associated to each task. Concretely, the order sheet or the container, the pallet or the case is equipped with an ID Tag. This allows synchronisation with the I Order, which ensures, during completion of the work, the respect of the lead times as well as the taking into account of economic factors (size of the batch, WIP quantities, minimization of the production changes, split batches, etc).

Resource Holon (RH) remains conceptually similar to the definition of PROSA. The resource includes the mechanical part of the equipment and its numerical control rack. The allocation methods of the resources of the I_resource evolve, since the interactions with the other types of holons are different in an isoarchic context. The I_resource also manages the activity planning of the resource, triggers the execution of the tasks via the NC rack, archives the history of the resource activities and updates a set of local production indicators, such as the OOE (Overall Equipment Effectiveness).

These three I_holons will be detailed in the following sections.

The Staff Holon is not used in our approach because this type oh holon is not needed in an isoarchic context. We replace it by a Simulation Holon having a totally different objective. The Simulation Holon is added to show and evaluate the prospects for evolution of the production system with time. Indeed, the main difficulty with a self-organized decision system is the lack of visibility on the future activities, due to the absence of planning and scheduling. Even if an estimated planning turns to be disturbed with use, it presents all the same a falsely reassuring character for the operators and their management. The objective of this paper is not to develop this aspect of PROSIS. Therefore, the Simulation Holon will be mentioned only briefly: it contains the behavioural models of all the holons present in the production system, and updates their respective states starting from the analysis of the messages exchanged between them. Any significant change of state of the production system results in a new initial state allowing the launching into 'warm up' of a simulation. This gives an insight into what may be likely to occur in the production system, and possibly correct anomalies before their emergence [START_REF] Riccardi | DEVS Modelling For The Proactive Control By Simulation Of Kanban Production Lines[END_REF].

Autonomous Control Entity

Self-organization implies that the control decisions must be made locally. Each resource is surrounded by 1 I_resource, p I_products and k I_orders. These latter concern the corresponding products (k ≤ p). The problem of the decision making in the control then becomes a problem requiring the participation of all the entities: resources, orders and products. For that, local and specific interactions will be established between I_xx of (1+p+k) concerned holons. These holons constitute a 'Flat Holonic Form'. It clearly appears that these various holons do not all aim at the same objective, and that the best possible compromise should be achieved for a control solution to be found which is in this context a good solution. Faced with this problem, control is achieved thanks to the support of an Autonomous Control Entity (ACE). An ACE is associated with each resource: it allows the reception of the (1+p+k)

I_holons and supports their interactions. It updates the WIP state of each resource. For that, each ACE is equipped with a RFID reader, which allows synchronization between the physical world and the information system: when a product or a batch of products arrives in the WIP of the resource (or leaves it), the corresponding ID tag is read and the whole {I_product, I_order} is updated (added to or withdrawn from the ACE information structure). An ACE is also equipped with a set of services aiming at organizing the interactions between I_holons, so as to support productivity

The problem of self-organization is based on how the product flows are built in real time. In fact, the true problem is the fate of the product being processed on the resource, i.e. which resource will be in charge of the next stage. Two cases arise:

Firstly, the product being processed will not have the choice, because there is only one resource able to carry out the next phase of its processing. This is thus the case of a fixed flow between a resource i and a resource i+1. Here, the product, at the end of its current processing, must reach the WIP of this resource. It will then come in competition with the other products contained in this WIP, and this will require a local scheduling or another classification technique to determine the sequence of the passages of these products on this resource.

The second case is more complex: it is the case where the routing of the product describes a task without imposing a resource to carry out this task. It is then necessary to find what this resource will be, and several resources may be suitable. To choose the best solution at that moment, the received responses must be assessable and therefore differentiated. Since the potential recipient of the product is not necessarily the same each time, it is thus a dynamic flow. To deal which such a case, the ACE must use a protocol of interaction with the other ACE, rather conventionally inspired from the Contract Net protocol [START_REF] Smith | The contract net protocol: high level communication and control in a distributed problem solver[END_REF]FIPA, 2003). The ACE broadcasts a Call For Proposal (CFP) to other ACE. This CFP contains information on the product and the associated order: it concerns the couple (I_product, I_order). This CFP allows the ACE potentially able to respond to estimate the feasibility of the task:

technical capability of realization of the machining (which depends on the resource characteristics), economic condition of this machining (which depends on the resource power range), wait conditions in the WIP (which depends on the resource loading conditions, thus on the products and the orders constituting the WIP), etc. These two last points condition the performance of the ACE with respect to the CFP: this performance is thus quite contextual and can only be established in real time. It is the most powerful ACE that will become the destination of the product. The performance evaluation conditions will be more precisely illustrated through the example detailed in the next section, where emphasis is placed on this competition between heterogeneous resources, giving inevitably different evaluation results.

The necessary data to the implementation of the fixed or dynamic cases will result from the interactions previously mentioned between the concerned holons. The study of the services supported by an ACE allows a better understanding of how these interactions are facilitated.

Modelling of an Autonomous Control Entity

A certain number of functional primitives are common to all ACE, whatever their application.

Generically, seven main modules composing an ACE can be identified: the Communication, Interaction, Optimization, Planning, Decision, Action and Perception modules (figure 3). After a quick overview of the respective roles of these modules, the three modules that allow total operation of the isoarchic control will be detailed. The Interaction module allows the assignment of the tasks by calling for competition the resources that are potentially able to respond to a CFP. In order to obtain a coherent result, it is necessary to implement a decision protocol based on impartial and common rules and criteria. This decision mechanism belongs to the interaction protocol family of the Contract Net family [START_REF] Smith | The contract net protocol: high level communication and control in a distributed problem solver[END_REF][START_REF] Hsieh | Holarchy formation and optimization in holonic manufacturing systems with contract net[END_REF]. It consists in determining, within a network of entities, the one that gives the best response to a

Call For Proposal: it is the entity that will be entrusted with the execution of the corresponding task. The main functionalities of the Interaction module are summarized in three points:

• in the case of the reception of a message concerning a fixed flow, the transmission to the Planning module in order to insert the task. The characteristics of this task are obtained from the couple (I_product, I_order),

• the management of the interaction with the other ACE in the case of dynamic flows, with the transmission of various information concerning the CFP and the RCFP coming from outside towards the Optimization module or vice versa,

• the sorting of each ACE according to the received offers: the update of the best performance, known for each CFPk, is carried out; when the Optimization module provides the response of the performance calculation, this response is compared with the best known response.

According to the evolution of task attributions and to the RCFP which circulate on the network, the Interaction module also manages the state of the various CFP being processed:

• "Negotiable" CFP: a Call For Proposals being negotiated,

• "Committable" CFP: a Call For Proposals which is temporarily assigned to the ACE because its performance is the best one at that moment; this status can be lost if a better offer (response) appears and regained if, for example, new possibilities appear on the ACE planning;

• "Pre-committed" CFP: an 'Committable' Call For Proposals which is the next one to be processed on the ACE planning (the negotiation completion date has been reached);

• "Committed" CFP: a Call For Proposals that was pre-committed and whose implementation is on-going or about to start, which makes it definitively placed on the resource planning at the commitment date of this entity. Thus, the CFP becomes managed by the Decision module.

The model of this interaction protocol, used in another context (Mekaouche et al., 2009), is described according to the DEVS (Discrete Vents system Specification) formalism in [START_REF] Ounnar | Integration of a flat holonic form in an HLA environment[END_REF].

The Optimisation module allows the ACE to self-evaluate the capacity of the resource to carry out the task described through the received Call For Proposal: the ACE estimates its own performance to be able to respond. This performance evaluation is founded on some intangible principles which allow a robust result to be obtained reliably:

• all the ACE in competition to respond to a Call For Proposal use an identical calculation mode to obtain their performance evaluation; what makes the difference between the results are the differences in the resource characteristics, those of their current state at the time of the calculation and those of their WIP state; there is thus a total transparency in obtaining the results,

• the evaluation algorithms of this performance must be based on models as close as possible to the real behaviour of the resource; for that, a 'craft' analysis of the resource must be possible: for a given type of resource, a parametric modelling (i.e. depending on the real technical characteristics of the resource) is used with as data the task description model being evaluated and that of the current resource state.

This implies a very strong relation between the Optimisation module of the ACE and the different

Holons associated with this ACE: the Holon Resource, of course, but also the Product Holons and the Order Holons.

Thanks to these two conditions, the emergence of the best solution will occur under equity conditions which will support the search for the best solution. The goal is to obtain the 'best' solution based on the real state of all holons. Indeed, the proposed self-organized and isoarchic control system is based on an autonomous and real time control capacity associated with each holon. Each holon is thus controlled. In order to do so, two functions are used (as it was presented above). The first one allows to manage the interactions with other holons. The second allows to situate the capacity of the holon compared to what the other holons can do so that the total system can continue to evolve. As it is extremely difficult to achieve real-time optimization on complex systems with occasional events such as real FMS, we have chosen to seek local optimums in real time, but coupled with a global interaction mechanism.

The methods to elaborate the performance calculation are closely related to the nature of the resource and to the elements allowing the relevance of the solution to be judged. They are expertise methods consisting in using approaches resulting from Artificial Intelligence (expert system), from

Operations Research (multi-criteria analysis) and/or from the Computer-Aided Manufacturing (tool trajectory generation algorithms). In addition, the costs due to waits in the WIP are evaluated and added to the already mentioned realization costs. For that, it is necessary to use the Planning module.

The Planning module is primarily a workspace common to the different holons located around the ACE. It is not a definitive planning, but a dynamic planning in the very short term.

In the chronological order, the planning of the resource contains the task under execution, which is committed, then the following task, which the holons have firmly committed themselves to perform and which is pre-committed. The rest of the planning comprises a set of pre-committed tasks and committable tasks. The latter are temporarily positioned on the planning, waiting for their commitment or their suppression. The responses to the CFP (RCFP) are evaluated according to this planning, while trying to find a place for the negotiable tasks. If the ACE is competitive, the task state becomes committable, the planning is temporarily reserved for this task and a RCFP message is emitted. If no better response is proposed by another ACE before the negotiation completion date, the task state becomes pre-committed.

The tasks corresponding to fixed flows are directly introduced into the planning with pre-committed statuses. A scheduling heuristic or a classification algorithm (Pujo & Ounnar, 2008) can be used to achieve a local optimum.

A pre-committed task cannot be committed as long as the synchronization between the real world and the immaterial world is not effective for the holons concerned: via the RFID reader, the ACE controls the real presence of the product and/or its support.

The whole of this planning can be challenged by a disturbance, either in the equipment (machine breakdown), or on the product (the product has in the meantime become defective), or on the order (priority given to another production), etc. In this case, all the performance calculations are re-assessed and this may trigger interactions between holons and between ACE.

In order to illustrate this relatively complex (because totally automatic, dynamic and real time) mechanism, the example of a flexible turning cell will be detailed.

Case study: Flexible Turning Cell

Flexible Turning Cell presentation

The application proposed is a flexible turning cell, composed of 4 NC lathes with different characteristics (spindle power, workpiece clamping device, capacity (spindle bore and axis travel), tools, number of tool stations, etc), 2 material handling single-girder gantry robots and some peripheral specialized equipment (for measuring, washing, etc). In its basic configuration, the flexible turning cell contains 9 RH: {lathe1, lathe2, lathe3, lathe4, robot1, robot2, measuring, washing, stock} with which the 9 corresponding ACE are associated.

There are pallet zones to store the parts being manufactured, a tool magazine containing a set of interchangeable standard tools, and pallets containing, for each batch, either the blanks or the machined parts. It is thus an automated and flexible production system which operates as a job shop with heterogeneous resources. Here emphasis is put on the optimization of the execution conditions of each task on the machines to which they are assigned. For that, the production tasks to be carried out will be described on a level of intelligibility allowing their optimal projection on a heterogeneous set of machines.

The NC lathes carry out tasks described in a standardized ISO NC language (ISO6983-1, 1982), with additional instructions for the synchronization with the other machines. As for the robots, they are programmed in an NC language for AML type end effector, so with the same synchronization instructions. The peripheral machines are not programmable, but have several categories of work cycles ready to execute tasks and ready to start.

Insert here Figure 4. Visualization of the flexible turning cell

The construction of the response to the CFP results from the interaction between the I_holons contained in this CFP and the I_holons already present in the ACE.

In an isoarchic structure, performance evaluation is essential to position each resource compared to one another, during a CFP related to the execution of each task. This performance evaluation can only be obtained from 'craft' knowledge about the resources. The trajectories then allow to calculate the duration of the task and therefore the related cost or performance. This enables to evaluate the performance of the resource regarding the CFP.

Response to CFP

The performance of an ACE to respond to a CFP depends on both the cost of the product machining on the resource and the cost of different waits of the product.

During a transformation stage concerned with a dynamic flow, the machining costs may vary according to the resource. Indeed, the process knowledge contained in the I_product is incomplete and must be specified by I_product-I_resource interactions. The planning sheet of the I_product indicates the chronology of the working phases concerning such or such type of resource. For each working phase, the work-holding fixture mode of the product, the machining state to be reached (the temporary profile of the product at the end of the working phase) and the ordered list of turning operations necessary to reach this state are indicated. This is carried out through a graphic interface whose example is provided in figure 5.

Each working phase of a part is defined by its initial profile, its final profile, the work-holding fixture and the list of the operations, chosen from a list of possible operations, such as roughing, facing, grooving, recessing, drilling, boring, threading and finishing, for external and internal profiles.

Insert here Figure 5. Turning task programming

The I_lathes are thus equipped with tool trajectory automatic generation algorithms [START_REF] Mognol | Automatic Process Planning In Turning: Generation By Progressive Evaluation[END_REF][START_REF] Anselmetti | A Decision-Based Approach: Application To The Automatic Design Of Process Planning[END_REF][START_REF] Broissin | Contribution à l'amélioration de la réactivité des Systèmes de Production Automatisés et Flexibles grâce à un pilotage basé sur une Génération de Tâches Décentralisée[END_REF]. These algorithms allow a working trajectory cycle to be created for the grooving operation, finish contouring operation, recessing operation. For the grooving operation, it is necessary to determine the finishing oversize by creating a parallel contour for grooving profiles (part geometry profile + finishing oversize and the cutting conditions (radial depth of cut, feed per revolution, cutting speed) by respecting Taylor's tool life theory, while minimizing machining operation time. The grooving trajectory cycle is defined with data resulting from the I_product (stock initial geometry profile, part grooving profile, etc), of the I_resource (lead in distance, stock clearance, lift off distance, lift off angle, spindle torque, spindle power diagram, etc) and of an interaction between both (depth of cut, feed, etc). For the recessing operation, the one-way-mode respects the trailing safety angle, the plunge angle and specific depth off cut. For the finish operation, it is necessary to take into account various options: lead in type (linear / circular), machining direction, cutter compensation with approach and retract path, etc

The obtaining of the whole of trajectories that the tools follow during machining operations can be transformed into machining costs. Each i th elementary trajectory of the j th operation has a duration dij: the length of the trajectory tlij divided by the tools moving speed, i.e. fij (feed per revolution) x Nij (spindle speed). Each operation needs a specific tool: the tool-to-tool change time t2tct must be added. These two times must be multiplied by the hourly operating expense Hk of the resource. This data is known by the I_resourcek. The last additional cost of machining operation stems from the wear of cutting edges. The Taylor's tool life equation gives this cost, with bij: a Boolean worth 0 for rapid motion and 1 for machining trajectory, CSj: the Cutting Speed, K & n: the Taylor's constants, IPj: the Insert Price of the j th operation tool and nce: the number of cutting edges per insert.

In fine, the machining work phase costs mC are:

To these costs are added the wait costs wC. When a resource is immobilized, the cost corresponds to the duration of the blocking multiplied by the hourly operating expense, on the origin resource for a post synchronization (tpost . Hk) and/or on the arrival resource for a pre synchronization (tpre . Hk+1). When the product is waiting in the WIP, the cost is an immobilization cost. This cost is based on the time of this wait tw, on the unit price of the product Pp and on the short term interest rate rsti.

wC = (tpost . Hk) + (tpré . Hk+1) + (tw . Pp . rsti)

These data are derived from the I_resource, the I_product and the interaction between the I_order and the I_resource, at the Planning module level.

                                   p j j r i n j ij ij ij ij k k r i ij ij ij nce IP CS K N f tl b H tct t H N f tl mC j j 1 1 1 . . . . ) . 2 ( .
The sum of mC + wC costs represents the performance evaluation allowing a response to the CFP to be obtained.

Synchronization between resources

The flows of products through the cell require transportation tasks from resource to resource, via resources specialized in the robotized handling of products. These tasks involve precise synchronization between transformation resources and handling resources, more particularly during the exchange of the products, i.e. during the loading and unloading operations. In the case of the flexible turning cell (Figure 6), to transfer a product x from a lathe k to the lathe k+1, it is necessary to use a gantry robot y. First, it is necessary to position the gantry robot in rapid motion in front of lathe k, when the working phase on the resource k is finished on product x. Now, an unloading operation can be launched. Then, the gantry robot can transport product x in rapid motion in front of lathe k+1, where the loading operation can be carried out. If resource k+1 is not available at the end of the working phase on resource k, it is of course necessary to go through the storage stage.

Insert here Figure 6. Loading and unloading operations

The loading and unloading operations are defined from master parametric trajectory cycles.

Parameterization of this cycle is carried out using the data resulting from the I_products and I_resources.

In addition, synchronization between the two resources is pre-established between the two resource cycles, through a coordination pattern. This pattern describes, from the point of view of each resource, the actions and the synchronization points to be implemented through exchanged messages.

Figure 7 shows the example of the removal of a part from a lathe. Once the robot is in position (on the access point of the lathe), it waits for an authorization from the lathe to reach the working area. The lathe opens its jaws, then authorizes the robot to reach the jaw chuck. Depending on the removal cycle, the I_robot generates the movements of its effector until the part is in place in the jaw chuck. Once the part is in position, the I_robot orders, via the ID_Mesy1 message, the I_lathe to clamp the part (M21).

Once the part is maintained in the jaw chuck, the I_lathe reports to the I_robot, via the ID_Mesy2 message, that the robot effector can be open. The robot releases the part. The robot trajectory can continue and it can go back in rapid motion to its access point at the lathe.

Insert here Figure 7. Synchronization between Resource Holons

Simulation results

FMS allow the industry to adapt to changes in demand and to machine breakdown. FMS control requires a good reaction to disturbances [START_REF] Ounnar | Consideration of machine breakdown in the control of flexible production systems[END_REF]. PROSIS must be evaluated through its responsiveness capability, taking into account internal or external disturbances.

Disturbance No. 1: interruption of a resource

The various classes of disturbances can be illustrated by an example: the failure of a NC lathe.

Figure 8 shows an excerpt of the Gantt chart which the simulation model generates and which specifies the dates when the events occur. During such failure, as soon as the lathe stops, the ACE stops the negotiation. The operator intervenes and puts the lathe back in operation. Its ACE can take part in the negotiation again, as soon as it receives a new Call For Proposal. The possibility for a lathe to resume work after a failure depends on the average frequency of the calls for proposal. The higher this frequency, the shorter the time resource has to wait before it can respond to a new Call For Proposal for which it is the most competitive.

Insert here Figure 8. Performance during the appearance of failures

Disturbance No. 2: introducing an urgent batch in a flexible turning cell

The introduction of urgent batches, which challenge the commitments of the various ACE, is also tested. In fact, each Planning module of an ACE manages the notion of task priority and will deal with all the batches with high priority parts first. Upon arrival of an urgent batch in the turning cell, a high level of priority will be affected to the Call For Proposal concerning the first steps of its machining and this level will be preserved through the entire batch manufacturing process. This property comes from the fact that a Call For Proposal contains the I_order, therefore the delivery date.

This behaviour can be observed on figure 9, with the introduction of the Order Holon 'urgent batch n°4', containing 6 Product Holons 'partx' at the date 800. The routing of this 'partx' contains 2 working phases: 'phase1' & 'phase2'.

Insert here Figure 9. Responsiveness faced with an urgent batch order

The simulation mock-up gives the initial situation corresponding to the current production ΣPH'part'.

The first line of figure 9 shows the time scale. ,2]. This is because it is the first resource to be released after the introduction of the urgent batch! -Before the end of this task, the ACE of the RH 'lathe4' diffuses a CFP: (PH 'part1', OH 'phase2') in order to prepare for the assignment of the second phase, -At the end of the first machining, no lathe is available, the other three have started machining other urgent parts and lathe n°4 is not equipped to continue the machining of part 1: it is the RH 'storage' which gets the CFP. Part 1 is temporarily taken out and placed in a storage section by RH 'robot1'. Any PH sent to storage causes the periodic diffusion, from the stock ACE, of a CFP for the execution of the following OH relating to this PH. Thus, the resumption of the manufacture of the stored parts is carried out without the occurrence of a particular process, in the order of the associated OH priorities, then of the concerned PH storage dates. The storage duration increases appreciably but gradually the priority, which allows all the parts to be removed from the stock.

-When a lathe suited for the second machining of part 1 is made available, part 1 is taken out of the storage section. Thus, the PH 'part1' will be processed by the RH 'lathe3 ' [4,1,4]. Indeed, the part being accepted by the RH 'lathe3', the RH 'robot2' take this part and put it on the RH 'lathe3' at time 1563.

-At the end of this last machining, the part is taken out by robot n°1 and placed onto the RH 'washing machine') [4,1,6], and then transferred onto the RH 'measuring machine ' [4,1,8].

-Finally, after measuring, robot n°2 picks up the part and places it on the exit pallet.

Result analysis

In all cases, a good responsiveness of the control system, which continued to produce by using the available resources at their maximum capacity, can be noted. This demonstrates an excellent behaviour of PROSIS.

In practice, the operation of PROSIS shows an effect of smoothing of the loads on the different RH.

Indeed, a very powerful RH will initially be more loaded than the others. But as soon as its loading state becomes too high, the result is waits that will reduce its performance. The other RH, less powerful in theory, become competitive again and can access now the task assignment. Finally, as long as all the RH does not work with a satisfying occupancy rate, new CFPs can be introduced into the production system. This smoothing effect is also observed in the distribution of the RH 'robot' activities.

Conclusion

This paper presents the framework of a new method of production control, PROSIS, based on the social paradigm (holonic approach) and the concept of isoarchy, in disagreement with the traditional methods which seek out a prior optimum. PROSIS provides real advances because it compensates for the inefficiency of traditional methods faced with the increasing product variability imposed by the market and the increasing number of unforeseen events linked especially to the tight flow requirements.

PROSIS is characterized by a total decentralization and self-organization, the decisions being taken directly by the various holons of the control system in the production system. Thus, the highest performances can be achieved in spite of unforeseen events, because:

-holons react directly according to the events; each holon either possesses or shares with the others immediate and total knowledge of the production in progress, of the real progress of its own operations and of its interactions with the other holons;

-adaptation and reaction capacities are maximized since there are no artificial constraints, such as those imposed, in the traditional methods, by the total decision levels;

-the organization of the sequence of the production tasks results from the dialogue between holons, resulting in a scheduling always adapted to the situation: indeed, holons react collectively to the immediate production needs and to the events which occur during this production, while taking into account the capacities and actual availabilities of the resources.

Finally, this approach is based on a research of short-term anticipation using communication mechanisms between holons. Control thus emerges without reference to any estimated forward scheduling. It is thus possible to obtain a nearly just-in-time and extremely reactive operation, because the unforeseen events are dealt with just as the foreseeable ones. The whole of the PROSIS decisionmaking mechanisms operates without estimated decision making, without centralized decision-making centre and without any human intervention. Moreover, PROSIS respects the recursivity and the Janus effect of the HMS: the Flexible Turning Cell can be considered as a completely autonomous RH 'workshop', which, like a RH 'resource', completely self-manages its own operation Therefore, the PROSIS control approach has very promising applications. Moreover, it opens new fields of research: research concerning the application domain for which this approach becomes more effective than the traditional methods, research about its integration in the company's global system, etc.

It provides the system with a better fluidity and a better foreseeability of the production flow. In return, it can benefit from a fine dosage between simultaneous productions, and can thus provide a good balance of the resource load. The short term prospects of this work deals with a better evaluation of the PROSIS performances with respect to other distributed control solutions. For that, [START_REF] Brennan | Metrics for evaluating distributed manufacturing control systems[END_REF] propose two classes of metrics for HMS, which can be integrated in PROSIS.

Finally, the PROSIS approach is fully consistent with the STEP-NC approach [START_REF] Rosso | Future Issues for CAD/CAM and Intelligent CNC Manufacture[END_REF].

The standard (ISO 14649-1, 2003) provides a hierarchy of the machining operations ('Project', 'Workplan' and 'Workingsteps'), which describes the machining sequence, a definition of machining features and machining operations. The corresponding data models can be integrated in PROSIS. This requires a reflection on the structure of the information systems associated to the product holons and to the resource holons. The CAD-CAM-NC integration provides an interesting framework for the improvement of PROSIS and its integration in the context of the extended and numerical enterprise.

Insert here Figure 3 .

 3 Internal structure of an ACEThe Communication Module ensures the link with the other ACE. It deals with all the technological aspects that the use of an industrial communication network involves: message formatting, data transmission and monitoring of the good transmission of the messages. The Interaction module manages the dialogue with the other ACE. It analyze the received messages and triggers the processings to be able to respond in the best possible way, when a CFP is concerned. For that, the Optimization module elaborates the best possible solution, by taking into account the technical characteristics of the resourcewhich limits its performance -and its availabilities. The latter are provided by the Planning module, which in all the cases manages the timetable of the resource. The last three modules ensure the local control of the resource. The Decision module manages the resource handling modes, which means that, according to the supervision state in which it is, it launches the task programmes by delivering to the Action module the lists of the orders to be carried out. The Perception module ensures the technical data acquisition (such as tool wear monitoring[START_REF] Silva | Development of a system for monitoring tool wear using artificial Intelligence techniques[END_REF] and axis motion sensors), which allows task loopback via the Action module. It also ensures the aggregation of these data for the Decision module, for the monitoring of the task, and the Optimization module, for the capitalization and validation of the task generation processings.The isoarchic character of the control is based on the Interaction, Optimisation and Planning modules of the ACE.

Figure 1 .Figure 4 .Figure 5 .

 145 Figure1. Basic holons and types of associated knowledge[START_REF] Van Brussel | Reference architecture for holonic manufacturing systems: PROSA[END_REF]).

  Each task is located on the Gantt by the triplet[n°batch, n°part, n°task], vertically written at the commitment date of task by the resource.By definition, an OH 'urgent batch' has priority. Its introduction implies to reconsider all the precommitments of the RH 'lathe'. The CFP are evaluated by the ACE after sorting in order of priority, then at equal priority, in chronological order (FIFO). It is interesting to note that whenever the ongoing machining of a lathe comes to an end, this lathe starts machining a part of this urgent batch. The products that are in completion phase remain directed normally towards the exit pallets, but the other less urgent parts are temporarily stored in their intermediate state, until the urgent batch is completely processed.

	The PH 'partx' of the OH 'urgent batch n° 4' are dispatched on the ACE through negotiation: 6 parts
	composed this batch, so 6 CFPs corresponding to the OH 'phase1' of the PH 'partx' have been placed at
	date 800. Let us follow the progress of the first part of batch n°4, the PH 'part1' [4,1,*]:
	-At time 900, lathe n°4 is the first turning resource available. The RH 'robot1' picks up the blank of
	the PH 'part1' on the entry pallet and moves it [4,1,1] on the RH 'lathe4'. This means that it is the ACE of
	the RH 'lathe4' that has won the CFP associated with the assignment of the first machining phase of the
	first part [4,1

  Parallel to this mechanism is the mechanism of transfer task assignment by the RH 'robots': any transfer task involves a CFP launched by the ACE of the RH from where the product must be removed, once its destination is known. This CFP, (PH 'parti', OH 'transfertk') contains the description of the PH in its intermediate state, its gripping mode, the gripping and removal cycles as well as the destination and the probable start date of the task. It is the ACE of the RH 'robot' that has given the best response to this CFP which gets the CFP and the associated RH which carries out the task. Thus in the example of

	figure 9, the PH 'part1' will be transferred by the RH 'robot1' and 'robot2', in the following order: RH
	'robot1' [4,1,1], RH 'robot1' [4,1,3], RH 'robot2' [4,1,3bis] (exit from the stock), RH 'robot1' [4,1,5], RH
	'robot1' [4,1,7] and RH 'robot2' [4,1,9].