• مقالات آموزشی
    • آموزش برنامه نویسی
    • آموزش الگوریتم
    • آموزش شبکه های کامپیوتری
    • آموزش های عمومی
  • ترجمه مقاله
    • لیست ترجمه کامل مقالات
    • لیست ترجمه مفهومی مقالات
  • تحقیق و پژوهش
    • لیست داکیومنت پایان‌نامه
    • لیست داکیومنت سمینار
  • پیاده سازی
    • سی پلاس پلاس ++C
    • برنامه نویسی OpenGL
    • سی شارپ #C
    • پایتون Python
    • اندروید Android
    • پی اچ پی PHP
    • متلب Matlab
  • پاورپوینت
    • پاورپوینت الگوریتم های بهینه سازی
    • پاورپوینت شبکه‌های کامپیوتری
    • پاورپوینت مهندسی کامپیوتر
    • پاورپوینت یادگیری ماشین
    • پاورپوینت درس و تحقیق
    • قالب آماده پاورپوینت
  • فیلم آموزشی
    • لیست فیلم های آموزشی
  • قالب آماده
    • لیست قالب آماده HTML
  • دانلود رایگان
  • مجله پی استور
  • آموزش برنامه نویسی
  • آموزش الگوریتم
  • آموزش شبکه
  • آموزش عمومی

ورود

رمز عبور را فراموش کرده اید؟

هنوز عضو نشده اید؟ عضویت در سایت
  • قوانین
  • تماس با ما
  • درباره ما
  • همکاری با ما
پی استور
0

ورود و ثبت نام

مقالات آموزشی
  • ترجمه مقاله
    • لیست ترجمه کامل مقالات
    • لیست ترجمه مفهومی مقالات
  • تحقیق و پژوهش
    • لیست داکیومنت پایان‌نامه
    • لیست داکیومنت سمینار
  • پیاده سازی
    • سی پلاس پلاس ++C
    • برنامه نویسی OpenGL
    • سی شارپ #C
    • پایتون Python
    • اندروید Android
    • پی اچ پی PHP
    • متلب Matlab
  • پاورپوینت
    • پاورپوینت الگوریتم های بهینه سازی
    • پاورپوینت شبکه‌های کامپیوتری
    • پاورپونت مهندسی کامپیوتر
    • پاورپوینت یادگیری ماشین
    • پاورپوینت درس و تحقیق
    • قالب آماده پاورپوینت
  • فیلم آموزشی
    • لیست فیلم های آموزشی
  • قالب آماده
    • قالب آماده HTML
  • مجله پی استور

کد الگوریتم PSO در پایتون Python

خانهفروشگاههوش مصنوعیهوش محاسباتیکد الگوریتم PSO در پایتون Python
کد الگوریتم PSO در پایتون Python

کد الگوریتم PSO در پایتون Python

در این پست سورس کد الگوریتم PSO در پایتون Python قرار گرفته شده است. این سورس کد به زبان پایتون Python برای الگوریتم ازدحام ذرات یا همان PSO نوشته شده است. این سورس کد بر اساس 12 توابع تست الگوریتم PSO را اجرا می کند. برای اینکه بتوانید مسئله الگوریتم PSO را واضح و کامل درک کنید مقاله ای کامل با عنوان الگوریتم PSO در همین سایت نوشته شده است. در ادامه مختصری از الگوریتم برای درک کد الگوریتم ازدحام ذرات در پایتون بیان می شود. اگر نیاز به یادگیری مراحل و نحوه پیاده سازی الگوریتم دارید می‌توانید از لینک زیر آموزش نحوه پیاده سازی الگوریتم را تهیه کنید.

  • فیلم آموزش کدنویسی الگوریتم PSO در پایتون — کلیک کنید

الگوریتم PSO

الگوریتم PSO یا (Particle swarm optimization) بهینه سازی ازدحام ذرات (PSO) یک روش بهینه سازی تصادفی مبتنی بر جمعیت است که الهام گرفته از رفتار اجتماعی ازدحام پرندگان و پرورش ماهی است. این الگوریتم با جمع آوری راه حل های تصادفی و جستجو برای بهینه سازی با به روز رسانی نسل ها آغاز می شود. همانطور که قبلا اشاره شد، الگوریتم PSO رفتارهای ازدحام پرنده را شبیه سازی می کند.

تصور کنید سناریوی زیر: گروهی از پرندگان به طور تصادفی در یک منطقه در معرض غذا قرار می گیرند. در منطقه مورد جستجو تنها یک قطعه غذا وجود دارد. همه پرندگان نمی دانند کجا غذا است. اما آنها می دانند که چقدر مواد غذایی در هر تکرار است. بنابراین بهترین استراتژی برای یافتن غذا چیست؟ راه حل این است که دنبال پرنده ای که نزدیکتر به غذا است را دنبال کنید.

طراحان PSO از این سناریو اقتباس کردند و از آن برای حل مشکلات بهینه سازی استفاده کردند. در PSO، هر یک از راه حل یک “پرنده” در فضای جستجو است. ما آن را “ذره” می نامیم. تمام ذرات دارای مقادیر تناسب هستند که توسط تابع تناسب برای بهینه سازی ارزیابی می شوند و دارای سرعت هایی هستند که پرواز ذرات را هدایت می کنند. ذرات از طریق فضای مشکل با ذرات بهینه مطلوب جریان می یابند.

نحوه عملکرد

الگوریتم PSO با گروهی از ذرات تصادفی (راه حل) آغاز می شود و سپس با به روز رسانی نسل ها جستجو می کند. در هر تکرار، هر ذره با دو ارزش “بهترین” به روزرسانی می شود. اولین مورد بهترین راه حل ( تابع تناسب ) است که تاکنون به دست آورده است. (ارزش تناسب نیز ذخیره می شود.) این ارزش pbest نامیده می شود. یکی دیگر از “بهترین ها” ارزشی است که تا کنون توسط هر ذره در جمعیت به دست آمده است.

این بهترین ارزش جهانی بهترین است و به نام gbest است. هنگامی که یک ذره بخشی از جمعیت را به عنوان همسایگان توپولوژیکی خود می گیرد، بهترین ارزش بهترین محلی است و به نام lbest نامیده می شود.

پس از پیدا کردن بهترین مقادیر pbest و gbest  ذره سرعت و موقعیت خود را با معادله زیر (1) و (2) به روز می کند.

v[] = v[] + c1 * rand() * (pbest[] – present[]) + c2 * rand() * (gbest[] – present[]) (1)
present[] = persent[] + v[] (2)

که در آن v سرعت ذرات است، present ذره فعلی (راه حل) است. pbest و gbest قبلا تعریف شده اند. rand یک عدد تصادفی بین (0،1) است. C1، C2 عامل یادگیری هستند. معمولا c1 = c2 = 2 هستند.

قسمت هایی از سورس کد

import CostFun as fit
import random
import numpy
import matplotlib.pyplot as plt   

# PSO parameters
lb=-10
ub=10
dim=30
PopSize=50
iters=100
Vmax=6
wMax=0.9
wMin=0.2
c1=2
c2=2
if not isinstance(lb, list):
    lb = [lb] * dim
if not isinstance(ub, list):
    ub = [ub] * dim
    
# Initializations
    
vel=numpy.zeros((PopSize,dim))
    
pBestScore=numpy.zeros(PopSize) 
pBestScore.fill(float("inf"))
    
pBest=numpy.zeros((PopSize,dim))
gBest=numpy.zeros(dim)
    
gBestScore=float("inf")

pos = numpy.zeros((PopSize, dim))
for i in range(dim):
   pos[:, i] = numpy.random.uniform(0,1, PopSize) * (ub[i] - lb[i]) + lb[i]
    
convergence_curve=numpy.zeros(iters)

 


***  توجه  ***

قبل از اجرای سورس کد الگوریتم PSO در پایتون حتماً از نصب پکیج های مورد استفاده در این سورس کد در Python خود مطمئن شوید پکیج های استفاده شده در این سورس کد numpy و  matplotlib می باشد که اولی پکیج مربوط به استفاده از آرایه ها و ماتریس ها در پایتون و دومی مربوط به عملیات های نموداری و Plot گرفتن می باشد. پیشنهاد ما نصب Anaconda می باشد که هم پایتون و پکیج های مختلف و هم IDE های مختلفی را همراه با امکان آپدیتشان نصب می کند. ما این سورس کد را با IDE اسپایدر (Spyder (Python 3.7 نوشته و اجرا کرده ایم.


درباره سورس کد الگوریتم PSO در پایتون

سورس کد الگوریتم PSO در پایتون Python عنوان محصولی است که در این پست به آن پرداخته شده است. محصول در پایتون و با IDE اسپایدر (Spyder (Python 3.7 نوشته شده و بصورت کامل توسط گروه پشتیبانی پی استور تست و اجرا شده است. محصول دارای نشان تضمین کیفیت پی استور می باشد. برای دانلود محصول آن را خریداری کنید.

امتیاز
4.00 از 3 رأی
4.00 3 رای
39,000 تومان
تعداد دانلود : 224
تاریخ انتشار: 22 آبان 1398
تاریخ بروزرسانی: 24 اسفند 1398
حجم فایل: 3.9 کیلوبایت
فرمت فایل py. در قالب پایتون
نسخه: 1.0
لایسنس: ندارد
هماهنگی با: (Spyder (Python 3.8
نظرات و دیدگاه ها
  • programstore
    22 آبان 1398
    نمره 5 از 5
    پاسخ

    نظرات و پیشنهادات خود را با ما در میان بگذارید.

  • مصطفی پورمهدی
    9 اردیبهشت 1400
    نمره 5 از 5
    پاسخ

    سلام
    ممنون از شما کدها عالی و روان بودن. من فیلم آموزش الگوریتم pso رو هم میخواستم لطفا لینک فیلم رو هم به ایمیل من ارسال کنید.

  • امیر
    27 فروردین 1401
    نمره 2 از 5
    پاسخ

    سلام وقت بخیر
    من فایل شما را خریداری کردم
    شما فقط ی کد برنامه رو گذاشتید و هیچ توضیحی در مورد کد یا مقادیر ان ندادید

    • امین جلیل زاده رزین
      27 فروردین 1401
      پاسخ

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

قوانین ثبت دیدگاه

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

لغو پاسخ

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

قیمت 39,000 تومان

افزودن به علاقه مندی ها

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

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

  • دسترسی به فایل محصول به صورت مادام‌العمر
  • ۶ ماه پشتیبانی کاملا رایگان و تضمین شده
امتیاز
4.00 از 3 رأی
4.00 3 رای
39,000 تومان

تاریخ انتشار: 22 آبان 1398
تاریخ بروزرسانی: 24 اسفند 1398
حجم فایل: 3.9 کیلوبایت
فرمت فایل py. در قالب پایتون
نسخه: 1.0
لایسنس: ندارد
هماهنگی با: (Spyder (Python 3.8
تعداد دانلود : 224

قیمت: 39,000 تومان

تماس با ما
  • دفتر پشتیبانی: 04144225175
  • دسترسی سریع: 09227367942
  • واتساپ پشتیبانی: 09208501946
  • [email protected]
درباره پی استور

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

مجوز های اخذ شده

نشان ملی  

  • قوانین
  • تماس با ما
  • درباره ما
  • همکاری با ما
پی استور
  • آموزش برنامه نویسی
  • آموزش الگوریتم
  • آموزش شبکه
  • آموزش عمومی
تمامی حقوق برای پی استور محفوظ است.
keyboard_arrow_up