اموزش الگوریتم واکنش شیمیایی – برنامه نویسی هوشمند https://matlab24.ir مشاوره و مشارکت در پیاده سازی الگوریتم های هوش مصنوعی و پیاده سازی نرم افزار های هوشمند Mon, 13 Jul 2020 05:44:29 +0000 fa-IR hourly 1 https://wordpress.org/?v=6.3.4 https://matlab24.ir/wp-content/uploads/2014/08/matlab24-55x55.jpg اموزش الگوریتم واکنش شیمیایی – برنامه نویسی هوشمند https://matlab24.ir 32 32 اموزش الگوریتم واکنش شیمیایی یا CRO https://matlab24.ir/%d8%a7%d9%85%d9%88%d8%b2%d8%b4-%d8%a7%d9%84%da%af%d9%88%d8%b1%db%8c%d8%aa%d9%85-%d9%88%d8%a7%da%a9%d9%86%d8%b4-%d8%b4%db%8c%d9%85%db%8c%d8%a7%db%8c%db%8c-%db%8c%d8%a7-cro/ https://matlab24.ir/%d8%a7%d9%85%d9%88%d8%b2%d8%b4-%d8%a7%d9%84%da%af%d9%88%d8%b1%db%8c%d8%aa%d9%85-%d9%88%d8%a7%da%a9%d9%86%d8%b4-%d8%b4%db%8c%d9%85%db%8c%d8%a7%db%8c%db%8c-%db%8c%d8%a7-cro/#respond Sun, 19 Oct 2014 14:08:34 +0000 http://matlab24.ir/?p=286 اموزش الگوریتم واکنش شیمیایی یا CRO در این نوشته با عنوان اموزش الگوریتم واکنش شیمیایی یا CRO ، مراحل الگوریتم

نوشته اموزش الگوریتم واکنش شیمیایی یا CRO اولین بار در برنامه نویسی هوشمند پدیدار شد.

]]>
اموزش الگوریتم واکنش شیمیایی یا CRO

در این نوشته با عنوان اموزش الگوریتم واکنش شیمیایی یا CRO ، مراحل الگوریتم واکنش شیمیایی را توضیح خواهیم داد.

همانطور که میدانید الگوریتم واکنش شیمیایی یا الگوریتم Chemical Reaction Optimization یک الگوریتم تکاملی است که از مدل کردن مولکولها و انرژی مولکولی و برخوردهای بین مولکولی الهام گرفته شده است.

الگوریتم واکنش شیمیایی

الگوریتم واکنش شیمیایی

مفاهیم اولیه الگوریتم واکنش شیمیایی را در مطلبی با عنوان الگوریتم واکنش شیمیایی توضیح داده ایم. که برای آشناییبیشتر توصیه میکنم ابتدا آن را مطالعه کنید.

در ادامه مراحل کار الگوریتم cro را تشریح کرده ایم.

 

مراحل کار الگوریتم واکنش شیمیایی  (CRO) بصورت زیر می باشد

– در مرحله اول پارامترهای الگوریتم واکنش شیمیایی را مقدار دهی میکنیم.

– در مرحله بعد ساخت جمعیت اولیه را انجام میدهیم . برای این کار ابتدا یک ساختار یا پروفایل برای هر مولکول تعریف میکنیم و در ان مشخص میکنیم که هر مولکول چه ویژگی هایی را دارد.

– در مرحله بعد میرویم به سراغ حلقه اصلی الگوریتم که الگوریتم ان بصورت زیر می باشد:

– تا وقتی که FE کمتر از FELimit می باشد مراحل زیر را تکرار کن:

1) یک عدد تصادفی بین صفرویک ایجاد کن ، اگر این عدد بیشتر از مقدار MoleColl می باشد یا اندازه جمعیت 1 باشد به مرحله 2 برو در غیراینصورت به مرحله 3 برو.

2) عمل تجزیه (Decomposition) یا برخورد به دیواره (OnWall) را بر روی یک مولکول اعمال کن، روال کار بصورت زیر است:

الف) یک مولکول را بصورت تصادفی از بین جمعیت انتخاب کن.

ب) اگر شرط تجزیه برقرار است : عمل تجزیه را انجام بده و دومولکول جدید ایجاد کن. اگر عمل تجزیه موفقیت امیز بود مولکول اولیه را از جمعیت حذف کن و دو مولکول جدید را در جمعیت قرار بده.

ج) اگر شرط تجزیه برقرار نبود عمل برخورد به دیواره را بر روی مولکول انتخاب شده انجام بده و ان را بروزرسانی کن
با انجام مرحله 2 به مرحله 4 برو.

3) عمل ترکیب یا برخورد دومولکول را انجام بده روال کار بصورت زیر است :

الف) دومولکول را به تصادف از جمعیت انتخاب کن.

ب)اگر شرط ترکیب برقرار است ، عمل ترکیب را روی دو مولکول اعمال کن و دو مولکول جدید ایجاد کن، اگر عمل ترکیب با موفقیت اعمال شد ، دو مولکول اولیه را از جمعیت حذف کن و مولکول جدید را به جمعیت اضافه کن.

ج) اگر شرط ترکیب برقرار نیست عمل برخورد بین مولکولی را عمال کن و به این ترتیب دو مولکول را بروز کن .

بعد از انجام این مرحله به مرحله 4 برو.
در این مرحله بین تمام جمعیت جستجو میکنیم و اگر مولکولی مقدار Pe کمتر از مقدار globalMin داشته باشد ان را بعنوان بهترین جواب در نظر میگیریم.

4) به مرحله 1 برو

در نهایت نیز فلوچارت الگوریتم واکنش شیمیایی (الگوریتم CRO) را آورده ایم تا روال فوق را بهتر درک کنید.

 

فلوچارت الگوریتم واکنش شیمیایی بصورت زیر می باشد:

فلوچارت الگوریتم واکنش شیمیایی

جهت دریافت کد متلب الگوریتم واکنش شیمیایی CRO  یا انجام پروژه و مقاله با الگوریتم تکاملی واکنش شیمیایی (CRO) با ما تماس بگیرید و یا از لینک زیر اقدام کرده و بصورت آنلاین کد و توضیحات را خریداری و دانلود نمایید.

[parspalpaiddownloads id=”85″]

 کد متلب بهینه سازی واکنش شیمیایی + فایل توضیحات خط به خط  کد متلب.

ایمیل : matlab24ir@gmail.com و یا info@matlab24.ir

شماره تماس :

09120563264

نوشته اموزش الگوریتم واکنش شیمیایی یا CRO اولین بار در برنامه نویسی هوشمند پدیدار شد.

]]>
https://matlab24.ir/%d8%a7%d9%85%d9%88%d8%b2%d8%b4-%d8%a7%d9%84%da%af%d9%88%d8%b1%db%8c%d8%aa%d9%85-%d9%88%d8%a7%da%a9%d9%86%d8%b4-%d8%b4%db%8c%d9%85%db%8c%d8%a7%db%8c%db%8c-%db%8c%d8%a7-cro/feed/ 0
الگوریتم بهینه سازی واکنش شیمیایی https://matlab24.ir/%d8%a7%d9%84%da%af%d9%88%d8%b1%db%8c%d8%aa%d9%85-%d8%aa%da%a9%d8%a7%d9%85%d9%84%db%8c-%d9%88%d8%a7%da%a9%d9%86%d8%b4-%d8%b4%db%8c%d9%85%db%8c%d8%a7%db%8c%db%8c/ https://matlab24.ir/%d8%a7%d9%84%da%af%d9%88%d8%b1%db%8c%d8%aa%d9%85-%d8%aa%da%a9%d8%a7%d9%85%d9%84%db%8c-%d9%88%d8%a7%da%a9%d9%86%d8%b4-%d8%b4%db%8c%d9%85%db%8c%d8%a7%db%8c%db%8c/#respond Sat, 18 Oct 2014 16:27:12 +0000 http://matlab24.ir/?p=284 الگوریتم بهینه سازی واکنش شیمیایی این الگوریتم که بر اساس واکنش های شیمیایی مابین مولکول ها رخ میدهد الهام گرفته

نوشته الگوریتم بهینه سازی واکنش شیمیایی اولین بار در برنامه نویسی هوشمند پدیدار شد.

]]>
الگوریتم بهینه سازی واکنش شیمیایی

این الگوریتم که بر اساس واکنش های شیمیایی مابین مولکول ها رخ میدهد الهام گرفته شده است بصورت زیر می باشد

هر مولکول مجموعه ای از اتم ها و خواصی مانند تعداد و …. می باشد

 

هر مولکول را یک راه حل قابل قبول برای مسئله خود در نظر میگیریم. یعنی در اینجا مولکول معادل کروموزوم در الگوریتم ژنتیک است

هر مولکول دو نوع انرژی دارد 1) PE  و 2) KE

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

هر مولکولی مانند w تمایل داره به مولکولی مثل w’ تغییر پیدا کند، این تغییر همیشه امکان پذیر است اگر f(w)>=f(w’)

در غیر اینصورت وقتی اجازه تغییر میدهیم که     PEw+KEW>=PEw’

درواقع KE توانایی مولکول برای فرار از بهینه محلی را نشان میدهد

طبق قانون بقای انرژی ، انرژی ایجاد نمیشود و از بین نمیرود بنابراین مانمیتوانیم مقدار KE را کم یا زیاد کنیم و تنها میتوانیم انرژی PE و KE را طی فرایند های شیمیایی به هم تبدیل کنیم (تبدیل در یک مولکول یا بین مولکول ها)

 

ما میزان انرژی KE مولکول ها را در یک بافر مرکزی انرژی به نام buffer قرار میدهیم و بنابراین با پیشرفت الگوریتم ، مقدار KE الگوریتم را کاهش میدهیم به عبارت دیگر ما مولکول ها را مجبور میکنیم که در تکرارهای بعدی ساختار مولکولی ای با مقدار PE کمتر و کمتر داشته باشند

 

 

واکنش های اصلی:

در فرایند واکنش شیمیایی دنباله ای از کولیژن ها بین مولکول ها رخ میدهد. مولکول با مولکول های دیگر و یا با دیواره جایی که در ان قرار دارد تصادف و برخورد میکند. کولیژن ها تحت شرایط مختلف موجب برنگیخته شدن واکنش های پایه ای مجزایی میشوند که هر کدام از این واکنش ها روشی برای دستکاری انرژی مولکولهای درگیر در ان واکنش را دارند.

در الگوریتم CRO چهارنوع واکنش پایه ای داریم که عبارتند از »

on-wall ineffective collision

 

الگوریتم بهینه سازی واکنش شیمیایی

الگوریتم واکنش شیمیایی

 

جهت دریافت کد متلب الگوریتم واکنش شیمیایی CRO  یا انجام پروژه و مقاله با الگوریتم تکاملی واکنش شیمیایی (CRO) با ما تماس بگیرید.

ایمیل : matlab24ir@gmail.com و یا info@matlab24.ir

شماره تماس :

۰۹۱۳۹۹۳۵۳۶۰

کد متلب بهینه سازی واکنش شیمیایی + فایل توضیحات خط به خط  کد متلب

 

[parspalpaiddownloads id=”85″]

 

نوشته الگوریتم بهینه سازی واکنش شیمیایی اولین بار در برنامه نویسی هوشمند پدیدار شد.

]]>
https://matlab24.ir/%d8%a7%d9%84%da%af%d9%88%d8%b1%db%8c%d8%aa%d9%85-%d8%aa%da%a9%d8%a7%d9%85%d9%84%db%8c-%d9%88%d8%a7%da%a9%d9%86%d8%b4-%d8%b4%db%8c%d9%85%db%8c%d8%a7%db%8c%db%8c/feed/ 0