• Nem Talált Eredményt

Ütemezési feladatokat széles kör¶ el®fordulásuk és összetett jellegük miatt sokféle szempont alapján osztályozhatjuk. Az ütemezési feladatokat osztályozhatjuk a ter-mékek elkészítéséhez szükséges m¶veletek, feladatok végrehajtásának módja alapján.

Megkülönböztethetünk job shop, ow shop és open shop ütemezési feladatokat.

Minden termék egy munka (job) meghatározott szabályok szerinti végrehajtásával állítható el®. A job egy, vagy több m¶veletet tartalmaz, a m¶veleteket berendezé-sek hajtják végre. Általában feltehetjük, hogy az elkezdett m¶veleteket nem lehet megszakítani, minden m¶veletet egy id®ben csak egy gépen lehet végrehajtani.

A ow shop ütemezési feladatokban a job-ok m¶veletei ugyanabban a sorrend-ben haladnak végig az azokat végrehajtó ugyanazon berendezéseken. Ezért a ow shop ütemezést permutációs ütemezésnek szokás nevezni, mivel a feladat a termé-kek optimális sorrendjének, permutációjának a meghatározása.

A job shop ütemezési feladatokban mindegyik job több gépen keresztül, azonban a m¶veletek rögzített sorrendjében végezhet® el. Flow shop feladatokkal ellentétben job shop ütemezés esetén a különböz® jobok azonos m¶veletei különböz® gépekkel is elvégezhet®ek. Feltételezzük, hogy különböz® job-ok m¶veletei között nincsen rende-zés, bármelyiket végre lehet hajtani hamarabb. Blazewicz és társai összegy¶jtötték és elemezték a job shop feladatok megoldására született módszereket [11].

Az open shop ütemezési feladat hasonló a job shop feladathoz, eltérés abban van, hogy míg a job shop feladatoknál a job-ok m¶veleteinek a sorrendje rögzített, addig az open shop feladatokban a job m¶veleteit bármilyen sorrendben végre lehet hajtani a megfelel® gépeken [45].

A ow-, job- és open shop feladatok vizsgálatával jelent®s mennyiség¶ szakiroda-lom foglalkozik, különböz® módszereket dolgoztak ki megoldásukra (pl: heurisztika, szétválasztás és korlátozás, dinamikus programozás, egész programozás, tabu keresés, szimulált h¶tés, neurális hálózatok, hangya algoritmusok). A kés®bbiekben szakiro-dalmi példákat mutatok be az ütemezésre kidolgozott módszerekre. Guo és társai a több gépes job shop ütemezési feladatok megoldására a egy genetikus algoritmust fej-lesztettek ki [29]. Az algoritmus m¶ködését ipari feladat megoldásával szemléltették.

A job shop feladatot JIT (Just In Time) környezetben vizsgálva oldották meg, ahol a rendelések és termékek jellegéb®l adódóan a termékeket a határid®höz minél közelebb kell legyártani. A JIT feladatoknál a termék határid®höz képesti koraiságát is bün-tetik, hiszen ilyenkor a terméket tárolni kell és ez költséggel jár, illetve a határid®höz képesti késést is büntetni kell, mert ilyenkor a megrendel® elégedettsége csökken, ami

követi a gyártás rövid távú ütemezése (short term scheduling), a legrövidebb id®in-tervallum a gyártás irányítása (controlling). A hosszú távú tervezés során a vizsgált id®intervallum hónapnyi nagyságú, az optimalizálás célja a prot növelése. Általában a feladat a termékekb®l gyártandó mennyiségek, a rendszer m¶ködési paraméterei-nek a meghatározása. A hosszú távú tervezés eredményét a rövid távú ütemezésnél használjuk fel, ahol a vizsgált id®intervallum általában egy-két hét nagyságúra zsugo-rodik. Ezen a szinten a cél, hogy meghatározzunk egy olyan ütemezést, mely teljesíti a termékek határideit, a hosszú távú tervezésben meghatározott célokat. A rövid távú ütemezés eredményét (pl. egy Gantt-diagramm formájában) használja a gyár-tás irányígyár-tás. Az ütemezés alapján megadhatjuk a gyárgyár-tás végrehajgyár-tásához szükséges folyamat irányítási utasításokat. Bistline és társai még nomabb osztályozást ad-tak az ütemezési feladatokra [10]. Az ütemezési feladatokat az intervallum hossza alapján öt osztályba sorolták. A leghosszabb id®intervallumot a hosszú idej¶ terve-zési feladatok (long range planning) fogják át. Ezekben a feladatokban a hosszútávú tervezési kérdések tartoznak. A tervezési id®intervallum körülbelül kett® vagy több évben mérhet®. A középtávú tervezési feladatokhoz (medium range planning) a lo-gisztikai feladatok tartoznak. Az ilyen feladatok egy, vagy két évnyi id®tartamúak. A rövid idej¶ tervezési feladatok (short range planning) esetén a termelés szükségleteit vizsgálják. A feladatok három-hat hónap id®intervallumúak. Az ütemezési feladatok-ban a berendezésekhez a taszkok hozzárendelése és ütemezése történik. A feladatok kett®-hat hét id®intervallumot fognak át. A legrövidebb id®intervallummal a reaktív ütemezési (reactive scheduling) feladatok rendelkeznek. Itt követelmény az azonnali ütemezési válasz adása, hogy szükség esetén beavatkozhassunk a gyártásba.

Az ütemezési feladatok sokszín¶sége és összetettsége miatt sokfajta szempontot -gyelembe vehetünk a feladatok megfogalmazásakor. Méndez és társai összegy¶jtötték a szakirodalomban gyelembe vett ütemezéshez kapcsolódó különböz® aspektusokat

[53]. A következ® tulajdonságokat vizsgálták az ütemezési feladatoknál.

1. A gyártás topológiája alapján megkülönböztethetünk szekvenciális, vagy tetsz®-leges hálózatokat. A szekvenciális topológia során a berendezések használatának módja alapján job shop és ow shop feladatokkal találkozhatunk.

2. A berendezések taszkhoz hozzárendelési módjai (rögzített, változó) és a be-rendezések egymás után használhatósága (korlátozott, teljes) befolyásolja az ütemezést.

3. Köztes anyag tárolásának módja alapján.

4. Köztes anyag továbbításának módja (azonnali, id®igényes) alapján.

5. Batch mérete (rögzített, változó) alapján.

6. Taszk végrehajtási id® (rögzített, berendezés függ®, batch méretét®l függ®) alap-ján.

7. Igény jellege (határid®, ütemezési horizont) alapján.

8. Váltási id® (sorrendfügg®, sorrendt®l nem függ®, berendezés függ®) alapján.

9. Er®forrás és id® korlátok (m¶szakok, javítási id®) alapján.

10. Költség (berendezés, tárolás, váltás) alapján.

11. Determinisztikus, vagy sztochasztikus ütemezési feladat.

Liaw munkájában hibrid genetikus algoritmust használ open shop ütemezési fel-adatok megoldására [45]. A hibrid módszerben a genetikus algoritmusba integrálja a lokális optimum megtalálására használt tabu keres® algoritmust. Ezzel az ötlettel a genetikus algoritmus keresési tere lecsökken a lokális optimumokat tartalmazó al-térre. A kísérletek alapján a hibrid algoritmus az esetek nagy részében megtalálja a feladatok optimális megoldását.

az NP teljes feladatok osztályába tartozik [44]. Tzafestas bebizonyította, hogy a ru-galmas termel® rendszerek (Flexible Manufactoring System, FMS) ütemezése az NP teljes feladatok osztályába tartozik [97]. Ha az open shop feladat két gépes, akkor lé-tezik polinomiális algoritmus az optimális megoldás megkeresésére, ha a gépek száma több, mint kett®, akkor a feladat NP teljes [25].

Ütemezési feladatok jelent®s részér®l bizonyítható, hogy NP teljesek, azaz más nehéz feladatokkal ekvivalensek. Például az egy gépes növekv® végrehajtási idej¶

taszkokat tartalmazó súlyozott befejezési idej¶ ütemezési feladat NP teljességének igazolását találhatjuk Bachman és társainak munkájában [7]. Az NP teljességet az ütemezési feladat egy másik NP teljes (N3P) feladattá transzformálásával igazolták.

Nott és Lee egy halmaz lefedési feladattá alakították át az eredeti ütemezési feladatot [62].

Az ütemezési feladatokkal ekvivalens az ún. hátizsák rakodási feladat. A hátizsák rakodási feladatnál adottak azs1, s2, ..., sm súlyok és a súlyokhoz tartozóv1, v2, ..., vm értékek, valamint a hátizsákba rakható megengedett maximális b összsúly. A fel-adat, hogy találjunk egy olyan I ⊂ {1,2, ..., m} részhalmazt, melyre a P

i∈Isi b, ugyanakkor a P

i∈Ivi a lehet® legnagyobb. A hátizsák rakodási feladat NP-teljes.

Láda pakolási feladatoknál (bin packing) adottak az s1, s2, ..., sm súlyok, melyek mindegyike 0 si 1 racionális szám, és adott a k > 0 egész szám. A feladat annak eldöntése, hogy a tárgyakat bele lehet-e pakolni legfeljebb k számú egységnyi kapacitású ládába. A láda pakolási feladat is NP-teljes. Azar és Regev a klasszikus láda pakolási feladat egy módosítására (bin stretching) adtak on-line algoritmust, mely láda pakolási feladatban a súlyok minél egyenletesebb ládákba osztása a cél [4].

Ez a láda pakolási feladat ekvivalens az olyan ütemezési feladatokkal, ahol a terhelés minél jobb szétosztása a cél (load balancing).

Általában az ütemezési feladatok felírhatóak egy vegyes egész lineáris/nem li-neáris programozási feladatként (Mixed Integer Linear/Non Linear Programming, MILP/MINLP). Az ütemezési feladatot MILP/MINLP matematikai programozási modellként felírva majd megoldva, a megoldás megkeresése egy NP nehéz feladat.