Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 67

CHAPTER 1

INTRODUCTION

1.1 FLEXIBLE MANUFACTURING SYSTEM

A flexible manufacturing system (FMS) is a highly automated


manufacturing system well suited for the simultaneous production of a wide variety
of part types in low to mid volume quantities at a low cost while maintaining a high
quality of the finished products.

The increased demand for manufactured goods has increased the pressure
on the manufacturing system, which in turn has motivated management to find new
way to increase productivity, considering the scarce available resources. A Flexible
Manufacturing System (FMS) has emerged as a viable alternative to the conventional
manufacturing system Existing FMS implementations have already demonstrated
several benefits in terms of cost reductions, increased utilizations, reduced work-in –
process levels, etc. However, they are several problems faced during the life cycle of
an FMS. These problems are classified in to: design, planning, scheduling, and control
problems. The scheduling task, control problem during the operation, is of importance
owing to the dynamic nature of the FMS such as flexible parts, tools, AGV routings
and AS/RS storage assignments. This primarily concerned with scheduling problems
of FMS.

In FMS scheduling, decisions that need to be made include not only


sequencing of jobs on machines but also the routing of the jobs through the system.
Apart from the machines, other resources in the system, e.g. material-handling
devices like AGVs and AS/RS must be considered.

To gain the flexibility and efficiency of production many FMS employ


automated guided vehicle systems (AGVs) as material-handling system (MHS). The
AGVs effectiveness depends on several factors, among them a well-designed vehicle
management whose functions are: (1) dispatching, which is the process of selecting
and assigning tasks to automated guided vehicles (AGVs)(2) routing, which is the

1
process of selecting specific paths taken by AGVs; and(3) scheduling, which is the
process of determining the arrival and departure dates.

A new evolutionary computation algorithm based on sheep Jocks heredity is


proposed n e algorithm simulates heredity of sheep flocks in a prairie. n e algorithm is
developed for solving a large-scale scheduling problem for a period of several
successive years. It is found that the proposed algorithm referred to as the multi-stage
genetic operation can find better solutions than those of the simple genetic algorithm
through thermal generator maintenance scheduling

The increased demand for manufactured goods has increased the pressure on
the manufacturing system, which in turn has motivated management to find new way
to increase productivity, considering the scarce available resources. A Flexible
Manufacturing System (FMS) has emerged as a viable alternative to the conventional
manufacturing system.

A FMS comprises automated machine tools, automated material handling, and


an Automated Storage and Retrieval System (AS/RS) as essential components.
Optimal performance of each element of this system would improve the productivity
and efficiency of the total FMS. Today, FMS seems to be a very promising
technology as they provide flexibility, which is essential for many manufacturing
companies to stay competitive in a highly dynamic, and changing manufacturing
environment.

Existing FMS implementations have already demonstrated a number of


benefits in terms of cost reductions, increased utilizations, reduced work-in –process
levels, etc. However, they are several problems faced during the life cycle of an FMS.
These problems are classified in to: design, planning, scheduling, and control
problems.

The scheduling task, control problem during the operation, is of importance


owing to the dynamic nature of the FMS such as flexible parts, tools, AGV routings
and AS/RS storage assignments. This primarily concerned with scheduling problems
of FMS.

2
1.2 AUTOMATED GUIDED VEHICLE SYSTEM

AGVs is a materials handling system that uses independently operated, self-


propelled vehicles that are guided along defined pathways in the floor. The vehicles
are powered by means of on-board batteries that allow operation for several hours
between recharging. The definition of the pathways is generally accomplished using
wires embedded in the floor or reflective paint on the floor surface. Guidance is
achieved by sensors on the vehicles that can follow the guide wires or paint.

Classification of AGVs

There are a number of different types of AGVs all of which operate according
to the preceding description. The AGVs can be classified as follows:

 Driverless trains
This type consists of a towing vehicle that pulls one or more trailers to form a
train. It was the first type of AGVs to be introduced and is still popular. It is useful in
applications where heavy payloads must be moved large distances in warehouses or
factories with intermediate pickup and drop-off points along the route.

 AGVs pa1Iet trucks


Automated guided pallet trucks are used to move palletized loads along
predetermined routes. In the typical application the vehicle is backed into the loaded
pallet by a human worker who steers the truck and uses its forks to elevate the load
slightly. Then the worker drives the pallet truck to the guide path, programs its
destination, and the vehicle proceeds automatically to the destination for unloading.

 AGVs unit load carriers


This type of AGVs is used to move unit loads from one station to another
station. They are often equipped for automatic loading and unloading by means of
powered rollers, moving belts, mechanized lift platforms, or other devices. Variations
of the unit load carrier include light-load AGVs and assembly line AGVs.

3
1.3 FUNCTIONS OF AUTOMATED GUIDED VEHICLES

There are several functions that must be performed to operate any automated
guided vehicle system successfully. These functions are:

Vehicle guidance and routing

Traffic control and safety

System management

Vehicle guidance and routing

The term guidance system refers to the method by which the AGVs pathways
are defined and the vehicle control systems that follow the pathways as indicated
above, there are two principal methods currently in use to define the pathways along
the floor they are embedded Guide Wires and Paint Strips.

 Guide Wire Method


In the guide wire method the wires are usually embedded in a small channel
cut, into the surface of the floor. Two sensors are mounted on the vehicle on either
side of the guide wire. When the vehicle is moving along a course such that the guide
wire is directly between the two coils, the intensity of the magnetic field measured by
each coil will be equal. If the vehicle strays to one side or the other, or if the guide
wire path curves, the magnetic field intensity at the two sensors will be different. This
difference is used to control the steering motor, which makes the required changes in
vehicle direction to equalize the two sensor signals.

 Paint Strips
The paint strips are used to define the vehicle pathways, the vehicle possesses
an optical sensor system that is capable of tracking the paint. The strips can be taped,
sprayed, or painted on the floor. One system uses a 1-in.-wide paint strip containing
fluorescent particles that reflect an ultraviolet (UV) light source on the vehicle. An
onboard sensor detects the reflected light in the strip and controls the steering
mechanism to follow it.

 Decision point
Routing in an AGVs is concerned with the problem of selecting among
alternative pathways available to a vehicle in its travel to a defined destination point

4
in the system. When a vehicle approaches a branching point in which the guide path
splits into two more directions, a decision must be made as to which path the vehicle
should take. There are two methods used to decide which path to take:

 Frequency selects method


In this method the guide wires leading into the two separate paths at the
branch have different frequencies. As the vehicle enters the decision point, it reads an
identification code on the floor to identify its location. Depending on its programmed
destination, the vehicle selects one of the guide paths by deciding which frequency to
track.

 Path switch select method


In this method uses a single frequency throughout the guide path layout. In
order to control the path of a vehicle at a decision point, the power is switched off in
all branches except the one on which the vehicle is to travel. To accomplish routing
by the path switch select method, the guide path layout must be divided into blocks
that can be independently turned on and off by means of controls mounted on the
floor near their respective blocks.

Traffic Control and Safety

The purpose of traffic control for an AGVs is to prevent collisions between


vehicles traveling along the same guide path in the layout. This purpose is usually
accomplished by means of a control system called the blocking system. The term
“blocking” suggests that a vehicle traveling along a given guide path is in some way
prevented from hitting any vehicle ahead of it.

 On-board vehicle sensing


On vehicle sensing involves the use of some form of sensor system to detect
the presence of vehicles and carts ahead on the same guide wire. The sensors used on
commercial guided vehicles include optical sensors and ultrasonic systems. When the
on-board sensor detects an obstacle in front of it, the vehicle stops. When the obstacle
is removed, the vehicle proceeds. Assuming that the sensor system is 100% effective,
collisions between vehicles are avoided and traffic is controlled.

5
 Zone blocking
The concept of zone control is simple. The AGVs layout is divided into
separate zones, and the operating rule is that no vehicle is permitted to enter a zone if
that zone is already occupied by another vehicle. The length of a zone is sufficient to
hold one vehicle plus an allowance for safety and other considerations. These other
considerations include the number of vehicles in the system, the size and complexity
of the layout, and the objective of minimizing the number of separate zone controls.
When one vehicle occupies a given zone, any trailing vehicle is not allowed into that
zone.

System Management

Managing the operations of an AGVs deals principally with the problem of


dispatching vehicles to the points in the system where they are needed (e.g., to
perform pickups and deliveries) in a timely and efficient manner. The system
management function depends on reliable operation of the other system functions
discussed above (guidance, routing, and traffic control). There are a number of
methods used in commercial AGV systems for dispatching vehicles. These methods
are generally used in combination to maximize responsiveness and effectiveness of
the overall system. The dispatching methods include:

 On-board control panel


Dispatching with an on-board control panel represents the lowest level of
sophistication among the possible methods. Its advantage is that it provides the AGVs
with flexibility and responsiveness to changing demands on the handling system. Its
disadvantage is that it requires manual attention.

 Remote call stations


The use of remote call stations is another method that allows the AGVs to
respond to changing demand patterns in the system. The simplest form of call station
is a press button mounted near the load/unload station. This provides a signal to any
passing vehicle to stop at the station in order to accomplish a load transfer operation...
The vehicle might then be dispatched to the desired location by means of the on-board
control panel.

6
 Central computer control
Central computer control is used to accomplish automatic dispatching of
vehicles according to a preplanned schedule of pickups and deliveries in the layout
and/or in response to calls from the various load/unload stations in the system. In this
dispatching method, the central computer issues commands to the vehicles in the
system concerning their destinations and operations to perform. To accomplish the
dispatching function, the central computer must

possess real-time information about the location of each vehicle in the system so that
it can make appropriate decisions concerning which vehicles to dispatch to what
locations. Hence, the vehicles must continually communicate their whereabouts to the
central controller.

1.4 SCHEDULING

Scheduling is a decision making process to determine when a job is to be


started in a machine and when it is to be completed. A job may have to be processed
in various different machines or process centers. Similarly a machine or process
centre may have to take different jobs and complete them. The order in which jobs
are being taken up in a machine or process center is called sequencing.

 Single machine scheduling


The simplest pure sequencing problem is one which there is a single resource,
or machine. As simple as it is, however the single machine case still very important
for several reasons .it provides a context in which to investigate many different
performance measures and several solution techniques. It is therefore a building block
in the development of the comprehensive understanding of the scheduling concepts,
an understanding that ultimately facilitate the modeling of complicated systems.

 Flow Shop Scheduling


Any group of machines served by a unidirectional, non cyclic conveyor wound
be considered as a flow shop. Flow shop is one in which all the jobs follow essentially
the same path from one machine to another. In flow shop machines are arranged in
series and job begin processing on an initial machine, proceed through several
intermediary machines, and completed in the final machine. Each machine will take

7
up the jobs in a sequence to perform the operation required. The sequence of jobs for
all the machines is same.

 JobShop Scheduling
In a job shop, specific machine order restriction is not imposed in each job. In
this job can be processed on machines in any order. The general job shop is one, in
which n jobs are to be processed by m machines. Each job will have set of
constraints on the order in which machines can processed and a given processing
times on each machines. Jobs may not require all m machines and they may have to
visit some machines more than once.

There is only one machine that can perform a given operation. In practice,
there are often multiple copies of the same machine (parallel machine). So there are
number of machines can process the jobs. And this adds more flexibility in shop, but
it complicates the scheduling problem further. In the job shop model, all the jobs need
not have the same technological order of operations. Each job may have routes. In the
job shop type problems we require the data, not only the estimated processing times
of jobs in the various machines, but also the route the job has to take.

 Dynamic Job Shop Scheduling


One of the most widely applied areas of scheduling research involves the
dynamic version of the shop model. In the dynamic model jobs arrive at the shop
randomly over time, so that the shop itself behaves like a network of queues.
Scheduling is generally carried out by means of dispatching decision at the time,
machine becomes free a decision must be made regarding what it should do next. The
scheduling decisions are unavoidable in the operation of such a system and since
research has demonstrated substantial differences among dispatching procure, if
makes to seek out the decision rules that promote good performance.

 FMS Scheduling
In an FMS life cycle there are different levels of decision problems for its
design and operation. Among them scheduling is a critical function for the control and
operation of any FMS.Scheduling in flexible manufacturing systems (FMSs)
differs from that conventional job shop because each operation of a job may be
performed by any one of several machines. FMS scheduling has been researched

8
extensively over the past two decades. It has been shown that most FMS scheduling
problems are NP hard. Scheduling in FMS is more complex than scheduling in
classical machine shops. The additional complexity comes from the following two
factors together with the need for real time operation.

1. In FMS scheduling, decisions that need to be made include not only


sequencing of jobs on machines but also the routing of the jobs through the
system.
2. Apart from the machines, other resources in the system, e.g. material-handling
devices like AGVs and AS/RS must be considered.
In solving the FMS scheduling problem, decisions on these three aspects must
be made to achieve some scheduling objectives, like maximizing machine utilization,
minimizing the penalty cost and minimizing the distance traveled by AS/RS machine.
However, before the sequencing decision is made, it is impossible to precisely
measure the performance of these three decisions. The sequencing decision, on the
other hand, cannot be made without the specification of part routing at the same time
or in advance. Therefore, all three aspects are closely related. These interconnections
and the additional resource constraints make the scheduling problem in FMS more
complex than those in conventional machine shops. Ideally, considering all three
aspects of the scheduling decisions and the constraints of all the resources in the
system concurrently should solve the FMS scheduling problem.

 Open Shop Scheduling


Open shop with ‘m’ machines each job must be processed again on each one
of the ‘m’ machines. However, some of these processing times may be zero. There are
no restrictions about the routing of each job through the machine environment. The
Scheduler can determine the route for each job, and different jobs may have different
routes.

1.5 PERFORMANCE MEASURES TO A SCHEDULING PROBLEM

The choice of a schedule will depends on the criterion or objective that the
population manager withes to consider in his or her evaluation [46]. We will now provide
notation and definitions and discuss some criteria that area often employed in evaluating
the performance of a flow shop schedule.

9
Make span: make-span is interval of time from the start of processing until all jobs are
completed as the starting

time of the first can be assumed as zero. In detail it is the total time calculated from the
start of first operation

of the job to completion of last operation of the last job determines the make span of the
schedule. It is a time

for a group of jobs to be completed. Make span = max Ci

Job lateness: It is the amount of time by which the completion time of job i exceeds
its due date. It gives information of whether the job is completed ahead of, on , or
behind the schedule. It is the difference between a late jobs due date and its
completion time.

Li = Ci – Di

Lateness can be either positive or negative.

Tardiness :A positive lateness represents a violation of the due date and is called
tardiness (Ti). It is the amount of time by which the completion time exceeds its due
date.

Earliness: A negative lateness represents the completion of a job before its due date
and is called earliness.

Mean Tardiness: This criterion is useful when the objective function of the company
includes a penalty per unit of time if a job completion is delayed a specified due date.

n
1
n
∑Ti
Mean Tardiness = i=1

Maximum Tardiness: To compute maximum tardiness, the tardiness of each job is


calculated. The job that has the largest tardiness of all the jobs determines T max {0,
Li}. This criterion is useful when the penalty per day for tardiness increases with the
amount of tardiness.

10
CHAPTER 2

LITERATURE REVIEW

The high investment required for a FMS and the potential of FMS as a
strategic competitive tool make it attractive to engage in research in this area. Due to
this number of approaches and procedures are applied for scheduling the FMS. In this
section, the literature that addresses the scheduling problems in flexible
manufacturing context is reviewed.

2.1 SCHEDULING

Mathematical Programming Techniques

In this approach, the researchers have cast the problem into an optimization
model. Buzacott and Yao [1986]present a comprehensive review of the analytical
models developed for the design and control of FMS up until 1984. They strongly
advocate the analytical methods as giving better insight into the system performance
than the simulation models. To manage the complexity of the problem, Stecke [1983]
and many other authors who have followed her divided the FMS operation problem
into two sub problems: preproduction setup and production operation. In this view, a
FMS is prepared beforehand for the given part mix: loading the tools, allocating the
operation to the machines, allocating the pallets and fixtures to the different part
types. After this preparatory planning phase, the remaining problems are called
operational problems and solved later. Stecke places stress on pre-production setup of
the FMS. This is to be carried out frequently, as the part mix changes. This leads to
large nonlinear mixed integer problems. She suggests various linearization schemes.
Stecke's planning problems place much of the scheduling problem in the setup stage.

Kimemia and Gershwin [1985]report on an optimization problem that


optimizes the routing of the parts in an FMS with the objective of maximizing the
flow while keeping the average in-process inventory below a fixed level. The
machines in the cell have different processing times for an operation. Network of
queues approach is used. The technique showed good results in simulation. Hutchison
et al. [1989]Provide a mathematical formulation of the random FMS scheduling
problem, where random jobs arrive at the FMS. Their formulation is a static one in
which N jobs are to be scheduled on M machines. The objective is to minimize the

11
make span. They present a mixed integer 0-1 programming formulation. They solve
this problem by a branch and bound scheme.

Mathematical models in the literature are not efficient for reasonably sized
problems. Further, they make simplifying assumptions which are not always valid in
practice. The assumptions, of course, change with the models: some models assume
automatic tool transport, some others will neglect delays caused by automated guided
vehicles (AGVs), and still others will assume that tool magazines, pallets and fixtures
do not constrain the models in any way, and so on. The models also take a static view
of the shop floor. It is assumed that all the planned activities will be carried out
exactly, or the disruptions are infrequent enough that periodic solution of the
problems will be practical

Heuristics Oriented Approach

Heuristic optimization algorithms (heuristics for short) seek good feasible


solutions to optimization problems in circumstances where the complexity of the
problem or the limited time available for its solution do not allow exact solution. The
formal intractability, in the sense of NP-hardness Ronald et al[2001], of many
commonly encountered optimization problems and the growing use of real-time
control have made the development of heuristics a major area within the field of
operations research. Unlike exact algorithms, where time-efficiency is the main
measure of success, there are two burning issues in evaluating heuristics: how fast can
solutions be obtained and how close do they come to being optimal. One body of
research, beginning with Graham’s investigations of heuristics for parallel processor
scheduling problems (Graham, 1969), demands polynomially bounded time and seeks
provable limits on the worst-case or maximum deviation of a heuristic from the
optimal solution value. Another, pioneered by Karp (1977), tries to compute the
expected deviation from optimality, assuming polynomial time and a probabilistic
structure for the problem instances considered.

Both these approaches have yielded significant insights into a number of


heuristics and problems, and both have the appeal of mathematical certainty. Still,
their analytical difficulty, which makes it hard to obtain results for most realistic

12
problems and algorithms, severely limits their range of application. Also, a worst-case
result, which is by definition pathological, may not give meaningful information on
how a heuristic will perform on more representative instances. Stochastic analyses
attempt to discount such low probability pathologies, but very simple underlying
distributions on instances usually have to be assumed to get results.

As a consequence of these difficulties, most of the many heuristics developed


for large optimization problems are evaluated empirically by applying the procedures
to a collection of specific instances and comparing the observed solution quality and
computational burden. While this has been done in the literature one way and another
for decades, learning by experimentation does not come as naturally to algorithm
designers, who are trained in the mathematics culture, as it does to investigators in
other branches of engineering and the sciences. It is still comparatively rare, given the
large volume of literature on heuristics, to encounter well designed computational
experiments that produce real insights for either practitioners or researchers.

There has been a long series of papers trying to set out guidelines for empirical
research on algorithms (Ahuja and Orlin, 1996; Crowder et al., 1979; Lin and Rardin,
1980; Barr et al., 1994; Golden and Stewart, 1985; Golden et al., 1986; Greenberg,
1990; Jackson et al., 1991; Lee et al., 1993; Hooker, 1994 and 1995; McGeogh,
1996), most implicitly addressed to the testing of exact optimization methods.
Although many of the issues that arise are similar to those encountered in evaluating
exact procedures, the nature of heuristic optimization presents a number of unique
challenges. In particular, we must often evaluate the quality of solutions when an
exact optimum, or even a credible estimate of one, is unavailable.

To counter the mathematical difficulties with optimization, use of heuristics


has been actively investigated. These heuristics may take the usual form of
dispatching rules or they may be more complicated. Extensive studies of dispatching
rules have been carried out in the general job shop context. In the same vein,
numerous simulation studies of dispatching rules have been carried out in the FMS
area.

Stecke and Solberg [1981] investigated the performance of dispatching rules in a FMS
context. They experimented with five loading policies in conjunction with sixteen
dispatching rules in the simulated operation of an actual FMS. Chang et al. [8]report

13
on a heuristics based beam search technique designed to solve the random FMS
scheduling problem. The root of their search tree has no operation scheduled. They
progressively go along the time line and schedule more and more operations until at
the final leaf, all the operations are scheduled. At each node, to evaluate the schedule,
they carry out a simulation using the SPT rule.

This SPT rule identifies the critical path in the schedule. For the first machine
in the critical path, they evaluate all the possible alternate assignments. Only a certain
number (beam width) of assignments is then selected depending on the makespan
obtained. A contribution of Chang et al. is a measure of flexibility of the
manufacturing system. Heuristics algorithms are applied only for particular type of
problem.

Local Search Algorithms

John B. Chambers [1996] used tabu search, which is a is a local search meta
heuristic which relies on specialized memory structures to avoid entrapment in local
minima for scheduling of flexible manufacturing system. Sing and Bonhynek (1997)
compared several modern heuristic search methods (GA, SA, TS and Hybrid Search)
with respect to a standard cell placement on VLSI design sequencing problem in
terms of solution quality (make span criterion) and computational time. They showed
that any method can perform good or bad depending upon its parameter setting and
there is a trade-off between run time and solution quality. They concluded that SA
proved to be the most suitable for sequencing like standard cell placement. However
these local searches show good only for particular problem and specific objective.

Evolutionary Algorithms

The idea of applying the biological principle of natural evolution to artificial


systems introduced more than two decades ago, they has seen impressive growth in the
past few years. Evolutionary algorithms are based on random search and they have
ability to jump randomly from schedule to schedule, allowing them to escape from local
optima in which other algorithms often get trapped. In recent years, genetic algorithms
(GAs) have received significant attention from many workers because of their special
evolutionary mechanism. They have also been used to solve FMS scheduling problems.
Khoo et al [1993] described the development of a prototype GA algorithm-enhanced

14
multi-objective scheduler for a manufacturing system. Jain and Elmaraghy used a GA
to obtain an initial schedule and generated new and modified production schedules.
Hideo fujimotoused genetic algorithm for searching the best rule to schedule the FMS in
combinations with simulations

2.2 SCHEDULING AND ROUTING OF AGV

Broadbent et al presented a concept of conflict free and shortest time AGV


routing. The main advantage of this idea is its simplicity .while a disadvantage is its
optimal solution. Daniels first introduced an algorithm to route vehicles in bidirectional
flow path network but this algorithm is suitable only for a system with a small path
network and a small number of AGVs. Kim and Tanchoco [1994] proposed the time
window method for routing of AGV. In this path network are shared and are used more
efficiently. Main contribution of time window approach is the enhancement of the path
utilization. This algorithm generally takes long time.Dynamic routing technique is
proposed by Taghaboni and Tanchoco[1995] and this approach route AGV relatively
quicker compared with some static algorithm. However this method cannot achieve a
high efficiency when the number of tasks and the vehicles increases.

2.3 SCHEDULING OF BOTH VEHICLES AND MACHINES

Akturk and yilmaz [1996] proposed an algorithm to schedule vehicles and jobs in an
decision making hierarchy based on the mixed integer programming. But this
approach is applicable only for the problem with small number of jobs and vehicles.
Sabuncuoglu and hommertzheim [1992] investigated the performances of machine
and AGV scheduling rules against mean flow time criterion using a simulation model.
Umit bilge and Gunduzulusoz proposed a time window approach to simultaneous
scheduling machines and material handling system in an FMS. Karabtik and
Sabuncuoglu [1993] introduce a beam search based algorithm for the simultaneous
scheduling of machines and AGVs. Their assumption that vehicles always return to
the load/ unload station after transferring a load reduces the flexibility of the AGV
and its influence on the schedule Gunduzulusozet al proposed a genetic algorithm for
the simultaneous scheduling of machines and material handling devices. In this work
ant colony optimization is used for scheduling both jobs and AGV simultaneously in
FMS environment. Kusiaka[1985] explains Material Handling in Flexible
Manufacturing Systems. El-Maraghy [1992] developed Modern tools for the design,

15
modeling and evaluation of flexible manufacturing systems. Orhan [2004] explains a
new approach to solve hybrid flow shop scheduling problems by artificial immune
system. Lee [1989] developed a multi-objective production planning model in a
flexible manufacturing environment

Most of the researchers have addressed the machine and vehicle scheduling as
two independent problems. However, only a few researchers have emphasized the
importance of simultaneous scheduling of machines and vehicles. A deterministic off-
line scheduling model was presented by Raman et al. [1986]. They formulated the
problem as an integer programming problem and proposed a solution procedure based
on the concepts of project scheduling under resource constraints. Their assumption
was that the vehicles always return to the load/unload station after transferring a load
which reduces the flexibility of the AGVand influence the overall schedule length.
Blazewicz et al. [1991] has considered an FMS with parallel identical machines
arranged in a loop.

They addressed the simultaneous scheduling problem using a dynamic


programming approach. Sabuncuoglu and Hommertzheim [1992] has tested the
different machine and AGV scheduling rules in FMS against the mean flow time
criterion. Another off-line model for simultaneous scheduling of machines and
material handling system in an FMS for the makespan minimization is presented by
Bilge and Ulusoy [1995]. The problem was formulated as a non-linear mixed integer-
programming model and was addressed using the sliding time window approach.
Ulusoy et al. [1997] has addressed the same problem using genetic algorithms. In
their approach the chromosome represents both the operation number and AGV
assignment which requires development of special genetic operators.

Anwar and Nagi [1998] addressed the simultaneous scheduling of material


handling operations in a trip-based material handling system and machines in JIT
environment. Abdelmaguid et al. [2004] has presented a new hybrid genetic algorithm
for the simultaneous scheduling problem for the makespan minimization objective.
The hybrid GAis composed of GAand a heuristic. The GA is used to address the first
part of the problem that is theoretically similar to the job shop scheduling problem
and the vehicle assignment is handled by a heuristic called vehicle assignment
algorithm (VAA). Lacomme et al. [2005] has addressed the simultaneous job input

16
sequence and vehicle dispatching for a single AGV system. They solved the
problemusing the branch and bound technique coupled with a discrete event
simulation model.

Changy et al [1986] explain how material handling should be there in an


complex and difficult FMS environment by using discrete event simulation model to
analyse the material handling dispatching system of an FMS. Egbelup,. J., And J. M.
A. Tanchoco explain some heuristic rules for dispatching AGV in a job shop
environment presented. Those rules are useful for assigning priorities to workstations
requesting the services of a vehicle for material pickup.

Gifler and Thomson[1960] explain what is the active scheduling and also
explain the algorithm some of the theorems for production scheduling problem. Han
and McGinnis[1989] deals the real time routing method for material handling
transporting in automated manufacturing shops where the performance criterion is to
max throughput. Gobal and Kasilinga [1991], developed a SIMAN based simulation
model is presented to determine the number of AGVs needed to meet the material
handling requirements. That calculation was done based on idle time of vehicle and
machine and the waiting time of parts. Rao and Reddy[2006], addresses the
simultaneous scheduling problem as a multiobject problem in scheduling with
conflicting objectives are more complex and combinatorial in nature. He solved the
problem by Non- dominating sorting evolutionary algorithm. Wu and Wysk [1988],
described some scheduling algorithm which employs discrete simulation in
combination with straightforward part dispatching rules in a dynamic fashion.

Kouvelis [1992], explains the applications of combinatorial optimization


approaches to FMS planning problem. Lenstra and rinnooy [1978] illustrate the
precedence constraints concepts by extending some typical NP-completeness results
and simplifying their correctness proofs for scheduling. Mahadevan and Narendran
[1990] addresses the key issues involved in the design and operation of AGV based
material handling systems for an FMS. The problems arising from multivehicle
systems are analyzed and strategies for resolving them are examined.

Malmborg[1990] developed an analytical model is to reduce the extent of


simulations modeling necessary to design a zone control AGVs for a given materials
handling workload. Maxwell [1982] presented some analysis techniques and a

17
methodological framework for specifying the operational characteristics of an
automated guided vehicle system. Solomon [1988] explains the design and analysis of
algorithms for vehicle routing and scheduling problem with time window constrain.
He includes routing and scheduling environment. Pandit and Palekar[1993] explains
Job shop scheduling with explicit material handling considerations.

18
CHAPTER 3

PROBLEM DEFINITION

3.1 OBJECTIVES
 Simultaneous Scheduling of Machines and AGVs for Four Layout
and Ten Job Sets.
 Implementation of Algorithm
 Minimization of Make span

3.2 METHODOLOGY
In this study, a flexible manufacturing system (FMS) in which material transfer
between machines is performed by several identical automated guided vehicles
(AGVs) is considered, and the problem of simultaneous scheduling of machines and
AGVs is addressed. The importance of the material handling system for the efficiency
of the overall system has been emphasized by several researchers .In the majority of
the related literature, the subject of scheduling the material handling system has
generally been set out either as a comparison of various vehicle dispatching rules in
reaction to a pre specified schedule and on a particular layout. We have considered
Four different layouts and Ten job set consisting of one to eight different job sets and
operations on machines to be performed. The problem is formulated as a nonlinear
mixed integer programming model. Its objective is make span minimization. The
formulation consists of constraint sets of a machine scheduling sub problem and a
vehicle scheduling sub problem which interact through a set of jaya algorithm
constraints for the material handling trip starting times. An iterative procedure is
developed where, at each iteration, a new machine schedule is generated by a jaya
algorithm procedure. Basic model for this particular problem explained in Fig3.1

19
Fig 3.1 Basic model for this problem

20
3.3 ALGORITHM USED

Algorithm applied for the project work is “JAYA ALGORITHM”. It was


developed by R. Venkatrao (2011). The algorithm simulates the better optimization
values. The algorithm is developed for solving a large-scale scheduling problem for a
period of several successive years. It is found that the proposed algorithm can find
better solutions than those of the simple genetic algorithm through iterative methods.
The proposed algorithm is also implemented on 30 well defined unconstrained
optimization problems. These unconstrained optimization problems have different
characteristics and the results obtained by the proposed Jaya algorithm are compared
with the results of well-known optimization algorithms such as GA, PSO, DE, ABC
and TLBO algorithms. Results have shown the satisfactory performance of Jaya
algorithm for the considered unconstrained optimization problems. It may be
concluded that the proposed Jaya algorithm can be used for solving the constrained as
well as unconstrained optimization algorithms.

3.4 FMS DESCRIPTION

The FMS considered in this work has the configuration as shown in figure3.2.There
are four Machines having Computer Numerical machines (CNCs) each with an
independent and self-sufficient tool magazine, one Automatic Tool Changer (ATC)
and one Automatic Pallet Changer (APC).

Fig 3.2 The layout configurations used in generating example problems

21
3.5 FMS ENVIRNOMENT

The environment within which the FMS under consideration operates can be
described as follows:

(1) The types and number of machines are known. Operations are no preemptive.
There is sufficient input/output buffer space at each machine.

(2) Processing, set-up, loading, unloading times are available and are
deterministic.

(3) Number of AGVs is given and the AGVs are all identical in the sense that they
have the same speed and load carrying characteristics.

(4) Flow path layout is given and travel times on each segment of the path are
known.

(5) A load/unload (L/U) station serves as a distribution center for parts not yet
processed and as a collection center for parts finished. All vehicles start from the
L/U station initially and return to thereafter accomplishing all their assignments.
There is sufficient input/output buffer space at the (L/U) station.

(6) AGVs carry a single unit-load at a time. They move along predetermined
shortest paths, with the assumption of no delay because of congestion. Preemption
of trips is not allowed. The trips are called loaded or deadheading (empty) trips
depending whether a part is carded, or no part is carded during that trip,
respectively. The durations for the deadheading trips are sequence dependent and
are not known until the vehicle route is specified.

(7) It is assumed that all the design and set-up issues within the hierarchy of
OR/MS problems in an FMS as suggested by Stecke [24] have already been
resolved. Machine loading, i.e., the allocation of tools to machines and the
assignment of operations to machines, is made. Pallets and other necessary
equipment are allocated to parts. The set of part types to be produced during the
planning period and the routing of each part type are available before making
scheduling decisions. In other words, routing flexibility is not considered. The
routing for a part type can be selected based on considerations of technological

22
feasibility and processing efficiency, or by formulating the set-up phase problems
in a manner that can also handle the routing decisions.

(8) Ready-times of all jobs are known. Initially, partially processed parts might be
available at machines waiting for further processing, and they can be treated as
jobs having zero ready times and their routing consists of the remaining
operations.

(9) Such issues as traffic control, congestion, machine failure or downtime, scraps,
rework, and vehicle dispatches for battery change are ignored here and left as
issues to be considered during real-time control.

3.6 ASSUMPTIONS

The types and no. of machines are known, there is sufficient input/output buffer
space for each machine, Machine loading, Allocation of tools to machine, Assignment
of operation to machine are made, Pallet and other necessary equipment are
allocated ,The speed of AGV 40 m/min, The distance between the two machines and
distance between L/U machines are known.

3.7 INPUT DATA


The input data i.e. Travelling time matrix from table 3.1 and Job sets for the
problem is taken from paper [6] by Bilge U, Ulusoy G. Data given below in table
3.1 gives the distances from load/unload stations to machines and distances between
machines in metres for all the four layouts .The Ten job sets given below each
containing four to eight different job sets, machines in each job set to be processed
and numbers with in the parenthesis is the processing time of particular job on
specified machine. The load/unload (L/U) station serves as a distribution center for
parts not yet processed and as a collection centre for parts finished. All vehicles start
from the L/U station initially. Trips follow the shortest path between two points and
occur either between two machines or between a machine and the L/U station. Pre-
emption of trips is not allowed. The trips are called loaded or deadheading (empty)
trips depending on whether a part is carried, or no part is carried during that trip,
respectively. The durations for the deadheading trips are sequence dependent and are
not known until the vehicle route is specified

23
Table 3.1 Travel time matrix for this problem

Layout-1 Layout-2
From/ L/U M1 M2 M3 M4 From/ L/U M1 M2 M3 M4
To To
L/U 0 6 8 10 12 L/U 0 4 6 8 6
M1 12 0 6 8 10 M1 6 0 2 4 2
M2 10 6 0 6 8 M2 8 12 0 2 4
M3 8 8 6 0 6 M3 6 10 12 0 2
M4 6 10 8 6 0 M4 4 8 10 12 0

Layout-3 Layout-4
From/ L/U M1 M2 M3 M4 From/ L/U M1 M2 M3 M4
To To
L/U 0 2 4 10 12 L/U 0 4 8 10 14
M1 12 0 2 8 10 M1 18 0 4 6 10
M2 10 12 0 6 8 M2 20 14 0 8 6
M3 4 6 8 0 2 M3 12 8 6 0 6
M4 2 4 6 12 0 M4 14 14 12 6 0

Table 3.2 Data for the Job Sets Used in Example Problems
JobSet-1 JobSet-2
Job 1: Ml(8); M2(16); M4(12) Job 1: Ml(10); M4(18)
Job 2: Ml(20); M3(10); M2(18) Job 2: M2(10); M4(18)
Job 3: M3(12); M4(8); Ml(15) Job 3: Ml(10); M3(20);
Job 4: M4(14); M2(18) Job 4: M2(10); M3(15); M4(12)
Job 5: M3(10); Ml(15) Job 5: Ml(10); M2(15); M4(12)
Job 6: M1(10); M2(15); M3(12)
JobSet-3 JobSet-4
Job 1:Ml(16); M3(15) Job1: M4(11); Ml(10); M2(7)
Job 2:M2(18); M4(15) Job2: M3(12); M2(10); M4(8)
Job 3:Ml(20); M2(10) Job3: M2(7); M3(10); Ml(9); M3(8)
Job 4:M3(15); M4(10) Job4: M2(7); M4(8); Ml(12);M2(6)
Job 5:Ml(8);M2(10);M3(15);M4(17) Job5:Ml(9);M2(7);M4(8);M2(10);M3(8)
Job 6: M2(10);M3(15);M4(8);Ml(15
JobSet-5 JobSet-6
Job 1: Ml(6);M2(12);M4(9) Job 1: Ml(9); M2(11); M4(7)
Job 2: Ml(18);M3(6); M2(15) Job 2: Ml(19); M2(20); M4(13)
Job 3: M3(9);M4(3);Ml(12) Job 3: M2(14); M3(20); M4(9)
Job 4: M4(6);M2(15) Job 4: M2(14); M3(20); M4(9)
Job 5: M3(3);Ml(9) Job 5: Ml(11); M3(16); M4(8)

24
Job 6: Ml(10); M3(12); M4(10)
JobSet-7 JobSet-8
Job 1: Ml(6); M4(6) Job 1: M2(12); M3(21);M4(11)
Job 2: M2(11); M4(9) Job 2: M2(12); M3(21);M4(11)
Job 3: M2(9); M4(7) Job 3: M2(12); M3(21);M4(11)
Job 4: M3(16); M4(7) Job 4: M2(12); M3(21);M4(11)
Job 5: Ml(9); M3(18) Job 5: Ml(10); M2(14);M3(18);M4(9)
Job 6: M2(13); M3(19); M4(6) Job 6: Ml(10);M2(14); M3(18);M4(9)
Job 7: Ml(10); M2(9); M3(13)
Job 8: Ml(l1); M2(9); M4(8)
JobSet-9 JobSet-10
Job 1: M3(9);Ml(12);M2(9);M4(6) Job1:Ml(11);M3(19);M2(16);M4(13)
Job 2: M3(16);M2(11); M4(9) Job2: M2(21);M3(16); M4(14)
Job 3: Ml(21); M2(18); M4(7) Job3:M3(8); M2(10); Ml(14); M4(9)
Job 4: M2(20); M3(22); M4(11) Job4: M2(13); M3(20); M4(10)
Job 5:M3(14);Ml(16);M2(13); M4(9) Job5: Ml(9); M3(16); M4(18) ;
Job6:M2(19);Ml(21); M3(11);M4(15)

3.8 OBJECTIVE FUNCTION

Operation completion time=Oij=Tij+Pij

j= operation, i= job

Tij= Traveling time

Pij= operation processing time

Optimization parameters considered

Population Size = 10 (or) double no. of operations

Iterations completed = 1000

25
3.9 VEHICLE SCHEDULING METHODOLOGY

Jobs are scheduled based on the operation sequence derived by the jaya
algorithm. Initially AGVs carry jobs from the load/unload station to the respective
workstations where the first operations are scheduled. AGVs perform two types of
trips, a loaded trip where it carries a load and a deadheading trip where the vehicle
moves to pick up a load. Deadheading trip can start immediately after the delivery and
vehicle demand at different workstations are considered and the subsequent
assignments are made. If both AGVs are available assign the task to the earliest
available vehicle. If no vehicle is available, compute the earliest available times of the
AGVs and make the assignment. If the vehicle is idle and no job is ready, identify the
operation that is going to be completed early and move the vehicle to pickup that job.
This type of vehicle scheduling methodology helps in reducing the waiting times and
thus helps in improving the resource utilization and the throughput. The flow chart of
the vehicle assignment methodology is given in Fig.3.3

26
Fig 3.3 Simultaneous scheduling Flow chart

27
CHAPTER 4

JAYA ALGORITHM

The optimal scheduling problem normally is a complex and combinatorial


optimization problem, and is hard to solve. Many approaches by mathematical
programming solution techniques have been tried to solve the optimal scheduling
problem for about a half of the century: for example, dynamic programming, branch
and bound method and integer programming. However, “curse of dimensionality”
impedes to solve the large scale problems. Recently, for solving the problem, so-
called modern heuristic algorithms are tried to apply expert system combined with
mathematical programming, simulated annealing algorithm, artificial neural networks,
etc. By applying these methods, more complex and large size problems became to be
solved. However, solution accuracy and computational burden are not yet satisfactory.
To solve a large-scale scheduling problem for a period of several successive years, in
this paper, a new algorithm based on jaya algorithm is implemented. R. Venkatrao
(2011) explains about New Algorithm, it is a novel approach for the optimization
based on heuristic algorithms is: evolutionary algorithms and swarm
intelligence.Model and its Application to Scheduling Problem. The meta-heuristic
optimization algorithms are mostly inspired by the theory of evolution or behavior of
a swarm. All evolutionary algorithms or swarm based algorithms require tuning of
parameters like population size, number of iterations, elite size, etc. In addition,
different algorithms require their own algorithm specific parameters. The improper
tuning of algorithm specific parameters adversely affects the performance of these
algorithms. In addition, the tuning of population size and number of iterations is also
required.

4.1 INTRODUCTION

The population based heuristic algorithms have two important groups:


evolutionary algorithms (EA) and swarm intelligence (SI) based algorithms. All the
evolutionary and swarm intelligence-based algorithms are probabilistic algorithms
and require common controlling parameters like population size, number of
generations, elite size, etc. Besides the common control parameters, different
algorithms require their own algorithm-specific control parameters like GA uses

28
mutation probability, crossover probability, selection operator; PSO uses inertia
weight, social and cognitive parameters. The proper tuning of the algorithm specific
parameters is a very crucial factor which affects the performance of the above-
mentioned algorithms. The improper tuning of algorithm-specific parameters either
increases the computational effort or yields the local optimal solution. Rao et al.
(2011) introduced the teaching learning-based optimization (TLBO) algorithm which
does not require any algorithm-specific parameters. The TLBO algorithm requires
only common controlling parameters like population size and number of generations
for its working. The TLBO algorithm has gained wide acceptance among the
optimization researchers (Rao, 2015).

Keeping in view of the success of the TLBO algorithm, another algorithm-


specific parameter-less algorithm is proposed in this paper. However, unlike two
phases (i.e. teacher phase and the learner phase) of the TLBO algorithm, the proposed
algorithm has only one phase and it is comparatively simpler to apply. The working of
the proposed algorithm is much different from that of the TLBO algorithm.

4.2 IMPLEMENTATIONS OF THE ALGORITHM TO OPTIMAL


SCHEDULING PROBLEM

Consider f(x) is the objective function to be minimized (or maximized). At


any iteration i, assume that there are ‘m’ number of design variables (i.e. j=1,2,…,m),
‘n’ number of candidate solutions (i.e. population size, k=1,2,…,n). Let the best
candidate best obtains the best value of f(x) (i.e. f(x)best) in the entire candidate
solutions and the worst candidate worst obtains the worst value of f(x) (i.e. f(x)worst)
in the entire candidate solutions. If Xj,k is the value of jth variable for the kth
candidate during the ith iteration, then this value is modified as per the following Eq.
(1).

X'j = Xj,k + r1 (X(best) -│Xj,k│) - r2 (Xj,worst -│Xj,k│) ………………… (1)

where, Xj,best,i is the value of the variable j for the best candidate and Xj,worst,i is
the value of the variable j for the worst candidate. X'j,k is the updated value of Xj,k
and r1,j and r2,j are the two random numbers for the jth variable during the ith

29
iteration in the range [0, 1]. The term “r1,j ( (Xj,best-Xj,k│)” indicates the tendency
of the solution to move closer to the best solution and the term “-r2,j (Xj,worst-
│Xj,k│)” indicates the tendency of the solution to avoid the worst solution. X'j,k is
accepted if it gives better function value. All the accepted function values at the end
of iteration are maintained and these values become the input to the next iteration.

The problems have been solved by many mathematical algorithms also


called modem heuristic algorithm However, the computational burden and the
accuracy of the result were not yet satisfactory. So, in this chapter, to improve the
accuracy and reduce computational burden, how the algorithm can be implemented to
the problem and what is the efficiency and accuracy of the algorithm is explained.

4.3 STEPS IN JAYA ALGORITHM

Step-1: Generate random sequences


Case (1) – 10
Case (2) – double the no. of operations
Step-2: Find out ‘X’ best and ‘X’ worst
Step-3: Find new solution with the formula
X'j = Xj,k + r1 (X(best) -│Xj,k│) - r2 (Xj,worst -│Xj,k│)
Step-4: After getting better X'j for all sequences
These all X'j values goes to next iteration.
Case (1) – select randomly for next itreration
Case (2) – select previous X'j values in next iteration
r1 = random numbers (0 to 1)
r2 = random number (0 to 2)

4.4 FLOW CHART


Figure 4.1 shows the flowchart of the proposed algorithm. The algorithm
always tries to get closer to success (i.e. reaching the best solution) and tries to avoid
failure (i.e. moving away from the worst solution). The algorithm strives to become
victorious by reaching the best solution and hence it is named as Jaya.

30
Fig 4.1 Flowchart of JAYA algorithm

31
CHAPTER 5

IMPLEMENTATION OF JAYA ALGORITHM TO SCHEDULING


PROBLEMS

Developed Heuristic Algorithms to solve NP-hard problems arise in the

scheduling problems. The proposed JAYA Algorithm is implemented to the

scheduling problems presented in section 3.8. The details of which are presented here

below.

For implementation of jaya algorithm, I have considered Job set 1 and Layout1.

Job Set 1
Job-1 Job-2 Job-3 Job-4 Job-5

M1 M2 M4 M1 M3 M2 M3 M4 M1 M4 M2 M3 M1

1 2 3 4 5 6 7 8 9 10 11 12 13

In jaya algorithm at first continuous numbers are marked initially for the
operations in an job set then random sequence of population of double number of
operations are generated by following relation i.e., operation of the same job set must
be in increasing order but anywhere in the sequence.

32
Step-1: Generate the operation sequence with double the number of operations

S.No. SEQUENCE MAKE SPAN


1 10, 7, 1, 12, 4, 13, 8, 2, 11, 5, 3, 9, 6 104.0
2 12, 4, 10, 1, 7, 2, 5, 11,13, 8, 9, 6, 3 105.0
3 10, 4, 12, 1, 7, 5, 2, 13, 8, 11, 6, 9, 3 108.0
4 12, 10, 4, 7, 1, 13, 11, 8, 5, 2, 6, 9, 3 108.0
5 10, 12, 7, 1, 4, 11, 2, 5, 8, 13, 9, 6, 3 108.0
6 10, 12, 7, 4, 1, 11, 5, 13, 2, 8, 3, 9, 6 108.0
7 12, 1, 10, 7, 4, 8, 5, 11, 2, 13, 9, 6, 3 110.0
8 7, 10, 4, 1, 12, 11, 13, 5, 2, 8, 3, 9, 6 112.0
9 12, 10, 4, 7, 1, 11, 2, 8, 13, 5, 3, 9, 6 114.0
10 12, 1, 10, 4, 7, 13, 5, 2, 11, 8 , 9, 3,6 114.0
11 4, 1, 10, 12, 7, 8, 2,11, 13, 5, 3, 9,6 116.0
12 10, 12, 7, 1, 4, 5, 13, 2, 11, 8, 6, 3, 9 116.0
13 4, 12, 10, 7, 1, 11, 5, 8, 13, 2, 3, 9, 6 118.0
14 7, 12, 10, 4, 1, 11, 8, 2, 5, 13, 3, 6, 9 119.0
15 10, 4, 1, 12, 7, 5, 13, 11, 2, 8, 3, 9, 6 120.0
16 7, 10, 4, 12, 1, 2, 11, 8, 13, 5, 9, 3, 6 120.0
17 4, 7, 1, 10, 12, 5, 11, 8, 2, 13, 9, 3, 6 120.0
18 10, 1, 4, 7, 12, 5, 13, 2, 8, 11, 9, 3, 6 120.0
19 12, 4, 10, 7, 1, 2, 11, 8, 13, 5, 6, 3, 9 121.0
20 10, 12, 1, 7, 4, 5, 8, 2, 11, 13, 6, 3, 9 125.0
21 7, 10, 12, 1, 4, 8, 5, 13, 11, 2, 3, 6, 9 127.0
22 10, 12, 4, 1, 7, 5, 13, 11, 8, 2, 3, 9, 6 128.0
23 1, 4, 7, 12, 10, 5, 8, 11, 2, 13, 3, 9, 6 132.0
24 4, 1, 7, 12, 10, 8, 13, 5, 11, 2, 6, 3, 9 132.0
25 7, 12, 1, 4, 10, 8, 11, 2, 13, 5, 6, 3, 9 133.0
26 12, 1, 7, 10, 4, 5, 13, 8, 11, 2, 6, 9, 3 134.0

33
Step-2: Find out the Best sequence and Worst Sequence from the generated random
sequences

The best case in the above sequence is (Xbest)

10, 7, 1, 12, 4, 13, 8, 2, 11, 5, 3, 9, 6 Make span: 104

The worst case in the above sequence is (Xworst)

12, 1, 7, 10, 4, 5, 13, 8, 11, 2, 6, 9, 3 Make span: 134.0

Step-3: Find new solution with the formula

X'j = Xj,k + r1 (X(best) -│Xj,k│) - r2 (Xj,worst -│Xj,k│)

X'j=[10, 7, 1, 12, 4, 13, 8, 2, 11, 5, 3, 9, 6 ]+(0.85)[(10, 7, 1, 12, 4, 13, 8, 2, 11, 5, 3, 9,


6 )- |10, 7, 1, 12, 4, 13, 8, 2, 11, 5, 3, 9, 6 |]-(0.85)[(12, 1, 7, 10, 4, 5, 13, 8, 11, 2, 6, 9,
3 )-| 10, 7, 1, 12, 4, 13, 8, 2, 11, 5, 3, 9, 6|]

X'j = [10, 7, 1, 12, 4, 13, 8, 2, 11, 5, 3, 9, 6 ]+(0)-(0.85)[2, 6, 6, 2, 0, 8, 5, 6, 0, 3, 3, 0,


3]

X'j = [10, 7, 1, 12, 4, 13, 8, 2, 11, 5, 3, 9, 6 ]-[1.7, 5.1, 5.1, 1.7, 0, 6.8, 4.25, 5.1, 0,
2.55, 2.55, 0, 2.55]

X'j = [8.3, 1.9, 4.1, 10.3, 4, 6.2, 3.75, 3.1, 11, 2.45, 0.45, 9, 3.45]

X'j = 8, 2, 4, 10, 4, 6, 4, 3, 11, 2, 0, 9, 3

Step-4: After getting better X'j for all sequences


The sequences are

34
S.No. SEQUENCE MAKE SPAN
1 12, 1, 4, 2, 5, 7, 3, 6, 10, 8, 11, 9, 13 134.0
2 1, 10, 7, 4, 12, 8, 2, 9, 5, 3, 11, 13, 6 122.0
3 12, 10, 1, 4, 13, 5, 2, 7, 3, 11, 8, 9, 6 121.0
4 1, 7, 10, 4, 8, 11, 2, 12, 3, 5, 9, 13, 6 136.0
5 12, 1, 7, 4, 5, 8, 2, 10, 3, 9, 11, 13, 6 130.0
6 12, 1, 4, 2, 7, 5, 3, 13, 8, 10, 6, 9, 11 124.0
7 1, 4, 7, 8, 5, 2, 10, 9, 6, 3, 11, 12, 13 129.0
8 1, 7, 10, 4, 12, 2, 5, 11, 8, 3, 6, 9, 13 108.0
9 1, 7, 10, 2, 8, 4, 3, 12, 5, 11, 6, 9, 13 126.0
10 1, 4, 7, 2, 12, 8, 3, 5, 10, 11, 6, 13, 9 130.0
11 1, 4, 7, 2, 12, 3, 5, 8, 6, 9, 10, 11, 13 134.0
12 12, 1, 2, 4, 5, 6, 7, 8, 10, 3, 9, 13, 11 142.0
13 1, 12, 7, 2, 8, 4, 3, 13, 5, 10, 6, 9, 11 120.0
14 1, 12, 7, 2, 8, 4, 9, 10, 3, 11, 5, 13, 6 130.0
15 12, 10, 4, 1, 13, 2, 5, 7, 6, 3, 8, 9, 11 127.0
16 1, 7, 10, 2, 8, 4, 3, 12, 5, 6, 11, 13, 9 128.0
17 1, 12, 4, 2, 13, 3, 7, 8, 5, 10, 6, 11, 9 136.0
18 12, 4, 10, 1, 13, 2, 5, 7, 3, 11, 6, 8, 9 117.0
19 1, 10, 7, 2, 8, 4, 3, 12, 5, 6, 9, 11, 13 128.0
20 12, 1, 4, 2, 5, 6, 7, 8, 10, 3, 9, 13, 11 142.0
21 1, 7, 12, 4, 5, 2, 3, 13, 10, 8, 6, 9, 11 131.0
22 12, 1, 10, 4, 13, 2, 5, 7, 3, 8, 6, 9, 11 118.0
23 4, 10, 12, 1, 7, 2, 5, 8, 9, 3, 6, 11, 13 128.0
24 1, 4, 12, 2, 7, 3, 5, 10, 8, 6, 9, 13, 11 124.0
25 1, 12, 4, 2, 7, 3, 5, 10, 6, 8, 9, 13, 11 128.0
26 1, 4, 12, 2, 5, 3, 7, 13, 10, 6, 8, 9, 11 121.0
These all X'j values goes to next iteration and repeat the procedure till all iterations
are completed.The above steps were iterated until the termination conditions are met
to get an optimal sequence and its respective makespan values.

35
COMPARISION OF ALGORITHMS

Table 5.1Comparison of make span values (for t/p>0.25)

Random Rapid Jaya


Sequence Algorithm
Job.No t/p FCFS SPT LPT Access

1.1 0.59 173 193 177 99 159 96


2.1 0.61 158 158 177 118 172 108
3.1 0.59 202 224 198 128 211 120
4.1 0.91 263 267 264 132 260 116
5.1 0.85 148 164 148 91 147 89
6.1 0.78 231 240 227 152 225 139
7.1 0.78 195 210 201 138 194 134
8.1 0.58 261 261 266 185 261 171
9.1 0.61 270 277 268 131 263 121
10.1 0.55 308 308 310 178 312 168
1.2 0.47 143 173 165 84 141 82
2.2 0.49 124 124 130 90 128 86
3.2 0.47 162 188 160 101 175 96
4.2 0.73 217 223 224 106 216 92
5.2 0.68 118 144 131 77 112 73
6.2 0.54 180 169 165 119 154 111
7.2 0.62 149 160 149 100 144 95
8.2 0.46 181 181 198 159 181 153
9.2 0.49 250 249 244 109 239 105
10.2 0.44 290 288 287 163 273 148
1.3 0.52 145 175 167 90 143 86
2.3 0.54 130 130 136 100 130 95
3.3 0.51 160 190 162 103 173 98
4.3 0.8 233 237 230 106 226 99

36
5.3 0.74 120 146 133 80 114 76
6.3 0.54 182 171 167 125 156 118
7.3 0.68 155 166 151 109 150 104
8.3 0.5 183 183 200 169 183 153
9.3 0.53 252 251 246 117 241 106
10.3 0.49 293 294 293 164 279 155
1.4 0.74 189 207 189 110 191 106
2.4 0.77 174 174 174 130 172 122
3.4 0.74 220 250 212 134 225 128
4.4 1.14 301 301 298 135 298 131
5.4 1.06 171 189 171 104 171 97
6.4 0.78 249 252 237 148 237 147
7.4 0.97 217 242 151 158 210 154
8.4 0.72 285 285 200 198 285 182
9.4 0.76 292 311 290 132 285 126
10.4 0.69 350 350 345 191 348 184

In the optimal sequence of machines and AGVs are determined by using FCFS, SPT,
LPT, RANDOM, RA Heuristic and JAYA algorithm for t/p>0.25 are shown in table
no 5.1. From table 5.1 out of 42 problems, here getting improved results using JAYA
algorithm in comparison with others, after jaya algorithm 42 problems gives improved
results using priority rules and heuristic algorithms

37
Table 5.2 Comparison of make span values (for t/p<0.25)

Random Jaya
Job. RA
t/p Sequenc algorithm
No
FCFS SPT LPT e Heuristic
1.10 0.15 207 248 252 128 226 126
2.10 0.15 217 217 225 151 217 148
3.10 0.15 257 327 282 169 299 158
4.10 0.15 303 328 317 123 287 123
5.10 0.21 152 190 187 102 162 102
6.10 0.16 304 281 297 214 273 200
7.10 0.19 231 240 264 142 227 137
8.10 0.14 338 338 347 292 338 292
9.10 0.15 390 367 359 185 362 182
10.10 0.14 452 429 444 278 420 262
1.20 0.12 94 238 246 123 217 123
2.20 0.12 194 194 206 148 202 143
3.20 0.12 241 311 270 159 285 154
4.20 0.12 285 312 298 118 267 116
5.20 0.17 142 180 184 100 153 100
6.20 0.12 292 260 284 217 251 187
7.20 0.15 212 218 249 141 206 136
8.20 0.11 306 319 334 293 306 287
9.20 0.12 380 355 347 182 352 179
10.20 0.11 445 423 439 270 416 255
1.30 0.13 195 239 247 122 218 122
2.30 0.13 197 197 209 150 203 146
3.30 0.13 240 312 271 167 284 146
4.30 0.13 292 317 301 119 272 117
5.30 0.18 141 181 183 99 154 99
6.30 0.24 296 261 285 216 252 199

38
7.30 0.17 215 221 250 140 209 137
8.30 0.13 307 320 335 294 307 288
9.30 0.13 381 356 348 181 353 180
10.30 0.12 448 426 442 277 419 260
1.40 0.18 213 255 254 124 234 124
2.41 0.13 307 307 319 217 316 217
3.40 0.18 261 330 282 172 303 151
3.41 0.12 370 476 411 250 437 235
4.41 0.19 434 471 451 180 408 177
5.41 0.18 218 269 272 148 236 148
6.40 0.19 310 288 299 226 275 201
7.40 0.24 239 251 270 148 236 141
7.41 0.16 329 344 385 220 327 203
8.40 0.18 343 343 349 294 343 293
9.40 0.19 396 379 370 186 368 182
10.40 0.17 466 445 455 279 430 265

In the optimal sequence of machines and AGVs are determined by using FCFS, SPT,
LPT, RANDOM, RA Heuristic and JAYA algorithm for t/p<0.25 are shown in table
no 5.2. From table 5.2 out of 42 problems, here getting improved results using JAYA
algorithm in comparison with others, after jaya algorithm 42 problems gives improved
results using priority rule and heuristic algorithm

39
CHAPTER 6

RESULTS AND DISCUSSION

The scheduling procedure with JAYA ALGORITHM has been developed in


the “JAVA” language. The production schedule data includes optimized processing
times of the machines and also the AGV transportation time as input data. The
optimal sequence of AGVs, the sequence of jobs, the optimized makespan values and
the time taken to process this problem for a given number of iterations is given by the
software developed.

The problems are designed at different levels of the ratio of travel times to
processing times because a major parameter influencing the interaction of the vehicle
and machine schedules is the relative magnitudes of the processing times with respect
to the travel times. The generation of example problems is based to a large extent on
Bilge[6]. The ratio of travel times to processing times has been the main concern
when generating the example problems. By employing basic layout types encountered
in the literature (e.g., Kusiak 1985) such as loop or ladder or their combinations, four
different layouts are generated each with four machines. Ten different job sets with
different processing sequences, and process times are generated and presented.
Different combinations of these ten job sets and four layouts are used to generate 82
example problems. In all these problems there are two vehicles. Table 5.1consists of
problems whose ti/pi ratios are greater than 0.25, and whose ti/pi ratios are lesser than
0.25 ratios are represented in Table 5.2.

A code is used to designate the example problems which are given in the first
column. The digits that follow EX indicate the job set and the layout. In t/p ratio<0.25
table another digit is appended to the code. Here, having a 0 or 1 as the last digit
implies that the process times are doubled or tripled, respectively, where in both cases
travel times are halved.

The problems in t/p ratio>0.25 and t/p ratio<0.25 are sorted according to their
layouts. Looking closer in t/p ratio>0.25 one can observe that, while high
improvements are achieved on all layouts.

40
Fig 6.1Comparison chart for t/p ratio >0.25

41
42
Fig 6.2 Comparison chart for t/p ratio <0.25

43
44
CHAPTER 7

CONCLUSION

In this project the FMS scheduling optimization is done by using JAYA


Algorithm, the optimal sequences of Machines and AGVs are determined. The
purpose of this study is to make AGV scheduling an integral part of the scheduling
activity, actively participating in the specification of the off-line schedule, rather than
just reacting to it. The iterative algorithm created anticipates the complete set of flow
requirements for a given machine schedule and makes vehicle assignments
accordingly, as opposed to a real-time dispatching scheme that uses no information
other than the move request queue. The iterative algorithm promises improvement in
scheduling especially in environments where cycle times are short and travel times are
comparable, or where the layout and the process routes do not suit each other.

The comparison Table 5.1 and Table 5.2 shows that most of the times results
of Sheep flock algorithm are better than the other algorithm and traditional methods.
From the table 5.1 it can be observed that out of 40 problems 40 problems gives better
results using JAYA and also it can be observed that from table 5.2 out of 42 problem
42 problems gives better results using JAYA when compared with other algorithms.

7.1 LIMITATIONS OF THIS WORK

In this particular problem we consider all the Automated Guided Vehicle


as an identical one but in practice that may not possible. Traffic control,
congestion, machine failure or downtime, scraps, rework and vehicle dispatches for
battery changer are ignored here and left as issues to be considered during real-time
control. Number of machine considered are four which many vary in real time
problem and the layout is simple one.

The performance of any particular layout is not mentioned specifically. The


allocation of tools to machines and the assignment of operations to machines are
considered has assumptions but not implied to our problem. Routing flexibility is
not considered in our case because of only two AGV’S. The routing for a part type
can be selected based on considerations of technological feasibility and processing
efficiency but not analyzed.

45
7.2 SCOPE FOR FUTURE WORK

 It is also possible to adapt the Sheep Flock Heredity Algorithm approach to


performance criteria other than the makespan, such as the minimization of
maximum tardiness and mean flow time.
 In machine schedule generation, on the other hand, due date related priority
rules can be employed in conjunction with the active or non delay schedule
generators.
 Problem can be implemented as real time scheduling problem with necessary
additions
 Traffic control and safety can be incorporated for Automated Guided vehicle
 Number of AGV’S can be increased
 Robots and Automated Storage Retrieval System AS/RS can be incorporated
to this problem

46
APPENDIX

importjava.util.ArrayList;
importjava.util.List;
publicclassJayasProcess
{
privateSchedule[] a;
privateint[] b;
privateint[] c;
privateint[] d;
privateint[] e;
privateint[] f;
privateint[][] g;
privateSchedule[] h;
privateList i;
privateMutations j;
privateRectifierx k;
privateb l;
publicfloatinitMinimum = 500.0F;

publicJayasProcess(intparamInt, int[][] paramArrayOfInt)


{
this.g = paramArrayOfInt;
this.a = newSchedule[paramInt];
this.h = newSchedule[paramInt];
this.k = newRectifierx(JobSet.d);
this.l = newb();
this.j = newMutations(JobSet.r);
this.i = newArrayList();
}

47
publicSchedule[] initSchedules(String paramString)
{
for(intm = 0; m <this.a.length; m++)
{
this.a[m] = newSchedule(paramString + (m + 1));
this.a[m].setJobNum(m + 1);
this.a[m].setTransOps(this.g[m]);
floatf1 = this.a[m].doProcess();
this.a[m].setJobMakeSpan(f1);
if(f1 <this.initMinimum) {
this.initMinimum = f1;
}
}
returnthis.a;
}

publicSchedulegetBestSchedule(Schedule[] paramArrayOfSchedule)
{
SchedulelocalSchedule = paramArrayOfSchedule[0].clone();
for(intm = 1; m <paramArrayOfSchedule.length; m++) {
if(paramArrayOfSchedule[m].getJobMakeSpan() <localSchedule.getJobMakeSpan())
{
localSchedule = paramArrayOfSchedule[m].clone();
}
}
returnlocalSchedule.clone();
}

publicSchedulegetWorstSchedule(Schedule[] paramArrayOfSchedule)
{
SchedulelocalSchedule = paramArrayOfSchedule[0].clone();

48
for(intm = 1; m <paramArrayOfSchedule.length; m++) {
if(paramArrayOfSchedule[m].getJobMakeSpan() >localSchedule.getJobMakeSpan())
{
localSchedule = paramArrayOfSchedule[m].clone();
}
}
returnlocalSchedule.clone();
}

publicSchedule[] jayaedSchedules(Schedule[] paramArrayOfSchedule)


{
Schedule[] arrayOfSchedule = newSchedule[paramArrayOfSchedule.length];
Schedule localSchedule1 = getBestSchedule(paramArrayOfSchedule);
Schedule localSchedule2 = getWorstSchedule(paramArrayOfSchedule);
this.b = newint[JobSet.r];
this.c = newint[JobSet.r];
this.d = newint[JobSet.r];
this.e = newint[JobSet.r];
this.f = newint[JobSet.r];
for(intm = 0; m <paramArrayOfSchedule.length; m++)
{
for(intn = 0; n <JobSet.r; n++)
{
if(localSchedule1.a[n] >= paramArrayOfSchedule[m].a[n]) {
this.b[n] = (localSchedule1.a[n] - paramArrayOfSchedule[m].a[n]);
} else{
this.b[n] = (paramArrayOfSchedule[m].a[n] - localSchedule1.a[n]);
}
if(localSchedule2.a[n] >= paramArrayOfSchedule[m].a[n]) {
this.c[n] = (localSchedule2.a[n] - paramArrayOfSchedule[m].a[n]);
} else{

49
this.c[n] = (paramArrayOfSchedule[m].a[n] - localSchedule2.a[n]);
}
this.d[n] = Math.round(this.b[n] * JobSet.o);
while(this.f[n] >JobSet.r) {
this.f[n] -= JobSet.r;
}
}
int[] arrayOfInt = this.k.doRectification(this.k.a(this.f));
arrayOfSchedule[m] = newSchedule("Jaya--");
arrayOfSchedule[m].setJobMakeSpan(f1);
}
returnarrayOfSchedule;
}

publicvoidsetOps(ScheduleparamSchedule, float[] paramArrayOfFloat)


{
int[] arrayOfInt1 = newint[paramArrayOfFloat.length];
for(intm = 0; m <paramArrayOfFloat.length; m++)
{
arrayOfInt1[m] = Math.round(paramArrayOfFloat[m]);
while(arrayOfInt1[m] >JobSet.r) {
arrayOfInt1[m] -= JobSet.r;
}
}
int[] arrayOfInt2 = this.k.doRectification(this.k.a(arrayOfInt1));
paramArrayOfFloat = paramSchedule.doProcess();
paramSchedule.setJobMakeSpan(paramArrayOfFloat);
}
}

50
importjava.util.ArrayList;
importjava.util.Collections;
importjava.util.List;

publicclassPopulation
{
privateSchedule[] a;
privateList b;
privateRectifierx d;
publicfloatinitMinimum = 500.0F;

publicPopulation(intparamInt)
{
this.a = newSchedule[paramInt];
this.d = newRectifierx(JobSet.d);
for(paramInt = 0; paramInt<JobSet.r; paramInt++) {
this.b.add(Integer.valueOf(paramInt + 1));
}
}

publicSchedule[] initSchedules(String paramString)


{
for(inti = 0; i<this.a.length; i++)
{
Collections.shuffle(this.b);
this.a[i] = newSchedule(paramString + (i + 1));
Object localObject = newInteger[JobSet.r];
localObject = (Integer[])this.b.toArray((Object[])localObject);
this.a[i].setTransOps((int[])localObject);
floatf = this.a[i].doProcess();

51
if(f <this.initMinimum) {
this.initMinimum = f;
}
}
returnthis.a;
}

publicSchedulegetGlobBest()
{
returnthis.c;
}

publicvoidsetGlobBest(ScheduleparamSchedule)
{
this.c = paramSchedule;
}

publicSchedule[] getScheds()
{
returnthis.a;
}

publicvoidsetScheds(Schedule[] paramArrayOfSchedule)
{
this.a = paramArrayOfSchedule;
}
}

importjava.io.PrintStream;

52
importjava.util.ArrayList;
importjava.util.List;
importjava.util.Random;

publicclassSequencer
{
privateint[][] a;
privateint[][] b;
privateint[] c;
privateinte;

publicSequencer(int[][] paramArrayOfInt, intparamInt)


{
this.a = paramArrayOfInt;
this.c = newint[JobSet.r];
a(paramArrayOfInt);
}

privatevoida(int[][] paramArrayOfInt)
{
inti = 0;
for(intj = 0; j <paramArrayOfInt.length; j++) {
if(paramArrayOfInt[j].length >i) {
i = paramArrayOfInt[j].length;
}
}
this.b = newint[i][];
this.d = newint[i][];
for(j = 0; j <i; j++)
{

53
this.b[j] = newint[paramArrayOfInt.length];
for(intk = 0; k <paramArrayOfInt.length; k++) {
if(j <paramArrayOfInt[k].length) {
this.b[j][k] = paramArrayOfInt[k][j];
} else{
System.out.print(" ");
}
}
}
for(j = 0; j <this.b.length; j++)
{
ArrayListlocalArrayList = newArrayList();
for(paramArrayOfInt = 0; paramArrayOfInt<this.b[j].length; paramArrayOfInt++) {
if(this.b[j][paramArrayOfInt] != 0) {
localArrayList.add(Integer.valueOf(this.b[j][paramArrayOfInt]));
}
}
paramArrayOfInt = newint[localArrayList.size()];
for(i = 0; i<paramArrayOfInt.length; i++) {
paramArrayOfInt[i] = ((Integer)localArrayList.get(i)).intValue();
}

publicint[][] genShuffledMacs()
{
int[][] arrayOfInt = newint[this.e][];
for(inti = 0; i<arrayOfInt.length; i++)
{
arrayOfInt[i] = newint[JobSet.r];

54
for(intm = 0; m <this.b.length; m++)
{
int[] arrayOfInt1;
int[] arrayOfInt2 = (int[])(arrayOfInt1 = this.b[m]).clone();
Random localRandom = newRandom();
for(inti2 = arrayOfInt2.length - 1; i2 > 0; i2--)
{
intn = localRandom.nextInt(i2 + 1);
inti3 = arrayOfInt2[i2];
arrayOfInt2[i2] = arrayOfInt2[n];
arrayOfInt2[n] = i3;
}
Object localObject = arrayOfInt2;
for(inti1 = 0; i1 <localObject.length; i1++)
{
arrayOfInt[i][(j++)] = localObject[i1];

}
}
}
returnarrayOfInt;
}

publicint[][] getTransOpNums()
{
returnthis.b;
}

publicvoidsetTransOpNums(int[][] paramArrayOfInt)

55
{
this.b = paramArrayOfInt;
}
}

importedu.demo.jayas.ui.DataTable;
importedu.demo.jayas.ui.LineSeriesChartSingle;
importedu.demo.jayas.ui.SummaryArea;
importjava.io.File;
importjava.io.FileOutputStream;
importjava.io.IOException;
importjava.io.PrintStream;
importjava.text.DateFormat;
importjava.text.SimpleDateFormat;
importjava.util.ArrayList;
importjava.util.Date;
importjava.util.List;
importjava.util.Scanner;
importjavax.swing.Timer;

publicclassJobSet
{
privateList C;
privateList D;
publicstaticfinalintG0 = 200;
publicstaticfinalString projTitle = "Jaya OptimiZation Algorithm in FMS";
Sequencer b;
privatestaticOperation[][] E;
Schedule[] e;
Schedule[] f;

56
staticinth;
staticinti;
staticintj;
staticintk;
staticintl;
privatestaticintF;
staticintm;
staticintn;
staticint[][] q = null;
staticintr;
privateint[] G;
DataPrinter s;
privateDateFormat H;
DateFormat v;
Date w;
b x;
privateDataTable I = newDataTable();
privateLineSeriesChartSingle K = newLineSeriesChartSingle();
privateTimer L = null;
int[][] y;
intz;
intA;
intB;

publicJobSet(String[] paramArrayOfString1, String[] paramArrayOfString2, String[]


paramArrayOfString3)
{
r = 0;
h = i = k = j = 0;
l = 0;

57
if((paramArrayOfString1.length == 4) && (paramArrayOfString2.length == 5) &&
(paramArrayOfString3.length == 2))
{
h = Integer.parseInt(paramArrayOfString1[0]);
i = Integer.parseInt(paramArrayOfString1[1]);
k = Integer.parseInt(paramArrayOfString1[2]);
j = Integer.parseInt(paramArrayOfString1[3]);
n = Integer.parseInt(paramArrayOfString2[3]);
l = Integer.parseInt(paramArrayOfString3[0]);
F = Integer.parseInt(paramArrayOfString3[1]);
}
try
{
System.setOut(paramArrayOfString1 =
newPrintStream(newFileOutputStream("output.txt", false)));
}
catch(IOExceptionlocalIOException)
{
(paramArrayOfString1 = localIOException).printStackTrace();
}
paramArrayOfString1 = newScanner(System.in);
if(h == 0)
{
System.out.println("Enter Layout Number :");
h = paramArrayOfString1.nextInt();
}
if(i == 0)
{
System.out.println("Enter Jobset Number :");
i = paramArrayOfString1.nextInt();
}

58
if(j == 0)
{
System.out.println("Enter Process Mode :");
j = paramArrayOfString1.nextInt();
}
if(k == 0)
{
System.out.println("Enter Travel Mode :");
k = paramArrayOfString1.nextInt();
}
switch(h)
{
case1:
q = Layout.d;
break;
case2:
q = Layout.e;
break;
case3:
q = Layout.f;
break;
case4:
q = Layout.g;
}
this.C = newArrayList();
this.D = newArrayList();
E = newOperation[Layout.b[(i - 1)].length][];
paramArrayOfString2 = 1;
for(paramArrayOfString3 = 0; paramArrayOfString3 <E.length;
paramArrayOfString3++)
{

59
E[paramArrayOfString3] = newOperation[Layout.b[(i - 1)]
[paramArrayOfString3].length];
for(String[] arrayOfString1 = 0; arrayOfString1 <E[paramArrayOfString3].length;
arrayOfString1++)
{
E[paramArrayOfString3][arrayOfString1] = newOperation(paramArrayOfString3 + 1,
arrayOfString1 + 1);
E[paramArrayOfString3][arrayOfString1].setMacProcessTime(Layout.c[(i - 1)]
[paramArrayOfString3][arrayOfString1]);
}
paramArrayOfString2 = paramArrayOfString2 + Layout.b[(i - 1)]
[paramArrayOfString3].length - 1;
}
this.G = newint[Layout.a[(i - 1)].length];
for(paramArrayOfString3 = 0; paramArrayOfString3 <this.G.length;
paramArrayOfString3++)
{
this.G[paramArrayOfString3] = Layout.a[(i - 1)][paramArrayOfString3].length;
r += this.G[paramArrayOfString3];
}
d = newOperation[r];
paramArrayOfString3 = 0;
for(String[] arrayOfString2 = 0; arrayOfString2 <E.length; arrayOfString2++)
{
for(paramArrayOfString2 = 0; paramArrayOfString2 <E[arrayOfString2].length;
paramArrayOfString2++) {
d[(arrayOfString2 + paramArrayOfString2 + paramArrayOfString3)] =
E[arrayOfString2][paramArrayOfString2];
}

}
this.H = newSimpleDateFormat("yyyy-MM-dd_HH-mm-ss");
this.v = newSimpleDateFormat("yyyy/MM/dd HH-mm-ss");

60
this.w = newDate();
paramArrayOfString1.close();
}

publicvoidstartProcess()
{
this.y = newint[Layout.b[(i - 1)].length][];
inti1 = 0;
for(inti2 = 0; i2 <this.y.length; i2++)
{
this.y[i2] = newint[Layout.b[(i - 1)][i2].length];
for(i3 = 0; i3 <this.y[i2].length; i3++) {
this.y[i2][i3] = (i2 + i3 + i1 + 1);
}
i1 = i1 + this.y[i2].length - 1;
}
d = newOperation[r];
i2 = 0;
for(inti3 = 0; i3 <E.length; i3++)
{
for(i1 = 0; i1 <E[i3].length; i1++) {
d[(i3 + i1 + i2)] = E[i3][i1];
}
i2 = i2 + E[i3].length - 1;
}
this.s = newDataPrinter();
String str = "JayaAlgo, "+ this.H.format(this.w) + ", L" + h + "J" + i + ", " + F + "
itrns";
(u = newFile(str)).mkdir();
if(m == 1) {
this.z = 10;

61
} else{
this.z = (2 * r);
}
this.b = newSequencer(this.y, this.z);
this.a = newJayasProcess(this.z, (int[][])arrayOfInt.clone());
this.e = this.a.initSchedules("Init--");
this.A = Math.round(l * this.z / 100);
this.B = (this.z - this.A);
System.out.println("Removed Count : " + this.A);
System.out.println("Remained Count : " + this.B);
System.out.println("****************************************************
*****************");
}

publicvoidshowDataTable()
{
this.I.show();
}

publicvoidhideDataTable()
{
this.I.hide();
}
publicvoidshowChart()
{
this.K.show();
}
publicvoidhideChart()
{
this.K.hide();

62
REFERENCES
1. Abdelmaguid TF, Nassef AO, Kamal BA, Hassan MF (2004)” A hybrid
GA/heuristic approach to the simultaneous scheduling of machines and
automated guided vehicles.” Int J Prod Res 42: 267−281
2. Akhilesh Kumar, Anuj Prakash, Ravi Shankar, M.K. Tiwari, (2006) “Psycho-
Clonal algorithm based approach to solve continuous flow shop scheduling
problem”. Expert Systems with Applications 31 (2006) 504–514.
3. Anwar MF, Nagi R (1998) Integrated scheduling of material handling and
manufacturing activities for JIT production of complex assemblies. Int J Prod
Res 36(3):653–681
4. Akturk MS, Yilmaz H (1996) “Scheduling of automated guided vehicles in a
decision making hierarchy.” Int J Prod Res 32:577–591
5. Blazewicz J, Eiselt HA, Finke G, Laporte G, Weglarz J (1991) Scheduling
tasks and vehicles in a flexible manufacturing system. Int J Flex ManufSyst
4:5–16
6. Bilge U, Ulusoy G (1995) “A time window approach to simultaneous
scheduling of machines and material handling system in an FMS.” Oper Res
43(6):1058–1070
7. Buzacott JA, Yao DD (1986) “Flexible manufacturing systems: a review of
analytical models.” Manage Sci 32(7):890–905
8. Chang, Y., H. Matsuo, and R.S. Sullivan (1989), A Bottleneck-Based Beam
Search for Job Scheduling in a Flexible Manufacturing System, International
Journal of Production Research ,27 (11), 1949-1961.
9. CHANGY, R. S. SULLIVAANN D J. R. WILSON 1986. Using SLAM to
Design the Material Handling System of an FMS. Int. J. Prod. Res. 24, 15-26.
10. El-Maraghy HA, Ravi T (1992) “Modern tools for the design, modeling and
evaluation of flexible manufacturing systems.” Int J Robot
ComputIntegrManuf 9(4):335–340
11. EGBELUP, J., AND J. M. A. TANCHOCO (1984). Characterization of
Automated Guided Vehicle Dispatching Rules. Int. J. Prod. Res. 22, 359-374.
12. Giffler .B, Thompson G.L (1960) “Algorithms for Solving Production-
Scheduling Problems” Operations Research, Vol. 8, No. 4. (Jul. - Aug., 1960),
pp. 487-503.

63
13. GOBAL, S. L. AND R. G. KASILINGAM 1991. A Simulation Model for
Estimating Vehicle Requirements in Automated Guided Vehicle Systems.
Comp. and Ind. Eng. 21, 623-627.
14. Han M, McGinnis LE (1989) “Control of material handling transporter in
automated manufacturing.” Lie Trans 21;184–190
15. Hutchison, J., K. Leong, D. Snyder, and F. Ward (1989), “Scheduling for
Random Job Shop Flexible Manufacturing Systems.” In Proceedings of the
Third ORSA/TIMS Conference on Flexible Manufacturing Systems, 161-166.
16. Hyunchul Kim, ByungchulAhn(2001), “A New Evolutionary Algorithm
Based On Sheep Flocks Heredity Model.” IEEE

17. John B. Chambers1 and J. Wesley Barnes Flexible Job Shop Scheduling by
Tabu Search, MS prepared September, 1994 Revised June, 1996.
18. Karabtik S, Sabuncuolu I (1993) “A beam search based algorithm for
scheduling machines and AGVs in an FMS.” In: Proceedings of the Second
Industrial Engineering Research Conference, Los Angeles, pp 308–312
19. Khoo, .L.P, S. G. Lee and X. F. Yin, “A prototype genetic algorithm-enhanced
multi-objective scheduler for manufacturing systems”, International Journal of
Advanced Manufacturing Technology, 16, pp 131–138, 2000.
20. Kimemia J, Gershwin SB (1985) “Flow optimization in flexible manufacturing
systems.” Int J Prod Res 23(1):81–96
21. Koichi Nara, Tomomi Takeyama, Hyunchul Kim (1999),”A New
Evolutionary Algorithm Based On Sheep Flocks Heredity Model and Its
Application to Scheduling Problem.”IEEE
22. KOUVELIS.P, (1992). Design and Planning Problems in Flexible
Manufacturing Systems: a Critical Review. J. Intell. Manut 3, 75-99.
23. KUSIAKA, 1985. Material Handling in Flexible Manufacturing Systems.
Material Flow 2, 79-95.
24. Lacomme .P, A. Moukrim, N. Tchernev, (2005) “Simultaneous job input
sequencing and vehicle dispatching in a single-vehicle automated guided
vehicle system: a heuristic branch-and-bound approach coupled with a discrete
events simulation model.” International Journal of Production Research, 43:9,
1911 – 1942.

64
25. Leandro Nunes de Castro, Fernando José Von Zuben,” Artificial Immune
Systems Basic Theory and Applications.” Technical Report TR –
DCA 01/99 December, 1999
26. Lee SM, Jung HJ (1989) “A multi-objective production planning model in a
flexible manufacturing environment.” Int J Prod Res 27(11):1981–1992
27. LENSTRA.J, K., AND A. H. G. RINNOOK YAN. (1978). “Complexity of
Scheduling Under Precedence Constraints”. Opns. Res. 26, 22-35.
28. MAHADEVAN. B, AND T. T. NARENDRAN(1990). “Design of an
Automated Guided Vehicle-Based Material Handling System for an FMS.” Int.
J. Prod. Res. 28, 1611-1622.
29. MALMBORG.C, J.(1990). A Model for the Design of Zone Control
Automated Guided Vehicle Systems. Int. J. Prod. Res. 28, 1741-1758.
30. MAXWELL.W . L., AND J. A. MUCKSTAD.T (1982 ).” Design of
Automated Guided Vehicles.” IIE Trans. 14, 114-124.
31. OrhanEngin, Alper Doyen (2004) “A new approach to solve hybrid flow shop
scheduling problems by artificial immune system.” Future Generation
Computer Systems 20 (2004) 1083–1095.
32. Pandit R, Palekar US (1993) “Job shop scheduling with explicit material
handling considerations.” Working paper, Iowa State University, Ames,Iowa
33. Raman N, Talbot FB, Rachamadgu RV (1986) Simultaneous scheduling of
machines and material handling devices in automated manufacturing. In: Proc
Second ORSA/TIMS Conf.on Flexible Manufacturing Systems
34. Reddy .B.S.P, C.S.P. Rao.(2006),”A hybrid multi-objective GA for
simultaneous scheduling of machines and AGVs in FMS.” Int J
AdvManufTechnol (2006) 31: 602-613.
35. Ronald L. RardinAndRehaUzsoy (2001) “Experimental Evaluation of Heuristic
Optimization Algorithms.” School of Industrial Engineering, Purdue
University, West Lafayette, IN 47907-1287, USA.
36. Sabuncuoglu I, Hommertzheim DL (1992) “Dynamic dispatching algorithm for
scheduling machines and automated guided vehicles in a flexible
manufacturing system.” Int J Prod Res 30:1059–1079.

65
37. Sabuncuoglu I, Hommertzheim DL (1992) ‘Experimental investigation of FMS
machine and AGV scheduling rules against the mean flow time criterion. Int .j
prod Res 30(7): 1617-1635.
38. SemraTumali, (1995) “Simulation for Evaluating Machine And AGV
Schedulling Rules In An FMS Environment”, Engineering management
Conference, university Izmir 35100 Turkey.
39. SOLOMON,M. M., AND J. DESROSIER.S(1988). “Time Window
Constrained Routing and Scheduling Problems.” Trans. Sci. 22, 1-13.
40. Stecke, K. (1983), “Formulation and Solution of Nonlinear Integer Production
Planning Problems for Flexible Manufacturing Systems.” Management
Science, 29 (3), 273-288.
41. Stecke, K.E. and J.J. Solberg (1981), “Loading and Control Policies for a
Flexible Manufacturing System.” International Journal of Production Research,
19 (5), 481-490.
42. Taghaboni F, Tanchoco JMA (1995) “Comparison of dynamic
routingtechniques for automated guided vehicle systems.” Int J Prod Res
33:2653–2669
43. Tanchoco JMA, Co C (1994) “Real time control strategies for multiple load
AGVs.” In: Tanchoco JMA (ed) Material Flow Systems in Manufacturing,
Chapman and Hall, London, pp 300–331
44. Ulusoy G, Sivrikayaserifoglus F, Bilge U (1997) “A genetic algorithm
approach to the simultaneous scheduling of machines and automated guided
vehicles.” Computer Operations Res 24(4):335–351
45. Wu SYD, Wysk RA (1988) “Multi-pass expert control system –a
control/scheduling structure for flexible manufacturing cells.” J Manuf
Syst7(2):107–120
46. Webster, S. and Baker, K.R. (1995) “Scheduling groups of jobs on a single
machine”, Operations Research, 43(4) , 692-703.
47. Ripon KSN, Tsang CH, Kwong S (2007) An evolutionary approach for solving
the multi-objective job-shop scheduling problem, In:Dahal K, Tan K, Cowling
P (eds) Evolutionary scheduling, studies in computational intelligence, 49.
Springer, Berlin, 165–195.

66
48. Satheesh Kumar R.M, Asokan P and Kumanan S (2008) Design of loop layout
in flexible manufacturing system using non-traditional optimization technique,
Springer, International journal of advanced manufacturing technology, 594-
599.
49. Kashan AH, Karimi B (2009) A discrete particle swarm optimization algorithm
for scheduling parallel machines. ComputIndEng 59,216–233.
50. Balachandar SR and Kannan K 2010, A meta-heuristic algorithm for Set
covering problem based on gravity. Int J Comput Math Science, 4, 223–228.
51. Fauadi MHF, Murata T (2010) Makespan minimization of machines and
automated guided vehicles schedule using binary particle swarm optimization,
Proceedings of the International Multi Conference of Engineers and Computer
Scientists, vol. III, IMECS, Hong Kong.
52. Kumar RMS, Asokan P, Kumanan S (2010) An artificial immune system-based
algorithm to solve linear and loop layout problems in flexible manufacturing
systems, Int J Prod Develop 10(1/2/3), 165–179.
53. Udhayakumar P, Kumaran S 2012, Integrated scheduling of flexible
manufacturing system using evolutionary algorithms, Int. J. Adv. Manuf.
Technology, 61, pp.621-635.
54. Bagrezai A, Makki SVA-D and Rostami AS 2013, A new energy consumption
algorithm with active sensor selec-tion using GELS in target coverage WSN,
Int J Comput Science, 10(4), 11–18.
55. Hosseinabadi AAR, Siar H, Shamshirband S 2014, Using the gravitational
emulation local search algorithm to solve the multi-objective flexible dynamic
job shop scheduling problem in Small and Medium Enterprises. Ann Oper
Research, 229,451–474.
56. Rostami AS, Mohanna F, Keshavarz H 2015, Solving multiple traveling
salesman problem using the gravitational emulation local search algorithm, Int
J Appl Math InfSci, 9(2), pp. 699–709.

67

You might also like