به مدار آوردن نیروگاه‌ها با یک روش ابتکاری مبتنی بر الگوریتم تجمع زنبور عسل

نوع مقاله: مقاله علمی فارسی

نویسندگان

1 دانشجوی کارشناسی‌ارشد، دانشکده فنی و مهندسی - دانشگاه بیرجند - بیرجند - ایران

2 استادیار، دانشکده فنی و مهندسی - دانشگاه بیرجند- بیرجند - ایران

چکیده

به مدارآوردن نیروگاه‌ها یکی از مسائل مهم در بهره‌برداری از سیستم‌های قدرت است که با توجه به محدودیت‌ها و پارامترهای زیاد مطرح در آن، از پیچیدگی بالایی برخوردار است. در این مقاله یک روش جدید مبتنی بر الگوریتم بهینه‌سازی تجمع زنبور عسل برای حل مسأله‌ به مدار آوردن نیروگاه‌ها ارائه شده است که در آن از روش‌های کدبندی عدد صحیح (برای برآوری محدودیت‌های حداقل زمان روشن/ خاموش) و کدبندی باینری (برای برآوری قید ذخیره‌ چرخان) استفاده شده است. عدم استفاده از روش مرسوم ضرایب جریمه در برآوری قیود مسأله، از دیگر مزایای الگوریتم پیشنهادی است که از ترکیب روش‌های باینری و صحیح نتیجه شده است. با استفاده از الگوریتم پیشنهادی به خوبی می‌توان هزینه‌ی کل به مدار آوردن نیروگاه‌ها را کمینه کرد. نتایج شبیه‌سازی و مطالعات عددی گویای همگرایی بهتر الگوریتم پیشنهادی در مقایسه با سایر روش‌های موجود در این زمینه است.

کلیدواژه‌ها


عنوان مقاله [English]

Unit Commitment Using a Heuristic Method Based on Artificial Bee Colony Optimization Algorithm

نویسندگان [English]

  • Arsalan Najafi 1
  • Mohsen Farshad 2
  • Hamid Falaghi 2
1 1Department of electrical engineering, Faculty of Engineering, University of Birjand, Birjand, Iran
2 Department of electrical engineering, Faculty of Engineering, University of Birjand, Birjand, Iran
چکیده [English]

Unit commitment is one of the main problems in power systems operation and since there are plenty of constraints and parameters it is too complicated. In this paper, a new method based on artificial bee colony algorithm has been proposed to solve the problem of unit commitment. In the proposed method, a novel coding approach is presented which uses integer numbers (for satisfying minimum up/down time constraints) and binary numbers (for satisfying spinning reserve constraint). One of the advantages of the proposed coding approach is elimination of using penalty factors in the optimization process to constraints handling. The total cost of unit commitment can be truly minimized using the proposed algorithm. In comparison with other existing methods in this regard, the simulated results and numerical studies show better convergence of the proposed algorithm.
 

کلیدواژه‌ها [English]

  • Artificial Bee Colony
  • Power System Operation
  • Unit Commitment
  • Optimization

مسأله‌ به مدار آوردن نیروگاه‌ها1 نقش مهمی در بهره‌برداری اقتصادی از سیستم‌های قدرت دارد. مشخص کردن زمان مناسب ورود یا خروج نیروگاه‌ها به مدار از بین حالت‌های ممکن، صرفه‌جویی عظیم اقتصادی در پی خواهد داشت. همچنین ایجاد ذخیره‌ چرخان مناسب در سیستم قدرت، سیستم را از نظر امنیت در وضعیت مطلوبی نگه می‌دارد. مسأله UC در بر گیرندهی برنامه‌ روزانه‌ کار نیروگاه‌هاست که در آن باید هزینه‌های بهره‌برداری و روشن/ خاموش کردن نیروگاه‌ها کمینه شوند، در حالی که مجموعه‌ محدودیت‌های حاکم رعایت شوند. این مسأله حاوی متغیرهای گسسته و پیوسته است که وضعیت روشن/خاموش بودن نیروگاه‌ها و نیز توزیع اقتصادی بار میان واحد‌ها را نشان می‌دهد. 

تا قبل از سال 1960 میلادی، مسأله‌ UC فقط به بحث توزیع اقتصادی بار محدود می‌شد. در آن زمان، روش شناخته شده کوهن- تاکر وضعیت اقتصادی بهینه را مشخص می‌کرد. هنگامی که این شرایط برآورده می‌شد، کلیه‌ی نیروگاه‌هایی که در مدار بودند، به غیر از نیروگاه‌هایی که به صورت مؤثر با حداکثر توان در شبکه بودند، با توجه به میزان سوختشان بارگذاری می­شدند. بر مبنای روش کوهن- تاکر چندین راه حل برای مسأله‌ UC پایه­گذاری گردید که از جمله آن­ها می‌توان ابداع روش تکرار لامبدا و روش گرادیان برای نیروگاه‌های حرارتی را نام برد ]1[.

در یک دسته­بندی کلی، روش‌های موجود در حل مسأله UC را می‌توان به دو دسته‌ی تحلیلی و هوشمند تقسیم کرد. از جمله روش‌های تحلیلی در حل مسأله UC می‌توان به روش معروف و قدیمی لاگرانژ اشاره کرد ]2[. در ]3-26[، کاربرد روش‌های متنوع هوشمند در حل مسأله UC گزارش شده‌اند. در ]3 و 4[ روش‌هایی مبتنی بر کدبندی صحیح ارائه و از ضرایب جریمه برای برآوری بعضی از قیود استفاده شده است. در ]5 و 6[ از روش‌های کدبندی باینری برای حل مسأله UC استفاده شده است. همچنین می­توان به کاربرد الگوریتم­های تکاملی کوانتومی ]7[، باکتریال ]8[، ژنتیک ]9[، برنامه‌ریزی تکاملی ]10[، جهش قورباغه ]11[، سرد شدن تدریجی فلزات ]12[، تجمع مورچگان ]13[ و دیگر روش‌های هوشمند ]14-24[ برای حل مسأله UC اشاره کرد. علاوه بر این در ]25[ از ترکیب تکنیک‌های ریاضی و هوشمند برای حل مسأله UC استفاده شده است.

در ]26[ روشی جدید مبتنی بر الگوریتم بهینه‌سازی تجمع زنبور عسل توسط نویسندگان برای حل مسأله UC ارائه شده است. در روش فوق از شیوه کدبندی صحیح برای به مدار آوردن نیروگاه‌ها استفاده شده است؛ ضمن آن که برآوری برخی از قیود مسأله با کاربرد روش مرسوم ضرایب جریمه محقق شده است.

در این مقاله روشی جدید مبتنی بر الگوریتم بهینه‌سازی تجمع زنبور عسل برای حل مسأله UC پیشنهاد شده است که در آن با بکارگیری شیوه‌ای نوین در کدبندی پاسخ‌های مسأله به صورت صحیح و باینری، قیود مسأله به صورت کارا و بی‌نیاز از کاربرد ضرایب جریمه رعایت شده است. شبیه‌سازی‌های انجام گرفته بر روی چند سیستم نمونه گویای برتری روش پیشنهادی نسبت به دیگر روش‌های موجود در همگرایی به جواب بهینه است.

ساختار ادامه مقاله بدین شرح است: در بخش 2، فرموله­بندی مسأله UC ارائه شده است. در بخش ‌3 الگوریتم بهینه­سازی تجمع زنبور عسل تشریح و در بخش ‌4 جزئیات نحوه بکارگیری آن در حل مسأله مورد نظر ارائه شده است. در بخش ‌5 نتایج عددی حاصل از کاربرد روش پیشنهادی بر روی سه مثال نمونه با تعداد واحدهای مختلف و ذخیره چرخان‌های متفاوت ارائه و با دیگر روش‌ها مقایسه شده است و در نهایت مقاله با نتیجه­گیری در بخش 6 خاتمه می­یابد.

 

فرمول‌بندی مسأله

هزینه بهره‌برداری در مسأله UC برابر با مجموع هزینه­های سوخت، راه‌اندازی و خاموش کردن واحدهای نیروگاهی‌ است که در یک بازه‌ی زمانی لازم است کمینه گردند. بنابراین، می‌توان گفت ]10[:

(1)

 

در رابطه‌ بالا  هزینه سوخت واحد نیروگاهی iام،  توان تولیدی واحد i در ساعت tام، وضعیت فعالیت یا عدم‌ فعالیت واحد نیروگاهی iام در ساعت tام است که دارای دو حالت 0 یا 1 است، هزینه روشن کردن،  هزینه خاموش کردن ژنراتور، کل دوره برنامه‌ریزی و تعداد واحدهای نیروگاهی را نشان می‌دهد. هزینه سوخت، قسمت اصلی مجموع هزینه‌ها را در بر می‌گیرد و هزینه‌های راه‌اندازی و خاموش کردن صرفاً هزینه‌هایی هستند که در هنگام راه‌اندازی و خاموش کردن وجود دارند. هزینه خاموش کردن مقدار بسیار کمی است و عموماً در تحقیقات انجام شده از آن صرف‌نظر شده است. هزینه‌های راه‌اندازی در قالب ریاضی به صورت رابطه (2) بیان می‌شود ]3[:

 

(2)

 

 

که در آن، هزینه راه‌اندازی گرم،  هزینه‌ی راه‌اندازی سرد،  میزان زمانی که مشخص کننده صرفه اقتصادی واحد نیروگاهی برای راه‌اندازی گرم یا سرد است و همچنین  حداقل زمان مجاز فعالیت واحد iام است.    

مجموعه قیودی که در این مسأله باید در نظر گرفته شود، به صورت زیر است:

  • محدودیت حداقل زمان روشن و خاموش کردن که بیان کننده حداقل زمانی است که یک سیستم باید روشن یا خاموش باشد تا بتواند تغییر وضعیت بدهد:

(3)

 

که در آن، و  به ترتیب بیانگر زمان روشن بودن، زمان خاموشی و حداقل زمان مجاز فعالیت واحد iام هستند.

  • محدودیت تعادل بار که تضمین کننده تولید توان به میزان تقاضا است:

(4)

 

که در آن  بیانگر میزان بار تقاضا در ساعت tام و نیز کل دوره فعالیت است.

  • محدودیت میزان تولید واحد‌های تولیدی که به صورت زیر بیان می‌شود:

(5)

 

که در آن و  به ترتیب حداقل و حداکثر توان مجاز واحد تولیدی  iام است.

  • محدودیت ذخیره چرخان که بیانگر میزان ذخیره بالقوه واحد‌های تولیدی است که هنوز به تولید نرسیده ولی می‌توانند حداکثر طی مدت 10 دقیقه وارد مدار شوند. وجود ذخیره چرخان برای حفظ امنیت سیستم برای مقابله با برخی حوادث، از جمله خروج ناگهانی ژنراتور‌ها و یا خطوط الزامی است. این قید را می‌توان به صورت ریاضی در قالب زیر بیان کرد:

(6)

 

که در آن  میزان ذخیره چرخان در ساعت tام است.

 

الگوریتم بهینه‌سازی تجمع زنبور عسل

الگوریتم تجمع زنبور عسل2 برای اولین بار در سال 2005 توسط Karaboga معرفی شد ]27[. این الگوریتم از شبیه‌سازی رفتار زنبورهای عسل در طبیعت به دست آمده و یکی از روش‌های بهینه‌سازی مبتنی بر جمعیت است. در این روش اجتماع زنبورها به سه گروه زنبورهای کارگر، ناظر و زنبورهای مأمور اکتشاف تقسیم می‌شود. زنبورهای کارگر به صورت تصادفی به دنبال منابع غذایی می‌گردند و خود را به اشتراک می‌گذارند. در این میان، زنبورهای ناظر از بین این‌ منابع غذایی، با توجه به تجربه و موقعیت خود، منبع غذایی مناسب را انتخاب می‌کنند، در حالی‌که زنبورهای مأمور اکتشاف، منابع غذایی را کاملاً به صورت تصادفی و بدون در نظر گرفتن تجربه بر می­گزینند. هر منبع غذایی انتخاب شده بیانگر یک جواب ممکن در حل مسأله است. میزان شهد موجود در منابع غذایی بیانگر میزان برازندگی جواب مسأله است. تعداد زنبورهای کارگر مساوی با تعداد زنبورهای ناظر و برابر با تعداد جمعیت مسأله است. در این الگوریتم ابتدا جمعیت اولیه به صورت تصادفی و به تعداد NS تولید شده  که NSبیانگر تعداد منابع غذایی و برابر با تعداد زنبورهای‌ کارگر است. هر جواب   یک بردار n بعدی است. سپس این جمعیت وارد فرآیند جستجوی زنبورهای کارگر، ناظر و مأموران اکتشاف می‌شود.

در الگوریتم ABC تابع برازش به صورت زیر تعریف می‌شود:

(7)

 

که در آن  مقدار تابع هدف جواب ام و  برازندگی جواب ام پس از تولید جواب‌های جدید است. زنبورهای ناظر منبع غذایی را با احتمال  انتخاب می‌کنند که در آن:

(8)

 

جواب‌های جدید به صورت زیر از جواب‌های قبلی تولید می‌شوند:

(9)

 

در رابطه فوق  عددی است تصادفی که از بازه  انتخاب می‌شود.  نیز عددی تصادفی در بازه  است.

موقعیت‌های جدید، پس از تولید و برازش، با موقعیت­های قدیم مقایسه شده و اگر دارای کیفیت بهتری (شهد بیشتر) باشند، جایگزین آنها خواهند ‌شد. ضمناً اگر موقعیتی بهبود پیدا نکرد، آن منبع غذایی متروکه اعلام و با منبع جدیدی که توسط زنبورهای اکتشاف مطابق رابطه‌‌ی زیر معرفی می‌شود، جایگزین خواهد شد:

(10)

 

که در آن  و  حد پایین و بالای متغیر  و  نیز عددی تصادفی بین صفر و یک هستند ]27,29[.

پس از این که جمعیت جدید تولید و برازش شدند، از بین جمعیت جدید عمل انتخاب صورت می‌گیرد. این اعمال تا زمانی که تعداد تکرارهای الگوریتم به پایان برسد، ادامه خواهد داشت.

 

حل مسأله UC مبتنی بر الگوریتم تجمع زنبور عسل

به مدار آوردن نیروگاه‌ها مسأله‌ای غیر خطی است و به دلیل دارا بودن قیود زیاد از پیچیدگی بسیار بالایی برخوردار است. به همین دلیل، روش‌های معمول با مشکلات زیادی در حل این مسأله روبه رو هستند و عموماً یا قادر به حل این مسأله نیستند و یا با سختی‌های زیادی در در حل آن مواجه هستند. بنابر دلایل ذکر شده در این مقاله از الگوریتم بهینه‌سازی تجمع زنبور عسل استفاده شده است که برای حل مسائل غیر خطی بسیار کارا است. همچنین در این مقاله روشی جدید برای حل مسأله‌ UC در نظر گرفته شده است، که ترکیبی از روش‌های کدبندی باینری و صحیح است. در این روش تعداد سیکل‌های روشن/ خاموش واحدها 24 در نظر گرفته شده است چراکه با محدود کردن تعداد سیکل‌ها به عدد 5 (که در کارهای قبلی مرسوم بود) نمی‌توان در طی برنامه به صورت آزادانه واحدها را روشن و یا خاموش کرد ]26[. براساس این روش تولید جمعیت اولیه، تولید جواب‌های جدید و برآورده کردن حداقل زمان روشن / خاموش به صورت صحیح و برآورده شدن محدودیت ذخیره‌ی چرخان و خارج کردن ظرفیت‌های اضافه به صورت باینری کد می‌شوند. فلوچارت روش پیشنهادی در شکل (1) نشان داده شده است.

 

تولید جمعیت اولیه

در این مقاله، نحوه‌ی تولید جمعیت اولیه و سپس ترکیب آن‌ها به گونه‌ای است که کاربرد فاکتور جریمه در خصوص عدم برآوری قیود حداقل زمان روشن/ خاموش را از بین می‌برد. طی این فرآیند، جمعیت اولیه به صورت اعدادی صحیح تولید می­شوند. برای نشان دادن میزان ساعت روشن یا خاموش به ترتیب از اعداد صحیح مثبت و منفی استفاده شده است، همچنین عدد صفر به منزله‌ی تمام شدن دوره فعالیت واحد در 24 ساعت است ]11[. با توجه به اینکه تعداد سیکل‌ها حداکثر برابر با تعداد ساعت‌های برنامه‌ریزی (در اینجا 24) در نظرگرفته شده است، اعداد مثبت و منفی تولید شده به میزانی است که مجموع قدرمطلق آنها 24 شود و قاعدتاً مابقی‌ سیکل‌ها صفر فرض خواهند شد. در شکل (2) یک نمونه جواب از جمعیت اولیه، شامل وضعیت روشن / خاموش N واحد نیروگاهی طی یک دوره زمانی 24 ساعته نشان داده شده است؛ ضمن اینکه برای شفافیت بیشتر موضوع، جزئیات کامل سیکل زمانی روشن / خاموش واحد 1 در قسمت پایین شکل به صورت باز شده به تصویر کشیده شده است.

برتری این کد نسبت به روش‌های تولید باینری در این است که خیلی از حالت‌های ناممکن در تولید جمعیت اولیه حذف می‌شوند. بر همین اساس، روش زیر برای تولید جمعیت اولیه معرفی می‌شود.

برای تولید مقدار سیکل اول از روش زیر استفاده می‌شود:

(11)

 

که در آن شرایط اولیه واحد iام است. برای سیکل­های بعدی به این صورت عمل می‌شود:

 

 

 

شکل (1): فلوچارت روش پیشنهادی

 

 

شکل (2): یک نمونه جواب از جمعیت اولیه شامل وضعیت روشن / خاموش N واحد نیروگاهی طی یک دوره زمانی 24 ساعته

 

 

اگر  باشد، سیکل بعدی یعنی  روشن می‌شود:

(12)

 

و اگر  باشد، سیکل بعدی یعنی  خاموش می‌شود:

(13)

 

در روابط بالا  طبق رابطه‌ زیر به دست می‌آید:

(14)

 

همان طور که قبلاً ذکر شد، مجموع قدرمطلق سیکل‌ها باید برابر با تعداد ساعت­های برنامه‌ریزی (مثلاً 24 ساعت) باشد. بعد از تولید جمعیت­های جدید این احتمال وجود دارد که مجموع حالت‌های روشن / خاموش متفاوت از 24 شود. به همین دلیل، مقدار اضافه‌تر یا کمتر از 24 به صورت نسبی بین جواب‌های جدید اضافه یا از آن‌ها کم خواهد ‌شد.

تابع  اعداد تصادفی بین صفر و یک تولید می‌کند. در نتیجه جمعیت جدید تولید شده صحیح نیستند، در حالی که در مسأله UC  باید اعداد صحیح باشند. به همین دلیل، جمعیت تولید شده باید گرد شود. پس از گرد شدن جواب‌ها مجدداً این احتمال وجود دارد که مجموع حالت‌های خاموش یا روشن بیشتر از 24 یا کمتر شود  که در این‌ صورت این اختلاف را در آخرین سیکل غیر صفر تأثیر داده تا مجموع کماکان برابر زمان برنامه‌ریزی (24 ساعت) باشد ]11[.

 

 

4-2- برآوری قید ذخیره‌ چرخان

در حل باینری برای هر واحد نیروگاهی طی شبانه‌روز 24 عدد باینری صفر یا یک وجود دارد که عدد صفر نشان دهنده خارج از مدار بودن و عدد یک بیانگر در مدار بودن واحد است. بر این اساس و برای ساعت‌هایی که در آن‌ها میزان ذخیره‌ چرخان رعایت نشده باشد، واحدهای خاموش طبق فهرست حق تقدم (بر حسب تولید ارزان‌تر)، وارد مدار می‌شوند تا زمانی که میزان ذخیره‌ چرخان در هر ساعت برآورده شود ]23[.

 

برآوری قیود حداقل زمان روشن/ خاموش

پس از تولید جمعیت باید قیدهای حداقل زمان روشن/ خاموش در همه سیکل‌های زمانی بررسی شوند و در صورتی که این قیود نقض شده باشند ترمیم گردند. طبق شکل (3) برای هر واحد نیروگاهی محدوده­های مجاز و ممنوعه‌ای وجود دارد که روش پیشنهادی حالات غیر مجاز را به حالات مجاز تبدیل می­کند. این کار به روش زیر انجام می‌شود ]4[:

برای برآوری حداقل زمان روشن اگر  آنگاه داریم:

(15)

 

به صورت مشابهی برای برآوری حداقل زمان خاموش اگر  آنگاه:

 (16)

 

 بدیهی است که در سیکل آخر اگر زمان باقیمانده کمتر از حداقل زمان روشنایی یا خاموشی واحد شود آنگاه رابطه‌ زیر را خواهیم داشت:

 (17)

 

 

 

شکل (3): موقعیت محدوده­های مجاز و ممنوعه برای حداقل زمان روشنایی و خاموشی ]4[

 


از بین بردن ظرفیت اضافه

همان طور که در بخش 4-2 ذکر شد، در روش پیشنهادی قید ذخیره‌ی چرخان با وارد کردن واحدهای جدید به مدار برآورده می‌شود. به همین دلیل، امکان به وجود آمدن ظرفیت اضافه (و لذا افزایش هزینه‌ تولید) در سیستم وجود دارد. برای از بین بردن ظرفیت‌های اضافه در هر ساعت، طبق فهرست حق تقدم، واحد‌های گرانتر از مدار خارج خواهند شد. این کار تا جایی ادامه می­یابد که واحدهای فعال بتوانند بار و ذخیرهی چرخان را تأمین کرده و ضمناً قیود روشن / خاموش نقض نشوند ]23[.

 

توزیع اقتصادی بار

پس از خارج کردن ظرفیت‌های اضافه از مدار، طبق روش کلاسیک تکرار ]30[، توزیع اقتصادی بار انجام می­گیرد. در این مرحله میزان توان تولیدی برای هر واحد نیروگاهی در مدار در هر ساعت مشخص می­شود. میزان توان تولید شده از طریق توزیع اقتصادی بار، میزان هزینه تولید را طبق رابطه‌ زیر مشخص خواهد کرد:

(18)

 

که در آن ،  و  ضرایب هزینه سوخت واحد iام هستند.

 

مطالعات عددی ونتایج

در این قسمت کارایی الگوریتم پیشنهادی در حل مسأله‌ی UC، با ارائه سه مثال نمونه و سپس مقایسه نتایج با سایر الگوریتم‌های موجود نشان داده شده است. شبیه‌سازی‌ها در کامپیوتری پنتیوم 4 با پردازشگر 2 گیگاهرتز  و حافظه 3 مگابایت انجام گرفته است.

مثال 1)

 این مثال دارای 10 واحد نیروگاهی است و از مرجع ]11[ گرفته شده است. مشخصات این واحد‌ها و میزان تقاضای بار 24 ساعته در قسمت ضمیمه آمده است. میزان ذخیره‌ی چرخان در این مثال 10% از بار هر ساعت در نظر گرفته شده است.

 نتایج 50 اجرای متوالی الگوریتم پیشنهادی بازای جمعیت­های مختلف در جدول (1) و نتایج مقایسه­ای آن با سایر روش‌ها در جدول (2) آورده شده است. نتایج جدول (1) نشان می‌دهد که روش پیشنهادی با جمعیت اولیه‌ی 30، 50 و 70 همواره به یک جواب دست یافته است که این مهم بیانگر کارایی الگوریتم پیشنهادی در حل مسأله‌ی UC است. همچنین با جمعیت اولیه 10 به جواب بهینه مورد نظر دست یافته ولی در تمامی اجراهای برنامه با این جمعیت اولیه، به جواب بهینه همگرا نشده است در حالی که با افزایش تعداد جمعیت همواره به یک عدد همگرا شده است. نمودار همگرایی الگوریتم پیشنهادی با جمعیت‌های مختلف در شکل (4) نشان داده شده است. نتایج کامل اجرای روش پیشنهادی، شامل: برنامه 24 ساعته فعالیت واحدها، توزیع اقتصادی توان، میزان ذخیره چرخان در هر ساعت و بالاخره هزینه‌های راه‌اندازی و بهره­برداری هر ساعت در جدول (3) آمده است.

اطلاعات مندرج در جدول (2) نشان می‌دهند که این الگوریتم  به جواب64/563937 دست یافته، در حالی که هیچ کدام از الگوریتم‌های ذکر شده به این جواب نرسیده‌اند. افزون بر این، الگوریتم پیشنهـادی در مقایسه با روش‌های صرفاً باینری، Discrete binary differential evolutionary  ، Improved binary particle swarm optimization و روش‌های کدبندی با اعداد صحیح، Integer coded genetic algorithm، به جواب بهتری دست یافته است.

 

 

 

شکل (4): نمودار همگرایی با جمعیت‌های مختلف در مثال 1

 

جدول (1): نتایج اجرای روش پیشنهادی با جمعیت‌های مختلف در مثال1

زمان (ثانیه)

بدترین جواب ($)

میانگین جواب‌ها ($)

بهترین جواب ($)

جمعیت اولیه

43.72

567310.76

564369.31

563937.64

10

133.74

563937.64

563937.64

563937.64

30

221.25

563937.64

563937.64

563937.64

50

310.00

563937.64

563937.64

563937.64

70

 

 

جدول (2): مقایسه‌ی نتایج الگوریتم پیشنهادی با سایر روش‌ها در مثال 1

روش

بهترین جواب ($)

Lagrange relaxation [2]

565825

Integer coded genetic algorithm [3]

566604

Simulated annealing [12]

565824

Genetic algorithm [9]

565825

Ant colony search algorithm [13]

564049

Discrete binary differential evolutionary [6]

563977

Improved quantum evolutionary algorithm [23]

563977

Improved binary particle swarm optimization[5]

563977

Evolutionary programming [10]

563977

Extended priority list [18]

563977

Quantum evolutionary algorithm [7]

563938

Artificial bee colony

563938

 

 


مثال 2)

در این مثال، همان 10 واحد نیروگاهی مثال 1، البته با ملاحظه 5% ذخیره‌ چرخان مورد توجه قرار گرفته است. نتایج 50 اجرای متوالی الگوریتم پیشنهادی با جمعیت‌های مختلف در جدول (4) نشان داده شده است. نتایج مندرج در این جدول نشان می‌دهد که الگوریتم پیشنهادی حتی با تعداد جمعیت اولیه‌ کم نیز به جواب بهینه دست یافته است ولی با افزایش تعداد جمعیت تعداد دفعات رسیدن به جواب بهینه افزایش پیدا کرده است که نهایتاً این افزایش جمعیت موجب بهبود میانگین اجراهای مختلف شده است. علاوه براین، از مقایسه‌ نتایج این جدول با جدول (1) می‌توان به این نتیجه رسید که در نظر گرفتن 5% ذخیره‌ی چرخان به جای 10%، باعث افزایش تعداد حالات ممکن برای جواب مسأله می‌شود و در واقع، دلیل همگرا نشدن الگوریتم همواره به یک عدد در این مثال، افزایش تعداد حالات ممکن نسبت به مثال قبل (10% ذخیره چرخان) است. همچنین نمودار همگرایی این الگوریتم با تعداد زنبورهای 10، 30، 50 و 70 در شکل (5) موجود است. نتایج مقایسه‌ای مندرج در جدول (5) گویای این واقعیت است که الگوریتم پیشنهادی توانسته است به جواب بهتری نسبت به الگوریتم‌های Genetic algorithm، Adaptive particle swarm optimization، Two-stage genetic based technique، Improved particle swarm optimization، Three stage modification process دست یابد. افزون بر این، مشاهده می­شود که برخی از این روش‌ها به جواب‌هایی بسیار دورتر از جواب بهینه همگرا شده­اند. نتایج کامل اجرای روش پیشنهادی، شامل: برنامه 24 ساعته فعالیت واحدها، توزیع اقتصادی توان، میزان ذخیره‌ چرخان در هر ساعت و بالاخره هزینه‌های راه­اندازی و بهره‌برداری هر ساعت در جدول (6) آمده است.


 

جدول (3): نحوه‌ توزیع توان در 24 ساعت در مثال 1 (10% ذخیره‌ چرخان )

ساعت

واحد

هزینه

راه‌اندازی ($)

هزینه بهره‌برداری ($)

ذخیره‌ی

چرخان (%)

1

2

3

4

5

6

7

8

9

10

1

455

245

0

0

0

0

0

0

0

0

0

13683.12

30

 

2

455

295

0

0

0

0

0

0

0

0

0

14554.5

21.33

 

3

455

370

0

0

25

0

0

0

0

0

900

16809.45

26.12

 

4

455

455

0

0

40

0

0

0

0

0

0

18597.68

13.55

 

5

455

390

0

130

25

0

0

0

0

0

560

20020.02

20.2

 

6

455

360

130

130

25

0

0

0

0

0

1100

22387.04

21.09

 

7

455

410

130

130

25

0

0

0

0

0

0

23261.99

15.82

 

8

455

455

130

130

30

0

0

0

0

0

0

24150.32

11

 

9

455

455

130

130

85

20

25

0

0

0

860

27251.07

15.15

 

10

455

455

130

130

162

33

25

10

0

0

60

30057.54

10.85

 

11

455

455

130

130

162

73

25

10

10

0

60

31916.07

10.83

 

12

455

455

130

130

162

80

25

43

10

10

60

33890.15

11.47

 

13

455

455

130

130

162

33

25

10

0

0

0

30057.54

10.85

 

14

455

455

130

130

85

20

25

0

0

0

0

27251.07

15.15

 

15

455

455

130

130

30

0

0

0

0

0

0

24150.32

11

 

16

455

310

130

130

25

0

0

0

0

0

0

21513.64

26.85

 

17

455

260

130

130

25

0

0

0

0

0

0

20641.83

33.2

 

18

455

360

130

130

25

0

0

0

0

0

0

30057.54

21.09

 

19

455

455

130

130

30

0

0

0

0

0

0

27251.07

11

 

20

455

455

130

130

162

33

25

10

0

0

490

30057.54

10.86

 

21

455

455

130

130

85

20

25

0

0

0

0

27251.07

15.15

 

22

455

455

0

0

145

20

25

0

0

0

0

22735.54

12.45

 

23

455

425

0

0

0

20

0

0

0

0

0

17645.36

10

 

24

455

345

0

0

0

0

0

0

0

0

0

15427.43

13.75

 

563937.644هزینه کل:

4090

559847.6

 

 

                                 

 


مثال 3)

براینشان دادن توانایی روش پیشنهادی، اجرای آن بر روی یک مثال با ابعاد بزرگتر که دارای 20 ژنراتور است، انجام و نتایج آن گزارش شده است. این مثال با تکرار اطلاعات واحدهای مثال 1 و با دو برابر کردن میزان بار تقاضا به دست آمده است.

 

 

 

شکل (5): نمودار همگرایی با جمعیت‌های مختلف در مثال 2

 

 

نتایج 50 اجرای متوالی الگوریتم پیشنهادی با جمعیت‌های مختلف در جدول (7) و نتایج مقایسه­ای آن با سایر روش‌ها در جدول (8) آورده شده است. نتایج ذکر شده نشان می‌دهند که الگوریتم پیشنهادی تونسته است به جواب بهینه54/1124293 دست یابد، در حالی که هیچ کدام از روش‌های ذکر شده‌ دیگر موفق به دست‌یابی به پاسخ مزبور نبوده است. این امر برتری و کارایی روش پیشنهادی را در حل مسأله نشان می‌دهد.


 

جدول (4): نتایج اجرای روش پیشنهادی با جمعیت‌های مختلف در مثال2

زمان (ثانیه)

بدترین جواب ($)

میانگین جواب‌ها ($)

بهترین  جواب ($)

جمعیت اولیه

50.82

558681.06

558081.60

557563.41

10

120.25

558358.37

557887.07

557563.41

30

199.50

557991.83

557687.98

557563.41

50

253.50

557991.83

557658.82

557563.41

70

 

جدول (5): مقایسه نتایج الگوریتم پیشنهادی با سایر روش‌ها در مثال 2

روش

بهترین جواب ($)

Genetic algorithm [9]

570871

Adaptive particle swarm optimization [20]

561586

Two-stage genetic based technique [21]

564450

Improved particle swarm optimization [22]

558114

Three stage modification process [24]

557676.81

Artificial bee colony

557563.41

 

جدول (6): نحوه‌ توزیع توان در 24 ساعت در مثال 2 (5% ذخیره‌ چرخان)

ساعت

واحد

هزینه راه‌اندازی ($)

هزینه بهره‌برداری ($)

ذخیره چرخان (%)

1

2

3

4

5

6

7

8

9

10

1

455

245

0

0

0

0

0

0

0

0

0

13683.12

30

2

455

295

0

0

0

0

0

0

0

0

0

14554.5

21.33

3

455

395

0

0

0

0

0

0

0

0

0

16301.88

7.05

4

455

365

0

130

0

0

0

0

0

0

560

18637.69

9.47

5

455

390

0

130

25

0

0

0

0

0

900

20020.02

20.2

6

455

455

0

130

60

0

0

0

0

0

0

21860.27

9.27

7

455

410

130

130

25

0

0

0

0

0

1100

23261.99

15.82

8

455

455

130

130

30

0

0

0

0

0

0

24150.32

11

9

455

455

130

130

110

20

0

0

0

0

340

26588.96

8.61

10

455

455

130

130

162

43

25

0

0

0

520

29365.94

6.93

11

455

455

130

130

162

80

25

13

0

0

60

31219.61

7.03

12

455

455

130

130

162

80

25

53

10

0

60

33205.27

7.13

13

455

455

130

130

162

43

25

0

0

0

0

29365.94

6.93

14

455

455

0

130

162

73

25

0

0

0

0

27166.73

5.15

15

455

455

0

130

140

20

0

0

0

0

0

24318.01

6.83

16

455

440

0

130

25

0

0

0

0

0

0

20895.9

14.47

17

455

390

0

130

25

0

0

0

0

0

0

20020.02

20.2

18

455

455

0

130

60

0

0

0

0

0

0

21860.27

9.27

19

455

455

130

130

30

0

0

0

0

0

550

24150.32

11

20

455

455

130

130

162

43

25

0

0

0

430

29365.94

6.93

21

455

455

130

130

85

20

25

0

0

0

0

27251.07

15.15

22

455

455

130

0

0

35

25

0

0

0

0

22576.93

9.54

23

455

315

130

0

0

0

0

0

0

0

0

17795.28

15.55

24

455

345

0

0

0

0

0

0

0

0

0

15427.43

13.75

 

هزینه‌ی کل: 557563.41

4520

553043.41

 

 

جدول (7): نتایج اجرای روش پیشنهادی با جمعیت‌های مختلف در مثال‌3

زمان (ثانیه)

بدترین جواب ($)

میانگین جواب‌ها ($)

بهترین  جواب ($)

جمعیت اولیه

75.02

1128049.43

1126043.55

1124423.54

10

220.38

1126868.66

1125507.14

1124377.93

30

372.91

1126218.83

1125310.99

1124293.54

50

482.77

1126270.22

1125207.93

1124293.54

70

 

جدول (8): مقایسه نتایج الگوریتم پیشنهادی با سایر روش‌ها در مثال 3

روش

بهترین جواب ($)

Lagrange relaxation [9]

1130660

Integer coded genetic algorithm [3]

1127244

Simulated annealing [12]

1126251

Evolutionary programming [10]

1127257

Genetic algorithm [9]

1126243

Improved binary particle swarm[5] optimization [5]

1125216

Extended priority list [18]

1124369

Artificial bee colony

1124293.54

 

 

 

 

 

 

 

 

 

 

 

 

 

 

نتیجه‌گیری

در این مقاله، روشی مبتنی بر الگوریتم هوشمند بهینه‌سازی تجمع زنبور عسل برای حل مسأله‌ UC پیشنهاد شد. در روش پیشنهادی، محدودیت‌های حداقل زمان روشن/ خاموش به کمک کدبندی عدد صحیح و محدودیت ذخیره‌ چرخان با استفاده از کدبندی عدد باینری برآورده می‌شوند. در نتیجه، نیاز به ضریب جریمه در ارزیابی برازندگی پاسخ‌ها برای برآوردی قیود مسأله که امری مرسوم و البته کندکننده سرعت همگرایی است، از بین رفته است.

نتایج شبیه­سازی حاصل از به کارگیری الگوریتم پیشنهادی گویای همگرایی قابل قبول آن؛ حتی با تعداد جمعیت‌های اولیه کم است. همچنین، نتایج مقایسه­ای با سایر الگوریتم‌های موجود برای حل مسأله UC نشان می‌دهد که الگوریتم پیشنهادی در همة مثال‌ها به جواب­های بهتری در قیاس با سایر روش‌ها دست یافته است.


 

ضمیمه

جدول (9): مشخصات واحدهای مثال1

مشخصات

واحد

واحد نیروگاهی

1

2

3

4

5

6

7

8

9

10

                   
 

455

455

130

130

162

80

85

55

55

55

 

150

150

20

20

25

20

25

10

10

10

 

0.00048

0.00031

0.002

0.00211

0.00398

0.007

0.00079

0.004

0.00222

0.002

 

16.19

17.26

16.6

16.5

19.7

22.26

27.74

25.92

27.27

27.79

 

1000

970

700

680

450

370

480

660

665

670

 

8

8

5

5

6

3

3

1

1

1

 

8

8

5

5

6

3

3

1

1

1

 

4500

5000

550

560

900

170

260

30

30

30

 

9000

10000

1100

1120

1800

340

520

60

60

60

 

5

5

4

4

4

2

2

0

0

0

 

8

8

-5

-5

-6

-3

-3

-1

-1

-1

 

جدول (10): میزان تقاضای بار در ساعات مختلف برای مثال 1

ساعت

1

2

3

4

5

6

7

8

9

10

11

12

بار

700

750

850

950

1000

1100

1150

1200

1300

1400

1450

1500

ساعت

13

14

15

16

17

18

19

20

21

22

23

24

بار

1400

1300

1200

1050

1000

1100

1200

1400

1300

1100

900

800

 

 

 

منابع:

[1]          نجفی. ا.، فلقی. ح.  و فرشاد. م.، " کاربرد الگوریتم تجمع زنبور عسل در مسأله‌ی به مدار آوردن نیروگاه‌ها "، سومین کنفرانس نیروگاه‌های برق، محمودآباد، بهمن‌ماه 1389.

[2]          Yamin, H. Y., ''Review on methods of generation scheduling in electric power systems'', Electric Power Systems Research, Vol. 69, No. 3, pp. 227-248, 2004.

[3]          Ongsaku, W. and Petchara, N., "Unit commitment by enhanced adaptive lagrangian relaxation", IEEE Trans. on Power Systems, Vol. 19, No. 1, pp. 620-628, 2004.

[4]          Damousis, I.G., Bakirtzis, A.G. and  Dokopoulos, P.S., ''A solution to the unit-commitment problem using integer-coded genetic algorithm'', IEEE Trans. on Power Systems, Vol. 19, No. 2, pp. 1165–1172, 2004.

[5]          Amjady, N. and Shirzadi, A., ''Unit commitment using a new integer coded genetic algorithm'', European Trans. on Electrical Power, Vol. 19, No. 8, pp. 1161–1176, 2009.

[6]          Yuan, X., Nie, H., Su, A., Wanga, L. and Yuan, Y., ''An improved binary particle swarm optimization for unit commitment problem'', Expert Systems with Applications, Vol. 36, No. 4, pp. 8049–8055, 2009.

[7]          Yuan, X., Nie, H., Su, A., Wanga, L. and Yuan, Y., ''Application of enhanced discrete differential evolution approach to unit commitment problem'', Energy Conversion and Management, Vol. 50, No. 9, pp. 2449–2456, 2009.

[8]          Lau, T. W., Chung, C. Y., Wong, K. P., Chung, T. S. and Ho, S. L., ''Quantum-inspired evolutionary algorithm approach for unit commitment'', IEEE Trans. on Power Systems, Vol. 24, No. 3, pp. 1503–1512, 2009.

[9]          Eslamian, M., Hosseinian, S.H. and Vahidi, B., ''Bacterial foraging based solution to the unit-commitment problem'', IEEE Trans. on Power Systems, Vol. 24, No. 3, pp. 1478–1488, 2009.

[10]          Kazarlis, S. A., Bakirtzis, A. G. and Petridis, V., ''A genetic algorithm solution to the unit commitment problem'', IEEE Trans. on Power Systems, Vol. 11, No. 1, pp. 83–92, 1996.

[11]          Juste, K. A., Kita, H., Tanaka, E. and Hasegawa, J., ''An Evolutionary programming solution to the unit commitment problem'', IEEE Trans. on Power Systems, Vol. 14, No. 4, pp. 1452–1459, 1999.

[12]          Ebrahimi, J., Hosseinian, S.H. and Gharehpetian, G.B., ''Unit commitment problem solution using shuffled frog leaping algorithm'', IEEE Trans. on Power Systems, Vol. 26, No. 2, pp. 573-581, 2011.

[13]          Simopoulos, D.N., Kavatza, S.D. and Costas D. Vournas, C. D. ''Unit Commitment by an Enhanced Simulated Annealing Algorithm '', IEEE Trans. on Power Systems, Vol. 21, No.1, pp. 68–76, 2006.

[14]          Sum-im, T. and Ongsakul, W., ''Ant colony search algorithm for unit commitment'', Proceedings of IEEE International Conference on Industrial Technology, pp. 72-77, 2003.

[15]          Jorge, V. and Smith, A., ''A seeded memetic algorithm for large unit commitment problems'', Journal of Heuristics, Vol.8, pp.173–195, 2002.

[16]          Viana, A., Sausa, J. and Matos, M., ''Using GRASP to solve the unit commitment problem'', Analysis of Operations Research, Vol. 120, No. 1, pp.117–132, 2003.

[17]          Balci, H. and Valenzuela, J., ''Scheduling electric power generations using particle swarm optimization combined with the Lagrangian relaxation method'', International Journal of Applied Mathematics and Computer Science, Vol. 14, No. 3, pp. 411–421, 2004.

[18]          Senjyu, T., Miyagi, T., Saber, A.Y., Urasaki, N. and Funabashi, T., ''Emerging solution of large-scale unit commitment problem by stochastic priority list'', Electric Power Systems Research, Vol. 76, No. 5, pp. 283–292, 2006.

[19]          Senjyu, T., Shimabukuro, K., Uezato, K. and Funabashi, T., ''A fast technique for unit commitment problem by extended priority list'', IEEE Trans. on Power Systems, Vol. 18,No. 2, pp. 882-888, 2003.

[20]          Gaing, Z. L., ''Discrete particle swarm optimization algorithm for unit commitment'', IEEE Power Engineering Society General Meeting, Vol. 1, Taiwan, 2003.

[21]          Pappala, V.S. and Erlich, I.A., ''new approach for solving the unit commitment problem by adaptive particle swarm optimization'', Power and Energy Society General Meeting, Duisburg, pp. 1-6, 2008.

[22]          Eldin, A.S., El-sayed, M. and Youssef, H., ''A two-stage genetic based technique for the unit commitment optimization problem'', 12th International Middle East Power System Conference, MEPCO, Aswan, pp. 425-430, 2008.

[23]          Xiong, W., Li, M.J. and Cheng, Y.L., ''An improved particle swarm optimization algorithm for unit commitment'', Proceedings of the 2008 international conference on intelligent computation technology and automation, Vol. 1, pp. 21-25, 2008.

[24]          Jeong, Y.-W., Park, J.B., Shin, J.R. and Lee, K. Y., ''A thermal unit commitment approach using an improved quantum evolutionary algorithm'', Electric Power Components and Systems, Vol. 37,No. 7, pp. 770–786, 2009.

[25]          Khanmohammadi, S., Amiri, M. and Haque, M. T, '' A new three-stage method for solving unit commitment problem'', Energy, Vol. 35, No. 7, pp. 3072-3080, 2010.

[26]          Patra, S., Goswami, S.K. and Goswami, B., ''Fuzzy and simulated annealing based dynamic programming for the unit commitment problem'', Expert Systems with Applications, Vol. 36, No. 3, pp. 5081–5086, 2009.

[27]          Sishaj, S.H. and Simon, P., ''Artificial bee colony algorithm for economic load dispatch problem with non-smooth cost functions'', Electric Power Components and Systems, Vol. 38, No. 7, pp. 786- 803, 2010.

[28]          Karaboga, D. and Basturk, B., ''On the performance of artificial bee colony (ABC) algorithm'', Applied Soft Computing, Vol. 8, No. 1, pp. 687–697, 2008.

[29]          Kang, F., Li, J., Li, H., Ma, Z. and Xu, Q., ''An improved artificial bee colony algorithm'', Intelligent Systems and Applications, ISA, 2010.

[30]          Wood, A.J. and Wollenberg, B.F., ''Power Generation Operation and Control.” New York: Wiley, 1984.

 

زیر‌نویس‌ها

  1. Unit Commitment (UC)
  2. Artificial Bee Colony (ABC)