Project-driven planning and scheduling support for ... - Springer Link

2 downloads 8011 Views 646KB Size Report
Springer Science+Business Media, LLC 2006 ... software package, and is illustrated using the example ... to better respond together to business opportunities.
J Intell Manuf (2006) 17:641–651 DOI 10.1007/s10845-006-0034-0

Project-driven planning and scheduling support for virtual manufacturing Zbigniew A. Banaszak · Marek B. Zaremba

Received: February 2005 / Accepted: January 2006 © Springer Science+Business Media, LLC 2006

Abstract The paper addresses the issue of decisionmaking support for small and medium-size enterprises operating within a virtual project-driven enterprise environment. The problem considered here can be defined in terms of finding a feasible schedule that satisfies the constraints imposed by the work-order duration, the price, and the time-constrained resource availability. The problem belongs to the class of multi-mode case problems of project scheduling, where finding a feasible solution is NP-hard. A heuristic method for process planning and scheduling is proposed. The method is based on a critical path approach and the branch and bound search scheme. It has been implemented in a web-enabled interactive software package, and is illustrated using the example of a virtual construction enterprise. Keywords Project management · Virtual enterprise · Scheduling · Production planning · SME · Project-driven manufacturing · Branch and bound search Introduction With emerging applications of Internet communication technologies, various product development activities can Z. A. Banaszak (B) Department of Computer Science and Management, ´ Technical University of Koszalin, Sniadeckich 2, 75-453 Koszalin, Poland e-mail: [email protected] M. B. Zaremba Département d’informatique et d’ingénierie, Université du Québec (UQO), Gatineau, QC J8X 3X7, Canada e-mail: [email protected]

be effectively performed at different locations using distributed sources of information, thus reducing the product development lead-time. This technology shift tends to transform local factory automation to a global enterprise and business automation. The intrinsic value of a web-based manufacturing system is to enable real-time decision making by product designers, manufacturing entities, and suppliers. Web technologies have already been employed in the process of integration of the entire manufacturing chain, from design through manufacturing and supply management to maintenance and service, and over the entire product life-cycle, from the initial concept of a product to its end use and, finally, its disposal. Theoretical issues related to web-enabled manufacturing as well as practical applications in that area have become topics of growing interest. A web application for conceptual product development, including such modules as communication, role assignment, awareness of presence, history management, participation, and conflict resolution, was presented in Huang, Yee, and Mak (2001). Integration of the conventional CAD systems with web-based manufacturing systems has been addressed mainly in the context of CAD-based product modeling and data exchange. Conversion of CAD databases to the IGES format and subsequent translation into the VRML models was reported in Nidamarthi, Allen, and Sriram (2001), and a system to convert STEP models created from CAD systems to the Product Data Management (PDM) model, suitable for web-enabled applications, was presented in Kim and Jeong (2001). A web-based system for 3D assembly was discussed in Chen, Song, and Liavas (2001). Many systems using the Internet communications technology have been developed for supporting and solving specific engineering

642

design problems (Ahn, Bharadwaj, Khalid, Liou, & Wright, 2002; Ou-Yang & Chang, 1999; Wang, 2002; Yang & Xue, 2003; Yin, Tian, & Taylor, 2002). Virtual enterprise can be treated as an example of a web-enabled organization. At the enterprise level, a larger role is played by web applications that are geared to the decision-support type operations helping the enterprises to share skills and resources in order to better respond together to business opportunities. At the level of theoretical developments, a multilevel resource capacity representation using iterative matching of design, process and facility attributes was proposed (Ratchev, Shiau, & Valtchanov, 2000) as a new theoretical platform for a distributed decision-making environment. Efforts have been undertaken (Efstathiou, Calinescu, & Blackburn, 2002) to develop an expert system capable of estimating the complexity of a web-enabled manufacturing organization. The system considers the flow of material and information, and evaluates the structural, dynamic and decision-making complexity of a virtual manufacturing system. Choi and Bae (2001) reported an architecture for active product configuration management. A platform for virtual agile manufacturing was discussed in Tang, Zheng, Chin, Li, Liang, Jiang, and Hu (2002). A generic planning framework was applied in the construction equipment division of Samsung Heavy Industries of Korea (Pant, Sim, & Hsu, 2001). Existing e-business portals for SMEs were reviewed in Chan and Chung (2002). An ever important and inherently difficult problem is scheduling of manufacturing tasks. Scheduling in web-based environments in the context of specification of workflow and resource allocation tasks was discussed in Leong, Ho, and Lam (2001). An optimal scheduling method for web-based production was proposed in Jia, Fuh, Nee, and Zhang (2002). In this general context of virtual enterprise, the paper addresses the issue of decision-support for small and medium-size enterprises (SMEs) operating within a web-enabled organization. The objective is to find a computationally effective method of planning the production flows in a virtual enterprise. The problem considered here can be defined in terms of finding a feasible schedule that satisfies the constraints imposed by the duration of work-order processing, the price, and the time-constrained resource availability. In other words, we are looking for an answer to the question whether a given work order can be accepted for processing in a virtual enterprise. The problem belongs to the class of multi-mode case problems of project scheduling, where finding of a feasible solution is NP-hard (Kerzner, 1984; Lova, Maroto, & Tormos, 2000), i.e., with non-polynomial computational complexity.

J Intell Manuf (2006) 17:641–651

In order to decide, we have to take the producer capabilities and the customer needs into account. The issue of whether a new production order (i.e., a new project) can be executed in a given production system falls within the problem of resource-constrained project management problem. The scheduling aspect of the problem has been addressed in two situations: the scheduling of a single project and the scheduling of multiple simultaneous projects (Anavi-Isakow & Golany, 2003; Brucker et al., 1999). It should be noted that 84% of SMEs work with multiple projects. Research also points to the predominance of projects with fewer than 50 activities (84%) and to the fact that overall, about 95% of projects have fewer than 100 activities (Lova et al., 2000; Payne, 1995). Most of the publications on project management have been dedicated to a single project. In recent years there has been a growing interest in problems related to project scheduling in multi-project environments. A dominant criterion in the single-project problem is the satisfaction of time constraints. In contrast, scheduling of several projects with common and constrained resources has to take into account other criteria, such as idle resources, resource leveling, in-process inventory, and project splitting (Lova et al., 2000). The rest of the paper is organized as follows. In the next section, the main decision problem is formulated and discussed in terms of its web-based implementation. In the section “Heuristic method”, a heuristic method for solving the problem is proposed. Section “Computer experiments” presents the software package as an implementation of the production planning and scheduling method. Results and some concluding remarks are presented in the “Conclusions” section.

Decision-making problem Problem statement Let us consider a manufacturing system offering a given production capability, which is currently processing some work orders. Only a portion of the production capacity is thus available for use in the system. The question facing the decision maker is whether the consumer requirements can be balanced with the producer capabilities (Fig. 1). The problem can be now formulated in the following way. A given work order is represented by an activityon-node network (i.e., admissible workflow), where the nodes and the arcs represent the activities and precedence relations. The workflow model can be defined as a relationship among actions/activities treated as components of the considered processes. The work order is

J Intell Manuf (2006) 17:641–651

643 Remote Manufacturing Design Support System

Internet

Transformation and Synchronization Catalog Aggregation Process

JCA Adapter

Remote EISs CONSUMER Production volume Production order cycle Cost Other

Workflow Module

Variations of

Resource availability

Production routings Resource allocation Feasible workflow Activity network

Fig. 1 Decision making as a problem of balancing consumer’s requirements with producer’s capabilities

Scheduling

Service

PRODUCER Production capability Resource availability Alternative routings Other

Scheduling process

specified by a project duration deadline, which is equivalent to the required completion time (the work order cycle), as well as a total project cost constraint (selling price). Each activity may be executed in one of the available modes (system resources). Furthermore, no activity may be pre-empted and the mode once selected may not be changed. Given a time horizon, which is an upper bound on the project’s makespan, there will be only a certain number of units of available renewable resources in the considered period. The cost of using a resource unit is specified in the map of accessible renewable resources. The problem at hand is to find a makespan-feasible schedule that satisfies the constraints imposed by the precedence relations and by the time-constrained resource availability. The objective is to answer the following question: Is there a potential virtual enterprise which is able to carry out the work order (i.e., the project) in accordance with the enterprise’s technical capacities and the client’s requirements? In this case, we focus primarily on the scheduling of a production order, i.e., the problem of coordinating processes and activities related to work-order processing, transportation, inventory management, warehousing, and production. The goal is to achieve a well-synchronized behavior of dynamically interacting components, where the right quantity of the right material is provided in the right place, and at the right time (Banaszak, Saniuk, & Zaremba, 2003). Implementation architecture A logical architecture of the above decision-making application, designed for the production flows in webenabled virtual enterprises communicating with remote

A feasible schedule

Fig. 2 Project planning and scheduling architecture for virtual manufacturing

Enterprise Information Systems (REIs) as well as in project-driven SMEs, can be illustrated as in Fig. 2. As indicated above, the architecture can be applied to the production flows encountered in project-driven virtual enterprises (Huang et al., 2002; Leach, 2000) as well as in SMEs (Anavi-Isakow & Golany, 2003; Brucker et al., 1999). That is because the common platform provided by the workflow model (Chin-Yin, 2002), and implemented in the workload module, describes the workflows of tasks, activities, etc., throughout the production flow planning process. An essential requirement of distributed manufacturing in a virtual enterprise is the integration of geographically remote enterprise information systems (EIS) into planning and management processes. This raises possible issues of maintaining adequate quality of service (QoS). The remote client server is usually situated at a different location than the server that executes the middle-tier remote manufacturing planning application. Variable network and server load conditions can lead to unpredictable response times, and the processes that require access to transactions running on the application system may end up being blocked for long periods. An economic and technically sound solution that enables the required levels of QoS is a combination of Java-based technologies, such as Java Connector Architecture (JCA), Java Messaging Service (JMS), and Web services (Genkin, 2004). The JCA specification provides a standard interface for accessing EIS transactions and data and explains how to develop and use a pluggable

644

component called a resource adapter. The resource adapter is a set of Java classes that comes along with an XML deployment descriptor that details the resource adapter’s capabilities. At the system level, the JCA specification defines the standards for connection and transaction management. At the application level, it defines the standard Common Client Interface (CCI) in which client applications can interact with the resource adapter. In a web-enabled manufacturing situation, it may not be feasible for the client system to communicate with the manufacturing EIS using that system’s specific protocol. This problem is solved by using the Java Messaging Service (JMS) for cross-system communication. The JMS specification defines a set of contracts that describe how the client’s messaging engine can be plugged into the application. Consequently, distributed applications whose components are loosely bound to each other can be constructed.

Heuristic method The scheduling problem described above belongs to the class of multi-mode problems of project scheduling where finding a feasible solution is NP-hard (AnaviIsakow & Golany, 2003; Lova et al., 2000; Payne, 1995), i.e., the computational complexity rises non-polynomially with the increase in the problem size. In order to cope with this issue, let us consider a heuristic method based on the branch and bound scheme. The searching procedure is driven by an upper bound evaluation policy. Searching strategy In order to avoid the cost of exhaustively enumerating possible schedules, the explored cases are limited to those with the lowest margins of cost and time. In other words, all the cases that could lead to an unfeasible schedule are considered first. The flowchart shown in Fig. 3 provides a graphical representation of the procedure. The difference between the requested project duration deadline and the project makespan obtained for the case of no resource time-constraints is applied as the upper bound. The first step, then, is to calculate the difference between the deadline and the project makespan (i.e., the critical path). The same applies to the cost evaluation (i.e., the cost of resources in the critical path). In the case where a feasible schedule exists, taking into account the availability of time-restricted resources, the makespan is calculated. The cost and time margins are

J Intell Manuf (2006) 17:641–651

calculated again for this new critical path. If one of the margins is less than zero, a feasible schedule does not exist. In order to continue the searching process, a modified project network and modified resource availability constraints have to be considered as new data. After removing from the project network the activities assigned to the critical path, a set of sub-networks is considered. Each sub-network has its own duration deadline resulting from the previous makespan (at the points in time corresponding to the fork and/or joint type nodes of the critical path in the project network). Also, the removal of resources assigned to the critical path means that the modified resource constraints have to be considered. Then, the corresponding upper bound can be calculated for each sub-network. Finding the sub-network with the lowest value upper bound allows the planner to repeat the main procedure, i.e., to calculate the cost and time margins, and then to consider the new subnetworks. In other words, one has to find iteratively—within the extended set of subnetworks—the element distinguished by the smallest value for its upper bound, and then calculate the margins. The procedure ends when either of the margins is less than zero or the set of sub-networks is exhausted. More formally, an ordered set of sub-networks {AN1 , AN2 , AN3 , . . ., ANn } can be observed with the following sufficient conditions for a feasible project schedule: (i) ANi ≺ ANj ⇔ UBi ≤ UBj , UBi = TLi − CPi , and UB ≥ 0 (ii) ∀i ∈ {2, . . . , n − 1}CPi (RCi−1 ) ≤ Mj (CPi−1 ), and CP1 (RC0 ) ≤ M1 (CP0 ) = Th and Mj (CPi − 1) ≥ 0 (iii) ∀i ∈ {1, 2, . . . , n − 1}Mj = Mj−1 − CPLj ≤ 0, and M0 = AC and Mj ≥ 0 where ANi is the ith activity network, UBi the upper bound of ANi, AC the required project cost limit, TLi the time limit for the duration of the ANi sub-network, CPi the makespan of the ANi sub-network (the time constraints imposed on the resources that are not taken into account), RCi = f (RCi−1 , CPi−1 ) the actualization of the (i − 1)th resource constraints following the exclusion of resources associated with the (i − 1)th critical path, CPi (RCi−1 ) the makespan of the ANi sub-network taking into account the time constraints RCi−1 imposed on the resources, Mi (CPi−1 ) = TLi − CPi (RCi−1 ) the time margin of ANi taking into account the actualization of the (i − 1)th resource constraints following the exclusion of the resources associated with the (i − 1)th critical path, Mi the cost margin after taking into account the cost CPLj , i.e., the cost of the utilization of the resources

J Intell Manuf (2006) 17:641–651

645

Fig. 3 Flowchart of the search procedure

associated with the critical path of ANi , and Th is the required project duration and/or joint type nodes of the critical path in the project network. The heuristic search consists in searching the upper bound value, and results in an order in which the resource constraints are then applied. Of course, the modification of resource constraints can influence the already calculated values of upper bounds. This, in turn, may result in some feasible schedules being overlooked. In other words, the heuristic rule can be treated as a set of sufficient conditions. However, a feasible solution may also exist in the cases where the sufficient conditions are not satisfied. The negative result simply means that a feasible schedule cannot be considered due to the conditions built into the searching procedure. Therefore, there is no guarantee that the feasible schedule does not exist. Such an evaluation could be enhanced if the set of sufficient conditions were extended. In order to illustrate how a new heuristics could be developed by adding new conditions, let us introduce some modification to conditions (i)–(iii). Specifically, let condition (i) be replaced by the following one: ANi ≺ ANj ⇔ UBi ≥ UBj ; UBi = TLi − CPi and UB ≥ 0.

The conditions encompassing the cost and time constraints together with the resource cost and availability constraints provide a natural framework for the implementation of constraint logic programming (CLP) methods. Resource allocation heuristics The proposed method includes four resource allocation heuristics. It is based on the estimation of the value of resource time availability and the average of the resource usage cost in a given time period. The proposed heuristics are the following: • • • •

The smallest resource time availability, The greatest resource time availability, The lowest average resource cost, The highest average resource cost.

The two first heuristics are based on estimating the value of the resource time availability in a given time horizon (sub-network duration time). From the set of resource alternatives the one characterized by the smallest/greatest time availability is selected and then is

646

J Intell Manuf (2006) 17:641–651

Fig. 4 Project network (a) and resource allocation table (b)

Resources

Table 1 Resource availability constraints R1 0 R2 0 R3 0 R4 0 R5 0 R6 0 1

0 0 0 5 0 0 2

3 0 0 5 0 0 3

3 7 0 5 0 0 4

0 7 0 5 0 3 5

0 7 0 5 0 3 6

3 6 0 5 4 3 7

3 6 0 5 4 4 8

3 3 3 0 3 3 3 3 3 3 0 0 0 0 0 2 2 2 2 2 2 2 2 6 6 0 0 0 0 8 8 8 8 8 0 0 0 0 0 0 0 0 0 0 0 0 0 9 9 9 9 9 0 0 9 9 9 9 9 9 9 0 0 0 0 1010 1010 5 0 0 0 0 0 0 0 5 5 5 5 5 5 5 0 0 0 0 0 0 0 0 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 0 0 0 0 0 0 0 4 4 4 4 4 4 4 0 0 0 0 0 0 5 0 0 0 0 5 5 5 5 5 9 1011 1213 1415 1617 1819 2021 2223 2425 2627 2829 3031 Planning horizon

Fig. 5 Sub-networks

assigned to the given activity. The value of the resource time availability is computed as follows: di =

DD 

y(ri ),

di ∈ {0, 1}

(1)

i=g

where di is the ith resource time availability, g the beginning of the planning horizon, DD the end of the planning horizon, and y(ri ) is the binary variable which determines the availability of the rth resource in the ith time unit. When y(ri ) = 0, the cost of resource utilization is equal to zero (the given resource is busy), and y(ri ) = 1 means that the resource cost is greater than zero (the resource is eligible). In the third and the fourth heuristics, priority is given to the resource characterized by the lowest/highest cost in a given planning horizon. The cost value is estimated as follows: 1 ki 1 i=g DD

ki =

(2)

where ki is the average cost of the ith resource utilization, ki the resource utilization cost, d the time of the resource availability in the ith time unit in a given time period. The computed parameters, i.e., the resource time availability and the resource usage cost, depend on time. They are determined in a given period from the duration of the executed activities of the sub-network. Illustrative example As an example, let us consider a project specified by the activity network shown in Fig. 4(a). Let the project duration deadline equal Th = 31 units of time and the project total cost equal Kh = 270 units.

Resources

Table 2 Gantt chart of the critical path for sub-network S2 R1 0 R2 0 R3 0 R4 0 R5 0 R6 0 1

0 0 0 5 0 0 2

0 0 0 5 0 0 3

0 7 0 5 0 0 4

0 7 0 5 0 3 5

0 7 0 5 0 3 6

0 6 0 5 4 3 7

0 6 0 5 4 4 8

0 0 0 0 0 0 0 3 3 3 0 0 0 0 0 2 2 2 2 2 2 2 2 6 6 0 0 0 0 8 8 8 8 8 0 0 0 0 0 0 0 0 0 0 0 0 0 9 9 9 9 9 0 0 0 0 0 0 0 0 0 0 0 0 0 10 10 10 10 5 0 0 0 0 0 0 0 5 5 5 5 5 5 5 0 0 0 0 0 0 0 0 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 0 0 0 0 0 0 0 4 4 4 4 4 4 4 0 0 0 0 0 0 5 0 0 0 0 0 0 0 5 5 9 10 1112 1314 1516 1718 1920 2122 23 24 25 26 27 28 29 30 31 Planning horizon

A variation of the activity assignment is shown in Fig. 4(b). Empty cells of the table specify the activity processing time using the assigned resource. Table 1 specifies the time-constrained availability of resources. Cost equal to zero means that the given resource is busy at the moment. Applying the Critical Path Method (CPM), the critical path consists of the following activities: A1 –A2 –A4 –A10 –A11 and corresponds to the following production routing: R1 –R1 –R1 –R3 –R6 . The minimum completion time of the project is equal to 20 units of time. Taking into account the resource time availability constraints, the project makespan equals 29 units of time (see Table 1, where the shadowed cells depict the critical path). The corresponding cost is equal to 108 units. So, both the time margin (31 − 29 ≥ 0) and the cost margin (270 − 108 ≥ 0) allow for the continuation of the search process. Now, let us remove from the project network the activities belonging to the critical path. We obtain a set of sub-networks (Fig. 5) and new resource availability constraints (Table 2). The upper bounds of the sub-networks are as follows: 12 units of time for sub-network S1 (due to the critical path, activity A2 may start at time unit 12; however, because of resource R4 availability, it can only begin at unit 15), and 9 units of time for subnetwork S2 (due to the critical path, activity A6 may start at time unit 16; however, because of the resource R4 availability, it can only begin at unit 17). Note that taking into account the critical path in Table 1, the duration deadlines for sub-networks S1 , S2 are the same and equal 22 units of time (from 5 to 26).

J Intell Manuf (2006) 17:641–651

647

Resources

Table 3 Gantt chart of a critical path for sub-network S1 R1 0 R2 0 R3 0 R4 0 R5 0 R6 0 1

0 0 0 5 0 0 2

0 0 0 5 0 0 3

0 7 0 5 0 0 4

0 0 0 5 0 3 5

0 0 0 5 0 3 6

0 0 0 5 4 3 7

0 0 0 5 4 4 8

0 0 0 0 0 0 0 3 3 3 0 0 0 0 0 2 2 2 2 2 2 2 2 0 0 0 0 0 0 8 8 8 8 8 0 0 0 0 0 0 0 0 0 0 0 0 0 9 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 10 1010 10 5 0 0 0 0 0 0 0 0 0 0 5 5 5 5 0 0 0 0 0 0 0 0 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 0 0 0 0 0 0 0 4 4 4 4 4 4 4 0 0 0 0 0 0 5 0 0 0 0 0 0 0 5 5 9 10 1112 1314 1516 1718 1920 2122 2324 2526 2728 2930 31 Planning horizon

Resources

Table 4 Gantt chart of the feasible schedule R1 R2 R3 R4 R5 R6

A1,1

A1, 2 A1, 3

A1, 4 A2, 3 A3, 1 A2, 4

A3, 3 A2, 2

A2, 5 A3, 4 1 2 3 4 5 6 7 8 9 10 11 1213 14 15 1617 18 19 2021 22 23 2425 26 27 2829 30 31 Planning horizon

Since the lowest upper bound corresponds to sub-network S2 , its critical path has to be determined first (see Table 2). The relevant time and cost margins are 9 units of time and 73 = 200 − 127 units of cost, respectively. Sub-network S2 contains the unique path. Therefore, the searching process considers sub-network S1 as the next path. Since the time and cost margins hold (the time and cost margins equal 3 units of time and 17 units of cost, respectively), the activities of the critical path (Table 3) have to be removed from sub-network S1 . The final feasible schedule for the project is shown in Table 4.

Computer experiments The presented method has been implemented in a software package called Project-Driven Virtual Enterprise Simulator. A main objective of the package is to provide an answer to the question whether a given work order can be completed for processing in a virtual enterprise. A positive response to the question provides a feasible schedule in the form of a Gantt chart and a report of the project cost. Some derivative questions can be formulated as follows. Does there exist a potential structure of a virtual enterprise which will allow the work order to be completed according to the client’s requirements and guaranteeing that the due time for work orders already being processed remains unchanged? What is the completion time of the project? What is the total cost of the work order? Might there be alternative variants of the workflow? Let us analyze the following example of a construction developer enterprise that is considering a new order to construct a detached house. Table 5 gives a breakdown of the project activities.

Table 5 Specification of project activities No. Activity

Symbol Operation time (days)

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29

O1 O2 O3 O4 O5 O6 O7 O8 O9 O10 O11 O12 O13 O14 O15 O16 O17 O18 O19 O20 O21 O22 O23 O24 O25 O26 O27 O28 O29

Transfer and development of the site Land survey Assembly of land Excavation for foundation Connection of hydro Connection of sewage Construction of foundation Pouring the foundation plate Construction of external walls Construction of ceiling Construction of partition walls Construction of roof Roof cover Partitions Electric installation Plumbing Heating system Plastering of internal walls Installing windows and external doors Glazing Stairs Insulation of external walls Painting of walls Plastering of external walls Fencing of the lot Flooring Installing internal doors Landscaping Invoicing

2 1 2 3 4 4 5 10 7 6 3 6 11 13 16 12 18 7 5 9 4 17 13 8 11 7 5 15 1

The client wants to spend no more than 70,000 cost units. The client is to pay for the materials, too, but their costs are not included. The house must be built in 7 months. The work order may start by April 1 and must finish by November 30 at the latest. The summarized time horizon amounts to 244 days. In order to analyze the feasibility of the project, the firm should take into account the production capabilities and the customer’s needs. The developer has to determine what resources (a set of sub-contractors and partner firms) are necessary to complete the work order. Then the specific operations of the manufacturing processes have to be established. Based on the given execution time for each operation and the cost of resource usage, the relevant resources are selected. Let us assume that the structure of the virtual enterprise consists of a developer and 12 other firms. The firms are specialized and have a core competence in their particular fields. A specification of sub-contractors and their production resources is presented in Table 6. In the planning horizon, a part of the production capacity is available—after 7 months—for use in a new

648

J Intell Manuf (2006) 17:641–651

Table 6 Set of production resources Name

Resource (sub-contractor)

Symbol

Firm 1 Firm 2 Firm 3

Labor Geodetic surveyor Heavy equipment Concrete mixer Labor Electrician Masonry Plumbing Heating equipment installation Roofer Structural construction Joiner Painter Mason Building insulation worker Window installer Contractor

Z1 Z2 Z3 Z4 Z5 Z6 Z7 Z8 Z9 Z10 Z11 Z12 Z13 Z14 Z15 Z16 Z17

Firm 4 Firm 5 Firm 6 Firm 7 Firm 8 Firm 9 Firm 10 Firm 11 Firm 12 Developer

work order. First, work order parameters are determined in the program. The client’s requirements, specified by such parameters as the production volume, production cycle, selling price, and required time units, are entered into the software package. A network diagram of the work order is shown in Table 7. Each of the production resources is characterized by the name of the supplier firm, the type of resource, the time availability, and the cost of use. Each of the project participants specifies the cost of their resources. The value of the resource cost depends on the cost calculation done by each sub-contractor. The resource time availability results from the schedules provided by the firms. The resource availability constraints, specified in terms of the cost of use, are shown in Table 8. A zero cost means that the resource is not available (is busy). A feasible variant of the resource allocation is shown in Table 9. It is assumed that renewable resources can be used and that alternative resources exist. This implies that it is possible to execute a given activity using different resources (in different sub-contracting enterprises). After the input data have been entered, the process verification starts. In the first step, the lowest upper bound strategy is used. It is assumed that there are alternative resources. Therefore, one of the resource allocation heuristics should be chosen. From four implemented heuristics, only two lead to a feasible schedule for the work order. When the “greatest resource time availability” heuristic and the “lowest average resource cost” heuristic were used, the software package gave a response. The response means that sufficient resources are available to execute the project accurately according to the customer’s requirements and the technical ability

of the production system. The margin time of the critical path was less than zero (−8 time units). The program checked the existence of the feasible schedule with the two new heuristics, i.e., the “shortest production time availability” heuristic and the “highest resource cost” heuristic. The results of the resource allocation variations are two different Gantt charts. In the first case, the completion time equals 215 days (the time margin is 29 days). A fragment of the feasible Gantt chart is shown in Table 10. In the second case, the completion time is longer and equals 217 days. The obtained schedules are different. The difference is the result of the selected resource allocation variant. The project costs are equal to 66,000 cost units and 67,770 cost units, respectively. The same applies to the cycle time. Using the first heuristic reduces the time required to complete the project. The gain is 2 days. A second advantage is the reduction of the investment. The spared resources are equal to 1,170 cost units. The first heuristic is more efficient. It gives better results with respect to two project parameters, i.e., time and cost. Adoption of the two heuristics results in a feasible variant of the realization of the house-building project. In conclusion of the first step, this kind of project can be executed according to the client’s requirements and satisfying the resource constraints determined by the proposed structure of the virtual enterprise. In the second step, the biggest upper bound strategy was used. The four implemented resource allocation heuristics do not lead to a feasible solution. The negative result means that a feasible schedule cannot be obtained due to the conditions built into the searching procedure. Table 11 presents the statistics of the modeling: I, the smallest upper bound strategy; II, the biggest upper bound strategy; 1, the smallest resource time availability heuristic; 2, the greatest resource time availability heuristic; 3, the lowest average resource cost heuristic; 4, the highest average resource cost heuristic. A combination of the smallest upper bound strategy and the smallest resource time availability heuristic produced the best result both in terms of the price and the completion time. The software supports communication and sharing of the project information through e-mail messages, links web pages with diagrams, supports XML and the review mode. Conclusions The paper focuses on the prototyping phase of the development of a product—a critical phase in web-enabled manufacturing, during which the realizability and admis-

J Intell Manuf (2006) 17:641–651 Table 7 Network diagram

Table 8 Availability of renewable resources

Table 9 Resource allocation

649

650

J Intell Manuf (2006) 17:641–651

Table 10 Feasible schedule

Table 11 Results of work order verification

Verification procedure Strategy

Heuristics

I I I II

1 2, 3 4 1, 2, 3, 4

Schedule (yes/no)

Yes No Yes No

sibility of the structure of the virtual enterprise are assessed. A new heuristic method for finding feasible and optimal schedules was proposed, based on the critical path method and the branch and bound search scheme. The theoretical results obtained have been implemented in a web-enabled software package geared to the virtual manufacturing environment. The package permits the user to investigate the effect of a new work order in a distributed manufacturing system. The user can thus find the answer to the question whether a given work order can be accepted for execution within a given structure of the virtual enterprise. The proposed approach can be considered as a contribution to prototyping of virtual organization structures as well as to project-driven production flow management applied in make-to-order companies. That is especially important in the context of cheap and user-friendly decision-support systems in SMEs. Further research is aimed at developing task-oriented searching strategies using the CLP (Constraint Logic Programming) based modeling framework, which provides a good platform for checking consistency between the production-order completion requirements and the workshop time availability (Banaszak & Zaremba, 2004; Banaszak, Zaremba, & Muszyñski, 2005). The CLP methodology seems to be a promising alternative to commercially available tools based on other technologies, such as certain types of ERPs, whose applicability in solving real-life problems is often limited.

Output data Price (cost units)

Completion time (days)

66,600 – 67,770 –

215 – 217 –

References Anavi-Isakow, S., & Golany, B. (2003). Managing multi-project environments through constant work-in-process. International Journal of Project Management, 21, 9–18. Ahn, S. H., Bharadwaj, B., Khalid, H., Liou, S. Y., & Wright, P. K. (2002). Web-based design and manufacturing systems for automobile components: architectures and usability studies. International Journal of Computer Integrated Manufacturing, 15, 555–563. Banaszak, Z., Saniuk, S., & Zaremba, M. B. (2003). Rapid prototyping of constraint-based production flows in a virtual manufacturing enterprise. Manufacturing Integrated Management, 1(1), 3–24. Banaszak, Z. A., & Zaremba, M. B. (2004). CLP-based projectdriven manufacturing. In: M. Zaremba, J. Sasiadek, & H.H. Erbe (Eds.), The 7th IFAC Symposium on Cost Oriented Automation, Gatineau, Canada (pp. 269–274). Banaszak, Z. A., Zaremba, M. B., & Muszyñski, W. (2005). CPbased decision making for SME. Proceedings of the 16th IFAC World Congress, Ed. Pavel Pilztek, Oxsford: Elsevier Science, 317–322. Brucker O., Drexl, A., Mohring, R. H., Neumann, K. & Pesch, E. (1999). Resource-constrained project scheduling: Notation, classification, models, and methods. European Journal of Operational Research, 112, 3–41. Chan, M. F. S., & Chung, W. W. C. (2002). A framework to develop an enterprise information portal for contract manufacturing. International Journal of Production Economics, 75, 113–126. Chen, L., Song, Z., & Liavas, B. (2001). Exploration of a multi-user collaborative assembly environment on the Internet: A case study. Proceedings of the ASME 2001 Conference on Design Engineering, Pittsburgh, PA. CD-ROM. Choi, I., & Bae, S. (2001). An architecture for active product configuration management in industrial virtual enterprises.

J Intell Manuf (2006) 17:641–651 International Journal of Advanced Manufacturing Technology, 18, 133–139. Dvir, D., Raz, T., & Shehar, A. (2003). An empirical analysis of the relationship between project planning and project success. International Journal of Project Management, 21, 89–95. Chin-Yin, H. (2002). Distributed manufacturing execution systems: A workflow perspective. Journal of Intelligent Manufacturing, 13, 485–497. Efstathiou, J., Calinescu, A., & Blackburn, G. (2002). A Webbased expert system to assess the complexity of manufacturing organizations. Robotics and Computer-Integrated Manufacturing, 18, 305–311. Genkin, M. (2004). Integrate remote enterprise information systems with JCA, JMS, and Web services. DeveloperWorks, IBM’s resource for developers, http://www128.ibm.com/developerworks/ibm/library/i-supply1h/ Huang, G. Q., Yee, W. Y., & Mak, K. L. (2001). Development of a Web-based system for engineering change management. Robotics and Computer-integrated Manufacturing, 17, 255–267. Huang, B., Gou, H., Liu, W., Li, Y. & Xie M. (2002). A framework for virtual enterprise control with holonic manufacturing paradigm. Computers in Industry, 40, 299–310. Jia, H. Z., Fuh, J. Y. H., Nee, A. Y. C., & Zhang, Y. F. (2002). Web-based multi-functional scheduling system for a distributed manufacturing environment. Concurrent Engineering: Research and Applications, 10, 27–39. Kerzner H., (1984). Project Management—A system approach to planning, scheduling and controlling. New York: Van Nostrand Reinhold Company Inc. Kim, S. H., & Jeong, Y. M. (2001). Development of the STEP-TODB converter for the Webbased PDM. Proceedings of the ASME 2001 Conference on Design Engineering, Pittsburgh, PA. CD-ROM. Leach L. P. (2000). Critical chain project management. London: Artech House. Leong, H. V., Ho, K. S., & Lam, W. (2001). Web-based workflow framework with CORBA. Concurrent Engineering: Research and Applications, 9, 120–129. Lova A., Maroto, C., & Tormos, P. (2000). A multicriteria heuristic method to improve resource allocation in multiproject

651 scheduling. European Journal of Operational Research, 127, 408–424. Nidamarthi, S., Allen, R. H., & Sriram, R. D. (2001). Observations from supplementing the traditional design process via Internet-based collaboration tools. International Journal of Computer Integrated Manufacturing, 14, 95–107. Ou-Yang, C., & Chang, C. W. (1999). Developing an integrated intelligent framework to support an engineering change process for an axial piston pump. International Journal of Advanced Manufacturing Technology, 15, 345–355. Pant, S., Sim, H. T., & Hsu, C. (2001). A framework for developing Web information systems plans: illustration with Samsung Heavy Industries Co. Ltd. Information and Management, 38, 385–408. Payne J. H. (1995). Management of multiple simultaneous projects: State-of-art review. International Journal of Project Management, 13, 163–168. Ratchev, S. M., Shiau, J., & Valtchanov, G. (2000). Distributed product and facility prototyping in extended manufacturing enterprises. International Journal of Production Research, 38, 4495–4506. Su, D., & Amin, N. (2001). A CGI-based approach for remotely executing a large program for integration of design and manufacture over the Internet. International Journal of Computer Integrated Manufacturing, 14, 55–65. Tang, D. B., Zheng, L., Chin, K. S., Li, Z. Z., Liang, Y. L., Jiang, X. J., & Hu, C. J. (2002). EDREAM: A Web-based platform for virtual agile manufacturing. Concurrent Engineering: Research and Applications, 10, 165–183. Wang, X. K. (2002). Research on a dispersed networked CAD/CAM system of motorcycle. Journal of Materials Processing Technology, 129, 658–662. Yang, H., & Xue, D. (2003). Recent research on developing Webbased manufacturing systems: A review. International Journal of Production Research, 41(15), 3601–3629. Yin, G. F., Tian, G. Y., & Taylor, D. (2002). A Web-based remote cooperative design for spatial cam mechanisms. International Journal of Advanced Manufacturing Technology, 20, 557–563.