Others

21 views

Eş Olmayan Paralel Makine Çizelgeleme Problemine VNS ve RVNS Yaklaşımı

Eş Olmayan Paralel Makine Çizelgeleme Problemine VNS ve RVNS Yaklaşımı
of 6
All materials on our website are shared by users. If you have any questions about copyright issues, please report us to resolve them. We are always happy to assist you.
Share
Tags
Transcript
    Eş Olmayan Paralel Makine Çizelgeleme Problemine VNS ve RVNS Yaklaşımı   Özet    Bu çalışma paralel makine çizelgeleme problemi ailesinden eş olmayan paralel makine çizelgeleme problemini ele almaktadır. Her işin, makinebağımlı kurulum zamanları olduğu ve işlerin alt işlere bölünebilir olduğu varsayılmaktadır. Bu problemi çözmek için bir meta -  sezgisel yöntem olan V   NS ve onun bir türevi olan RVNS  yaklaşımlarına dayalı algoritmalar ortayakonulmuştur. Geliştirilen algoritmalar, iş kurulum zamanını e le alan  fakat eş makineler varsayımını kullanan  LSU yaklaşım algoritmasıylakarşılaştırılmış ve ümit verici sonuçlar eldeedildiği gözlemlenmiştir  . 1.   Giriş   Paralel makine çizelgeleme problemi, bir işkümesinin,   aynı işleve sahip bir makine kümesindeişle nmesinin, belirlenen bir optimizasyon kriterine göre çizelgelenmesidir.   Bu problem üzerinde uzunyıllardır çalışılmaktadır. Graham „ın 1969 yılındaortaya koyduğu LPT(Longest Processing Time)kuralı [1] , eş paralel makinelerin çizelgelenmesi problemi için bir performans katsayısı belirtmektedir. 2001 yılında Gupta ve J. Ruiz - Torres‟in ortaya koyduğu LISTFIT algoritması [2], eş paralel makine çizelgelemesinde çağdaş diğer algoritmaların performansını geride bırakmıştır.Fatemi Ghomi ve Ghazvini‟nin ortaya koyduğuPI(Pairwise InterChange) algoritması eş olmayan makinele rin çizelgelenmesi problemine çözümönermiştir  [3] . Algoritma, makineler arasındaçalışma zamanı farkını minimize etmeyeçalışmaktadır. Bu alanda Meta - Sezgisel yaklaşımadayanan çözümler de geliştirilmiştir. Kashan ve Karimi eş paralel makine çizelgelemesi problemiiçin ayrık parçacık sürü optimizasyonu(Discrete PSO) meta- sezgisel yaklaşımına dayanan bir çözüm ortaya koymuştur  [4] . Benzer şekilde Uysalve Şevkli „de eş makine çizelgeleme problemi içinVNS tabanlı bir algoritma ortaya koymuşlardır  [5].Wen, Xu ve Yang heterojen yani eş olmayanmakineler içeren sistemlerde çizelgeleme problemini ele alan, genetik algoritma (GA) ve VNS tabanlı melez bir algoritma ortaya koymuşlardır  [6]. Bu çalışmada ele   aldığımız problem eşolmayan makineli sistemlerde çizelgeleme problemidir. Bu probleme ek olarak işlerin makine bağımlı kurulum ve işleme zamanları olduğukısıdını   varsayıyoruz. Aynı zamanda işlerin, altişlere bölünebilme özelliği olduğunu kabul ediyoruz . Ele aldığımız optimizasyon kriteri ise,sistemde en uzun süre çalışan makinenin çalışmasüresinin minimize edilmesidir. Bu problemintanımı ise “R/split&setup/C max ” şeklinde ifade edilmektedir. Bu problem, bir meta-sezgisel yaklaşım olan VNS ve onun bir türevi olan RVNSyöntemi ile çözülmüştür. Literatürde eş olmayanmakineler üzerinde, işlerin makine bağımlıkurulum zamanları olan, işlerin bölünebilmeözelliği olan ve optimizasyon kriterinin de en uzunsüre çalışan makinenin çalışma süresinin minimize edilmesi olduğu    bir çalışmaya rastlanmamıştır. Busebepten sonuçlar, eş paralel makineçizelgelemesinde, makine kurulum zamanlarını dadeğerlendiren ve aynı optimizasyon kriterine sahipLSU algoritması ile karşılaştırılmıştır.   Bölüm 2‟de paralel makine çizel geleme  problemi genel olarak tanımlanmış, ele alınan problemin detaylı tanım ve notasyonları belirtilmiştir. Bölüm 3‟de VNS ve RVNSyaklaşımları açıklanmış, Bölüm 4‟de ise ortayakoyulan algoritmalardan bahsedilmiştir. Bölüm5‟de deneyler ve karşılaştırmalar ele alınmış,Bölüm 6‟da sonuç çıkarımları belirtilmiştir.   2.   Paralel Makine Çizelgeleme Problemi   2.1.   Problem Tanımı   Paralel makine çizelgeleme problemi, işlerinaynı işleve   sahip bir dizi makine üzerinde,optimizasyon kriterine göre çizelgelenmesidir  [7].  Üzerinde çalıştığımız problemin, yani eşolmayan paralel makinelerin çizelgelenmesi probleminin tanımı ise şu şekilde yapılabilir: n adet bağımsız iş kümesinin J = {j 1 …j n }, m adet eşolmayan paralel makine kümesi M = {M 1 ,…, M m } üzerinde , üretim süresi minimi zasyonu kriterine göre çizelgelenmesidir. Bu çalışmada işlerinmakinelerdeki kurulum zamanları parametresi veişlerin bölünebilme özelliği olduğu varsayılmıştır.Eş paralel makineler için üretim süresinin minimizasyonu NP-Hard kategorisindedir[8]. Buproblemin  polinom zamanda bu çalışmadaüzerinde çalıştığımız probleme çevrilebilmesimümkündür. Bu sebeple çalışmanın kapsamındaki problem de NP-Hard kategorisindedir. Üretim süresi minimizasyonu, sistemdeki enuzun çalışma süresine sahip makinenin işlerini ta mamlama zamanının minimizasyonudur  . Çoğu üretim ortamında işler değişik  büyüklükte parçalara   ayrılabilir. Bu da bir işinaynı anda iki ya da daha fazla paralel makinedeişlenebilmesi anlamına gelmektedir.   Graham ve diğerleri, paralel makineçizelgeleme problemini, makine ortamı, işkarakteristikleri ve optimizasyon kriterine göresınıflandırmıştır  [9] . Bu sınıflandırmaya göreüzerinde çalıştığımız problem   “R/split&setup/C max ” olarak ifade edilebilmektedir  . Burada makine ortamını ifade eden R, eş olmayan maki neler olarak tanımlanmaktadır. İşkarakteristiği [10]‟da kullanıldığı gibi“split&setup” olarak ifade edilmiştir.Optimizasyon kriteri olan üretim süresi, ise C max ileifade edilmektedir. Bu problem için aşağıdaki gibi varsayımlar kullanılmaktadır  [11];      Her iş başlangıç anında uygundur;      Her makinede aynı anda yalnızca bir alt - iş işlenebilir;      Her alt- iş sadece bir makinede işlenebilir;      Eğer bir makinede işlenecek olan alt - iştürü bir önceki alt işten farklı ise, o alt - işmakinede işlenmeden önce bir kurul um işlemi gerekmektedir;      Kurulum zamanları alt işlerin işlenmezamanlarından bağımsızdır.   2.2.   Terminoloji ve Notasyon Çalışılan çizelgeleme problemini ifade etmek için,Shim ve Kim‟in tanımlamış oldukları terminolojikullanılmaktadır  [11]:    İş, bir ürün tipi   için emir miktarı içeren bir üretim emri birimi;      Birim- iş, bir işin en küçük işlenebilir  parçası; bir işe ait birim - işler aynıdır, buna göre aynı makine üzerinde işlenmezamanları aynıdır;      Alt- iş, bir makine üzerinde işlenecek olanaynı işe ait birim işlerin kümesidir;      İş -  bölme, her işin, farklı makinelerde aynıanda bağımsız olarak işlenebilecek olan alt- iş olarak tanımlanan parçalara bölünebilmesidir;      Makine-  bağımlı kurulum zamanı, her işinişleneceği makineye bağlı olarak farklıkurulum zamanlarına sahi p olabilmesidir;    Makine-  bağımlı işlenme zamanı, her işinişleneceği makineye bağlı olarak farklıişlenme zamanlarına sahip olabilmesidir;      Birim-maliyet, Makine M i ‟de işlenen birim işin maliyetidir    Kullanılan notasyonlar;      M, sistemdeki makinelerin kümesi;   makinelerin sayısı m;      J, sistemdeki işlerin kümesi; işlerin sayısı n;    M i , i numaralı makine;      J  j , j numaralı iş;      r  j , j işinin işlenmesi gereken miktarı;      SJ ij , i makinesindeki j alt işi;      P ij , j işinin i makinesinde işlenmesininkurulumu da içeren birim mali yeti;    OrtP  j , j işinin sistemdeki ortalama birimmaliyeti. Aşağıdaki formül ile ifade edilmektedir: mPOrtP mi ji j    1, (1)    X ort , sistemdeki ortalama birim- iş miktarı      MJ i , i makinesindeki işler       PS k  , k komşuluğundaki torba büyüklüğü      PJ, torbada ki işler       C i , i makinesinin çalışma süresi      C ort , sistemin ortalama çalışma süresi   3.   VNS VNS (Değişken Komşuluklu Arama)Mladenovi´c ve Hansen tarafından 1997‟de ortayakonmuştur  [12]. Bu meta-sezgisel kombinetorik  optimizasyon problemlerinin çözümündekullanılmak üzere geliştirilmiştir. Bu meta-sezgiselin ana fikri, arama içerisinde kullanılankomşuluğun sistematik olarak değiştirilmesidir  [13].  procedure VNS x ← İlkDurumaGetir    k ← 1 // Komşuluk İndexi   while not   DurmaKoşulu do   x‟ ← Salla(x,k)   x‟‟ ← YerelArama(x‟) if    (x‟‟ < x) then   x ← x‟‟   k ← 1  e lse   k ← k + 1   if  (k = k  maks ) then   k ←1   end-if end-if end-whileend-procedure   VNS yaklaşımı komşuluk yapıları tabanlıdır.Yerel iyilerde takılıp kalınmasını önlemek için,yaklaşım komşuluk değişimini kullanmaktadır.Komşuluk yapısının kullanılmasının nedenleri [13 ]‟de kısaca açıklanmaktadır:    Bir komşuluk yapısında yerel en iyi bir diğeri için en iyi olmak zorunda değildir.      Bir genel minimum bütün komşuluk yapıları için bir minimum noktasıdır.      Birçok problem için, yerel en iyi bir veya birden fazla komşuluk için birbirinenispeten yakındır.   Genel olarak, bir minimizasyon problem için VNSyöntemi Şekil 1‟de verildiği gibi ifade edilebilir[13]: Şekil 1.   Genel VNS algoritması.   Komşuluk değişimind e , eğer x‟‟, optimizasyon kriterine göre x değerinden daha iyi ise, sisteminyeni durumu x‟‟ haline getirilir ve geçerlikomşuluk olarak ilk komşuluk belirlenir. A ksihalde sistemin geçerli durumu x kalır  ve bir sonraki komşuluğa geçilir  . VNS tabanlı bir  algoritma ilklendirme, komşuluk yapısı, sistem sallama ve yerel arama metot larını belirtmelidir  . 3.1.   Sallama Sistemin komşuluk içerisinde rastgele bir noktaya götürülmesi demektir. Sallama prosedürü,çözüm uzayı içerisindeki farklı noktalara bakıp, yerel iyi n oktalara takılmayı engellemektedir.   3.2.   Yerel Arama Bulunulan noktadan başlanarak ulaşılabilecek en iyi noktanın aranmasıdır.   Yerel arama için dedeğişken komşuluklar kullanılabilmektedir.   3.3.   RVNS RVNS (Reduced VNS  –    İndirgenmiş VNS),VNS‟in yerel arama içermeyen türüdür.   4.   VNS ve RVNS ile Çizelgeleme   Bu çalışmada eş olmayan paralel makinelerinçizelgelenmesi problemi için iki algoritma sunulmaktadır. Bu algoritmalar VNS ve RVNSyaklaşımlarını temel almaktadır. Amaç, her işinher makinede farklı kurulum ve işlenmezamanlarına sahip olabildiği sistemde üretimzamanının minimize edilmesidir.Komşuluk yapısı, sistemin sallanması ve yerelarama prosedürlerinin belirlenmesi gerekmektedir.Sistem için yeni bir durum elde etmek için, işlerinmakineler arasında taşınması denenmektedir. Bunu yapabilmek için bir torba kavramı ortayakonulmuştur. Torba, makineler arasında taşınacak işlerin toplandığı bir yapı olarak kullanılmaktadır.Seçilen işler torbada toplandıktan sonra,makinelere dağıtılırlar. Torbalar komşuluk yapısını    belirler, torba büyüklüğü komşuluğa göredeğişmektedir.İki yerel arama metodu, sistemin üretimsüresini dengelemektedir ve işlerin verimliyerleşimini sağlamaktadır.   4.1.   İlklendirme   Sistemin ilklendirilmesi, işlerin işlenmezamanları değerlendirilerek yapılmaktadır. İş lerlisteden rastgele seçilip o işi   en hızlı işleyecek  makineye atan maktadır. İlklendirme sırasında işi, en erken bitirecek makineye atamak, sistemi bir yerel en iyiye yönlendirecektir, bu sebepten en erken bitirene değil, en hızlı işleyene atanmıştır.   4.2.   Komşuluk Yapısı   Sunulan komşuluk yapısı birim- işlerin bir makineden diğerine taşınması tabanlıdır. Her komşuluk yapısı için çeşitli boyutlarda torbalar tanımlanır. Torba boyutu taşınacak birim - işmiktarını belirtmektedir. Her komşuluk farklı torba  büyüklüklerine sahiptir. Torba büyüklüğünün belirlenmesi için, sistemdekiortalama iş miktarı kullanılmaktadır.Sistemin sallanması için, komşuluklarınkullanmakta oldukları büyüklüklerde paketler oluşturulup sisteme dağıtılmaktadır, böylece yeni bir durum elde edilmektedir. Sunulan algoritmada, makinelerin ve işlerinseçiminde açgözlü (greedy) yaklaşımlar  k  ullanılabilmektedir. Açgözlü seçimlerin özellikleyerel aramanın olmadığı RVNS tabanlı algoritmaiçin daha iyi sonuçlar ortaya çıkaracağıdüşünülmektedir, bu nedenle aç gözlü yöntemler geliştirilmiştir.  procedure Sallamawhile   not TorbaDolu do  M i   ∈ M   ←   İşAlınacakMakineSeç(M)   while notTorbaDolu and   MakinedeİşVar  do  SJ i,j   ∈ MJ i   ← MakinedenİşSeç( MJ i ) TorbayaMümkünMiktardaİşAl( SJ i,j ) end-whileend-whilewhile Tor  badaİşVar  do J i   ∈ PJ   ← DağıtılacakİşSeç( PJ)   M i   ∈ M   ←   İşinDağıtmakİçinMakineSeç(M)   İşiMakineyeAktar(M i , J  j ) end-whileend-procedure   procedure YerelAramawhile not DurmaKriteri do J i , M x , M y ← SistemdenİşSeç(M) if  YA_MaliyetTabanlı thenif  DahaVerimli then İşAktar (M x , M y , J i ) end-if else İşAktar (M x , M y , J i ) end-if end-whileend-procedure Şekil 2. Sistem sallama prosedürü   1.   Torba doldurulurken;a.   Makine seçiminde, en fazla üretimzamanına sahip olan makine seçilir.Bunun sistemin üretim zamanınındengelenmesine yardımcı olacağı beklenmektedir.b.   İş seçiminde, sistemdeki ortalamaişlenme maliyetine göre makinedekiişlenme maliyeti daha büyük olan işseçilir. 2.   Torbadaki işler dağıtılırken, her iş için  a.   İş atandığında üzerindeki tüm işlerle beraber toplam üretim süresi en kısasürecek makine seçilir   b.   İşin alınmış olduğu kaynak makinesine yeniden atanmaması içino makinede işlenme süresine bir cezadeğeri eklenir.   Belirtilen açgözlü yöntemler RVNS tabanlıalgoritma içerisinde, sistem sallama prosedüründekullanılmıştır. Açgözlü yöntemler, algoritmanın yerel en iyileri bulma ihtimalini artırır fakat durumuzayındaki farklı bölgelerin araştırılma ihtimaliniazaltır. Bu yüzden torba doldurulurken kullanılanaçgözlü yöntemler     bir olasılıkla devreye alınmıştır.Ayrıca torbadaki işlerin dağıtılmasında kullanılanyö ntemler, VNS temelli algoritmanın da sistem sallama prosedürü içerisinde k  ullanılmıştır  . 4.3.   Yerel Aramalar Bu çalışmada iş taşıma temelli yerel aramayöntemleri kullanılmıştır. İki ölçüt göz önünde bulundurularak arama yapılmıştır.    Makin e kullanımının dengelenmesi   (Zaman tabanlı)      İşlerin verimli olarak işlenmesi (Maliyet tabanlı)   Şekil 3. Yerel arama prosedürü.   Kullanılan yerel arama algoritması Şekil 3‟deverilmiştir. Burada yer değiştirilecek işin bulunması sırasında işlem süresi en fazla olan makine ile en az olan makine arasında iş aktarımıdenenir. Eğer aktarılacak iş bulunamaz ise hedef makine olarak bir sonraki en az işlem süresi olanmakine seçilir. Eğer kaynak makineden sistemdekihiçbir makineye iş aktarılamıyor ise kaynak  mak  ine değiştirilir, bir sonraki işlem süresi enfazla olan makine seçilir  . 1.    Zaman Tabanlı Yerel Arama   Bu yerel aramanın göz önünde bulundurduğukriter makinelerin toplam işlem süreleridir. Bukritere göre en iyi sonuç tüm makinelerin işlerininaynı anda bitir  mesidir.    İş seçimi; o makine üzerinde işlem zamanı en fazla olan alt- iş seçilir.    Karar; birim- iş hedef makinenin işlemzamanını sistem ortalamasının üzerineçıkarmayacaksa aktarım başlatılır.      Aktarım; hedef makineyi sistem ortalamasınınüzerine çıkaramay acak kadar birim- işaktarılır. (C ort  –  C hedefMak    değerine ne kadar  birim- iş düşerse, o kadar aktarılır)  2.   Maliyet Tabanlı Yerel Arama   Bu yerel aramanın göz önünde bulundurduğukriter sistemin verimliliğidir. Yerel arama işi dahaucuza(kısa zamanda) nerede işleyebileceğine bakar. Bu davranış sistemin toplam işlem zamanınıarttırabilir (C max artabilir.)    İş seçimi ; o makine üzerinde, sistemdeortalama işlem zamanının (OrtP  j ) üzerindeişlenen seçilir.    Karar; kaynak makinede işin işlenme zamanı hedef makinedekinden fazla, yani aktarımdansonra iş daha verimli işlenecek ise   aktarım başlatılır.      Aktarım; kaynak makinedeki alt- iş tümüylehedef makineye aktarılır.  5.   Deneyler Deneylerde kullanılan komşuluk sistemindekitorba büyüklükleri, sistemdeki iş sayısının 0,1‟i ile 0,5‟i arasında değişmektedir  (0,1 * x ort    –  0,5 * x ort ). Her sonuç, ilgili algoritmanın 10 kezçalıştırılmasının ortalamasından elde edilmiştir.Her test 1 dakika çalıştırılmıştır. Açgözlü yaklaşımkatsayısını belirlemek için bazı deney setleriüzerinde   çalışmalar yapılmış ve 0,7 değerininuygun olduğuna karar verilmiştir.   Deneyler 4 ayrı makine kümesi üzerindeçalıştırılmıştır. Makine kümelerinin kurulum veişleme zamanları için ilk olarak her küme içintemel süre değeri tespit edilmiş, sonrasında belir lenen standart sapma değerine uygun olacak şekilde kümedeki makinelere atama yapılmıştır.Makine kümelerinin standart sapma değerleriaşağıdaki gibidir:    Makinelerin eş olduğu küme      Üretim ve kurulum zamanı std. = ortalama zaman * 0,1 (Az Değişken)      Üretim ve   kurulum zamanı std. = ortalama zaman * 0,25 (Orta Değişken)      Üretim ve kurulum zamanı std. = ortalama zaman * 0,35 (Çok Değişken)   Deneyler 2,4 GHz Intel Core2Duo işlemcili,3GB hafızaya sahip Windows Vista işletim sistemiüzerinde gerçekleştirilmiştir. Deney   yazılımı C++dili kullanılarak üretilmiştir.   Deney sonuçlarının detayları Tablo 2‟de   verilmiştir. Bu tabloda 4 ayrı makine kümesi   üzerinde işlenmiş farklı makine/iş kümelerininVNS ve RVNS algoritmaları sonuçlarıgösterilmiştir  . Çalışma   sonuçlarının standart sapma değerle ri VNS tabanlı algoritmanın RVNS tabanlıolana göre daha kararlı çalıştığını göstermektedir.Fakat problem karmaşıklığı arttıkça RVNS tabanlıalgoritmanın daha iyi sonuçlar verdiğigözlemlenmiştir. VNS tabanlı algoritmada yerel arama  bulunduğundan RVNS tabanlı algoritmayagöre aynı sürede daha az döngü çalıştırmaktadır,fakat yerel arama iyi sonuçlar bulmasınısağlamaktadır. İyileşme sağlanan döngülerin sayısıRVNS‟de daha fazladır. Fakat gelişim sayısınınfazla olması sonucun daha iyi olduğunugöstermemektedir.   Problem karmaşıklığı arttıkçason gelişim sağlanan döngünün , toplam döngüsayısına oranı 0,9 „un üstüne çıkmıştır. Bu,algoritmanın sonucu iyileştirmeye devam ettiğinigöstermektedir.   5.1.   LSU Algoritması ile Karşılaştırma   LSU, Monn a ve Potts tarafından geliştirilmiş,eş, paralel makinelerin çizelgelenmesi probleminiçözen bir yaklaşım algoritmasıdır[ 14]. Algoritma makine kurulum zamanlarını da hesabakatmaktadır. Bu algoritmanın en kötü durumda,makine sayısı 3‟den büyük ve 3‟ün katı olankoşullarda, performans katsayısı  M  135  ‟dir(Mmakine sayısı).Geliştirdiğimiz algoritmanın performansınareferans olması açısından VNS tabanlı algoritmayıve LSU algoritmasını   eş makine seti ile çalıştırdık.   LSU algoritmasının perf  ormans katsayısı, makine   sayısı 3‟ün katı olduğu durumlarda geçerliolduğundan, karşılaştırmayı , uygun makine sayısına sahip, eş makineli deney kümesi ilegerçekleştirdik. Geliştirilen algoritma, asıl amacı eşolmayan makine kümeleri olmasına rağmen, eş ma kine kümesinde LSU algoritmasından daha iyisonuçlar elde etmiştir.   Tablo 1.   VNS LSU karşılaştırması.   LSU VNS Fark Fark (%)6m10i 29508 28397 1111 3,776m50i 123709 121176 2533 2,056m100i 235933 235135 798 0,3412m50i 61638 60842 796 1,2912m100i 118975 117812 1163 0,9821m50i 36987 35028 1959 5,321m100i 68141 67763 378 0,5539m50i 20896 19080 1816 8,6939m100i 36979 36889 90 0,24 6.   Sonuçlar ve Gelecek Çalışmalar   Genel olarak  VNS tabanlı algoritmanın ürettiğisonuçların standart sapması, RVNS   tabanlıalgoritmanınkilerden daha düşüktür. Bu da bizeVNS tabanlı algoritmanın daha kararlı çalıştığınıgöstermektedir. Fakat problem karmaşıklığı   arttıkça RVNS tabanlı algoritmanın daha iyisonuçlar verdiği gözlemlenmiştir. LSUalgoritmasıyla karşılaştırma, geliştirdiğimizyöntemin gelecek çalışmalar açısından ümit vaatettiğini göstermektedir.   Algoritma performansını daha iyi ölçebilmek adına literatürdeki ver  i kümeleri ilekarşılaştırmalar planlanmaktadır. Ayrıcaçalışmada kullanılan veri   kümelerinin optimal sonuçlarına dair araştırmalarımız da sürmektedir.   7.   Kaynaklar [1]   R. L. Graham, Bounds on multiprocessor timinganomalies, SIAM Journal of Applied Mathematics,17, 416  –  429, 1969 [2]   Gupta, Ruiz-Torres, A LISTFIT heuristic forminimizing makespan on identical parallelmachines, Production Planning & Control, 2001
Advertisement
Related Documents
View more
Related Search
We Need Your Support
Thank you for visiting our website and your interest in our free products and services. We are nonprofit website to share and download documents. To the running of this website, we need your help to support us.

Thanks to everyone for your continued support.

No, Thanks