Algoritma
Algoritma
Abstrak generasi pertama biasanya dipilih secara acak. Tidak seperti teknik
optimasi standar, GA melakukan pencarian paralel lebih dari satu set poin
penjadwalan job shop adalah masalah kombinatorial dari di ruang pencarian, sehingga mengurangi kemungkinan terjebak dalam
kepentingan industri yang cukup besar. Meskipun ketenaran nya, ada optimum lokal.
beberapa hasil yang menawarkan solusi yang memuaskan untuk masalah
umum, meskipun beberapa versi yang disederhanakan telah berhasil diobati. c) kebugaran dihitung untuk masing-masing individu dalam populasi, yang
Kesulitan terutama karena tingginya jumlah kendala, sayangnya tidak dapat mencerminkan cara setiap individu adalah, dibandingkan dengan orang
dihindari dalam aplikasi dunia nyata.
lain, lebih dekat dengan optimal. Nilai ini mengungkapkan kualitas diamati
dari solusi setiap individu mewakili.
Sebuah kromosom dapat dilihat sebagai vektor (yaitu point) dalam Hasil Operator mutasi sederhana dengan mengubah pada
ruang pencarian multi-dimensionnal di mana setiap gen satu acak (atau, jarang, lebih) alel. Sebagai contoh, kromosom
merupakan dimensi dan setiap nilai dari gen, yang disebut
alel, koordinat sepanjang dimensi ini (axis). ABCDE akan bermutasi menjadi ABCDE.
Dari sudut pandang ini, skema adalah hyperplane dalam ruang
pencarian. Di sisi lain, skema mengandung poin yang baik (yaitu poin
dengan nilai yang kuat dari fitness) statistik skor baik ketika sampel.
Dengan demikian setiap titik, yaitu kromosom, merupakan contoh dari 1.2.3 Pembalikan The
banyak hyperplanes yang mengandung itu.
Peran inversi adalah untuk memungkinkan pembentukan skema
Masalahnya adalah bahwa hyperplanes yang tepat, yaitu yang pendek yang baik dalam kasus gen yang relevan terlalu jauh pada
mengandung solusi yang baik, tidak diketahui selama pencarian - jika kromosom. Ini hasil dengan membalik urutan gen pada segmen yang
solusi optimal akan diketahui terlebih dahulu. Dengan demikian dipilih secara acak dari kromosom. Sebagai contoh, kromosom
hyperplanes baik harus "menebak" dari kebugaran diamati diberikan oleh
sampling schemata selama pencarian. Teori alokasi terbaik dari uji coba AB | CD | E akan terbalik ke AB | DC | E.
(yaitu sampel) untuk berbagai hyperplanes selama pencarian, mengingat
informasi yang kita dapat mengekstrak dari hasil yang diperoleh selama Karena posisi gen pada kromosom adalah, di bawah inversi,
pencarian yang sama, yang bekerja di [Belanda, 75] - kita tidak akan tidak lagi identik maknanya, makna (disebut
masuk ke detailnya di sini. Mari kita menguraikan kesimpulan utama: tempat) harus disimpan bersama-sama dengan
nilai ( alel). Tak usah dikatakan bahwa selama inversi, kedua hal tersebut
dipindahkan bersama-sama.
- pencarian genetik sesuai dengan kriteria optimalitas alokasi
percobaan ke hyperplanes selama proses optimasi, yaitu bahwa
menjanjikan (diamati) hyperplanes baik harus dialokasikan jumlah 2. Penjadwalan Job Shop Masalah
tumbuh secara eksponensial dari sampel, di bawah kondisi yang
2.1 Masalah Definisi
- sebanyak mungkin dari skema yang baik dari kedua orang
tua harus diawetkan selama crossover dan Masalah penjadwalan job shop terdiri, dalam arti luas, penempatan,
akan demikian ditransmisikan dari satu generasi ke generasi lain (karena tidak dari waktu ke waktu, sumber daya kapasitas yang terbatas untuk operasi,
semua skema dari kedua orang tua dapat dilestarikan secara bersamaan, sekaligus mematuhi berbagai kendala. Di antara kendala yang paling penting
kondisi ini santai dengan pendek orang). seseorang dapat menemukan
Juga,
- mutasi tidak harus merusak ke titik untuk membuat non-layak
individu bermutasi dengan probabilitas yang besar, karena ini akan - keterbatasan kapasitas: setiap saat, tidak lebih dari jumlah
menyebabkan individu (dan dengan demikian skema baru akhirnya) harustertentu dari sumber daya masing-masing jenis yang tersedia. Penjadwalan
dihilangkan dari populasi berikutnya lagi, tanpa manfaat apapun (ini tidak operasi yang lebih pada jenis sumber daya dari ada tersedia mengarah ke
segera mengikuti dari teori di [Belanda, 75], namun dikonfirmasi dalam jadwal tidak layak (misalnya tidak mungkin untuk melakukan tiga operasi
praktek). pengeboran secara bersamaan jika hanya ada dua mesin bor tersedia).
Operator genetik klasik dasar adalah: - kendala didahulukan: perintah (parsial atau tidak) dikenakan
pada operasi yang merupakan anggota satu pekerjaan. Ini juga disebut
teknologi kendala, karena mereka
1.2.1 Crossover The biasanya menerjemahkan suksesi diperlukan operasi (misalnya pertama membuat lubang,
kemudian masukkan sekrup).
Crossover sederhana beroperasi sebagai berikut: misalkan - kendala duniawi: sebagian besar waktu pesanan kendala untuk
kromosom adalah string lima simbol. Kemudian crossover orang tua memulai setelah tanggal tertentu (disebut awal
waktu mulai) dan untuk mengakhiri sebelum tanggal tertentu (disebut
ABCDE dan batas tanggal terakhir). Ini biasanya menerjemahkan nonavailability bahan sebelum
ABCDE tanggal tertentu (yaitu pekerjaan tidak dapat memulai belum) dan kebutuhan untuk
hasil dengan memilih pertama secara acak situs Crossover, untuk instanceABC | memberikan produk jadi di delay tertentu. Namun perlu dicatat bahwa tanggal jatuh
tempo kendala adalah dalam banyak kasus lembut kendala, yang berarti bahwa hal itu
DE dan dapat
dilanggar, tapi untuk harga biaya yang lebih tinggi (client 3. The Problem and the GAs
ketidakpuasan).
- kendala preemption memaksakan nonavailability sumber daya 3.1 The Encoding Scheme
tertentu selama interval waktu yang dikenal di muka. Ini digunakan untuk
cadangan sumber daya untuk lainnya As we mentionned above, the first task in apply- ing GAs to a
tujuan dari produksi (misalnya maintanance atau perbaikan). problem consists of defining an encoding scheme to represent solutions
- penjadwalan Multiflow: sometimes several kinds of resourcesof the problem. The job shop scheduling problem proves difficult in this
are scarce, i.e. cannot be considered of infinite capacity. In those cases, regard, due mainly to the precedence constraints. Indeed, the encoding
several resources must be allocated for each operation, which increases chosen must be such that the genetic operators which will be applied to
the complexity of the scheduling problem ([Lecocq and Falkenauer,90]). the individuals make sense. Ideally, an application of any of the used
For instance, one could consider that tools are too expensive to be operators to a valid individ- ual should again produce a valid individual
available in abundace, in which case both machines’ and tools’ availability(Some sources in the literature do not restrain the encoding/operators to
must be forecast (scheduled) over the time. The opposite of multiflow is always produce valid individuals, in which case the invalid ones are
the monoflow scheduling (just one kind of resource must be scheduled). simply assigned too high a cost to be retained. Such a policy leads
however to a worse efficiency of the algorithm.).
As will be explained below, the precedence contraints are the The most straightforward encoding one could think of is simply
ones that make the job shop scheduling problem difficult to treate by GAs.a string expressing the succession of operations as they take place in the
We have thus concentrated on these (and the temporal constraints) in ourtime. For instance, the string ADCB would encode the solution where the
research. On the other hand, this research being so far a feasibility study,oper- ation A is performed first, D second, followed by C and B.
in order to make the problem as simple as possible, we consider just one
resource of each type in a monoflow problem, and do not consider any Such an encoding would reduce the scheduling problem to a
preemption constraints. search of the best permutation of the oper- ations to perform, with the
advantage that a similar problem (the Traveling Salesman Problem [Garey
and Johnson,79]) has already been treated in the literature. Several
crossover operators have been proposed for this problem, for example the
PMX in [Goldberg,89].
2.2 The Cost Function to Optimize
The disadvantage of this encoding becomes apparent when we
The scheduling problem is an optimization problem where the consider several resources, for there can be then several operations taking
ultimate objective is reduction of the total cost of production. However, it place in parallel, in which case the meaning of the relative positions of the
is extremely difficult, if at all possible, to actually give figures translating operations on the chromosome (i.e. in the permutation string) becomes
this objective, because a number of factors contributing to the total cost less clear. The main problem stems however from the fact that the usual
are difficult to estimate (e.g. the long term cost of client dissatisfaction in crossover operators (such as the PMX) would have to be
case of late deliveries). Thus in reality people in the factory select
themselves an easily definable (and computable) objective. This may be substantially mod-
to minimize lateness, minimize lead time, maximize through- put, ified to account for the precedence constraints.
minimize inventory, minimize, maximize or balance workload on certain Indeed, consider the right end of the string : it describes the
resources, and so on. succession of operations which are for most of them preceded by other
operations in their jobs. Now changing the left end of the string, an
operation unavoid- able during the genetic search, changes the
Since late delivery seems to be a pervasive problem in today’s succession of the first operations in the jobs, implying a rearangement of
industry, we adopted as the cost function to maximize one that decreasesthe rest of jobs if we want to maintain a consistency with the technological
fast with lateness. On the other hand, finishing jobs in advance (before constraints without creating undesirable "holes" (idle times) in the
due date) may not be good for the inventory figure, but offers greater schedule. Such a rearangement leads to a heavy loss of the genetic
leeway in case imprevisible events impair the production. Hence our costcontents in the indiv- idual. Since the conservation to the largest extent
function grows with advance. possible of the genetic contents of both parents during a crossover is the
crux of the method, it becomes clear that such a simple encoding has little
Delivering as much in time as possible being more important chances to offer much to a solution of this problem.
than delivering in advance before due date, the cost function must
decrease with tardy deliveries faster than grow with advances. On the
other hand, the function should prohibit the situations where a few
important tardy deliveries are compensated for by many small tardiness It thus turns out that it is necessary to use a more indirect
(or advances). encoding scheme for the chromosomes than a simple "image" of the
operations’ sequence in time. To find one, we reverted to the "shop floor"
We therefore chose the following function to maximize : where worksta- tion operators often actually do the scheduling in the
following way : when jobs start to queue up in front of the station, at the
end of each operation the operator has a
2, where 0 < c ≤ 1,
f = c ∑ advances - ∑ tardiness
choice of which operation from the waiting queue he or she will start next.
the sum being computed over all jobs to schedule. The (often implicite) rules they use are also known as dispatch rules. Needless
to say, these rules have an impact on the succession of tasks performed
on the station. A station being often a supplier to other
stations, the dispatch rules largely determine the overall scheduling of one for each resource.
operations (Dispatch rules are however not We will thus apply the crossover operator inde-
complete with respect to the scheduling problem, i.e. they cannot define pendently to each list in the chromosome. In particular, we will cross the
an arbitrary schedule. Namely, a schedule with idle time and non empty first subchromosome of one parent with the first subchromosome of the
waiting queue in front of a station cannot result from these rules only.). second parent, the second with the second, and so on.
From the GA point of view, the dispatch rules have two If, in addition, we use a crossover that only modifies the order
important advantages : they are very simple to express and they allow forof genes on the (sub)chromosome (a
genetic operators which always produce valid individuals. reordering crossover), we obtain an operator that always produces valid
individuals.
Before detailing the operator, let us point out a particularity of 932 | HHH | 187.
the chromosomes used : in order to avoid ambiguities, the operations to Lubang-lubang sekarang dapat diisi oleh gen terpisah, yaitu gen dari
be performed on each resource (station) must be separated from the
bagian persimpangan dari induk pertama, memberikan 932 | 456 | 187.
others. In particular, the chromosome cannot be considered as a linear
string of genes anymore. We can say that the chromosome is constituted
of several Seperti dapat dengan mudah dilihat, OX Crossover upaya untuk
subchromosomes, melestarikan posisi relatif antara gen pada
kromosom. kromosom dianggap melingkar, karena masalah TSP yang diuji, yaitu permutasi biner: permutasi dari hanya
OX dirancang terdiri dari menemukan yang terbaik dua (dipilih secara acak) gen pada kromosom. Cara lain untuk mematuhi
wisata dalam grafik dihargai, ie komentar itu akan membatasi operator inversi normal panjang pendek, sehingga
posisi absolut dari gen pada kromosom tidak memiliki arti apapun. mengurangi nya (mungkin destruktif) dampak. Kami telah meninggalkan
pertimbangan-pertimbangan ini untuk pembangunan masa depan.
Dalam masalah jobshop, posisi relatif dari dua gen yang penting
(prioritas di antara dua operasi ditentukan sesuai dengan posisi relatif
mereka pada kromosom), tetapi kromosom tidak dapat dianggap
melingkar. Memang, operasi dengan prioritas tertinggi adalah salah satu
yang memiliki gen di posisi paling kiri pada kromosom, dan dengan 4. Hasil Percobaan
bundar OX ini akan paling mungkin akan bergeser ke kanan kromosom
(lihat operasi 7 dalam contoh di atas), menjadi salah satu operasi dengan Kami menguji algoritma pada tiga lems penjadwalan
prioritas terendah. penghancuran seperti isi kromosom ini akan masalah.Safe_mode ukuran yang berbeda. Mereka dapat ditandai dengan berikut:
mengakibatkan hilangnya berat efisiensi operasi crossover.
Percobaan kami menunjukkan bahwa algoritma ini repre- [Goldberg, 89] Goldberg David E. Algoritma genetik di
sents alternatif yang baik atas teknik lain untuk masalah ini: itu cukup Pencarian, Optimasi dan Machine Learning, Addison- xxxx
cepat, bertahap (yaitu beberapa larutan Publishing Company, Inc.
segera tersedia) dan memberikan hasil yang lebih baik daripada heuristik yang
paling banyak digunakan untuk tujuan ini, setidaknya selama fungsi biaya kami
dianggap. Lebih penting lagi, kami menunjukkan kelangsungan hidup metode [Grefenstette,85] Grefenstette John J. (Ed) Proceedings of
untuk masalah ukuran dunia nyata, menunjukkan kesiapannya untuk keperluan the First International Conference on Genetic Algorithms and their
industri. Applications, Carnegie-Mellon University, Pittsburgh, PA, July 24-26,
1985, Lawrence Erlbaum Associates, Publishers, Hillsdale, NJ.
Sejauh penelitian lebih lanjut yang bersangkutan, satu-satunya
kelemahan dari encoding / operator kita bisa melihat sejauh ini, kecuali untuk [Grefenstette,87] Grefenstette John J. (Ed)
komentar pada operator mutasi, adalah ketidaklengkapan nya (lihat bagian 3.1). Genetic
Untuk memperbaiki hal ini, cara memperkenalkan kali menganggur buatan Algorithms and their Applications: Proceedings of the Second
dalam jadwal harus ditemukan. International Conference on Genetic Algorithms,
MIT, Cambridge, MA, July 28-31, 1987, Lawrence Erlbaum
Salah satu cara untuk melakukan hal ini akan mengubah
Associates, Publishers, Hillsdale, NJ. [Holland,75] Holland John H.
encoding melalui penyertaan operasi 'hantu'
mewakili waktu tunggu. Adaptation in Natural and
Kemungkinan lain, saat ini sedang berlangsung di lab kami, adalah Artificial Systems, University of Michigan Press, Ann Arbor.
untuk meninggalkan kesederhanaan aturan pengiriman laba dari aturan resolusi
konflik. Ini juga aturan preferensial (yaitu mereka menentukan operasi yang
harus dilaksanakan dalam kasus dua dari mereka siap), tetapi jauh lebih [Holland,86] Holland John H. Escaping Britleness: The Possibilities of
sederhana dan karena itu lebih fleksibel. Menggunakan pendekatan ini General-Purpose Learning Algorithms Applied to Parallel Rule-Based
sebenarnya berarti untuk membangun sistem classifier gaya [Holland, 86], yang Systems di "Machine Learning: Sebuah Pendekatan Artificial
akan memberkati sistem dengan kemampuan belajar. Intelligence, Vol 2", Michalski et al. (Eds), Morgan Kaufman Publishers,
Inc., Los Altos, CA.