تخفیف نوروزی پی استور

کد تخفیف: PR1404

شامل تمامی آثار
روز
ساعت
دقیقه
ثانیه

با خرید اشتراک ویژه ، با هزینه بسیار کمتر به فایل های پاورپوینت دسترسی داشته باشید!

الگوریتم بهینه ساز خفاش BA در پایتون Python

هزینه سفارش:

تخفیف ویژه 60 درصدی

قیمت اصلی: ۲۶۹,۰۰۰ تومان بود.قیمت فعلی: ۱۰۷,۶۰۰ تومان.

روز
ساعت
دقیقه
ثانیه
دریافت کد تخفیف با گردونه شانس %
تعداد فراگیر
339 نفر
امتیاز کاربران
امتیاز 5.00 از 5

 سورس کد الگوریتم بهینه ساز خفاش BA در پایتون Python به زبان پایتون Python برای الگوریتم بهینه سازی خفاش Bat Algorithm به اختصار BA نوشته شده است. این سورس کد بر اساس ساز و کار الگوریتم خفاش مسائل بهینه سازی را حل می‌کند. این الگوریتم الهام گرفته از زیست طبیعی خفاش‌ها است این الگوریتم توسط یانگ در سال 2010 توسعه یافته است. الگوریتم BA از روش تنظیم فرکانس برای افزایش تنوع راه حل در جمعیت استفاده می‌کند.

در این بخش سورس کد الگوریتم بهینه ساز خفاش BA در پایتون Python قرار گرفته شده است. این سورس کد به زبان پایتون Python برای الگوریتم بهینه سازی خفاش Bat Algorithm به اختصار BA نوشته شده است. این سورس کد بر اساس ساز و کار الگوریتم خفاش مسائل بهینه سازی را حل می‌کند. این الگوریتم الهام گرفته از زیست طبیعی خفاش‌ها است و توسط یانگ در سال ۲۰۱۰ توسعه یافته است.

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

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

الگوریتم های فرا ابتکاری که معمولاً الهام گرفته شده از طبیعت و فرآیندهای فیزیکی می‌باشند، در حال حاضر به‌عنوان یکی از روش‌های قدرتمند برای حل بسیاری از مسائل بهینه سازی پیچیده به کار برده می‌شوند. الگوریتم خفاش یکی از الگوریتم های فراابتکاری الهام گرفته از طبیعت است که در سال ۲۰۱۰ توسط آقای یانگ معرفی گردید.

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

الگوریتم خفاش با استفاده از تکنیک تنظیم فرکانس تنوع راه حل‌های موجود در جمعیت را افزایش می‌دهند. مغز و دستگاه عصبی خفاش‌ها با مقایسه موج‌های فرستاده شده و موج‌های بازتاب شده می‌تواند تصویری از فضای پیرامون و جزئیاتش برای خود بسازد. با این ویژگی خفاش‌ها می‌https://dl0.programstore.ir/files/Uploades/Previews/python/BAT-Algorithm-in-python.mp4توانند اجسام متحرک اطراف خود را شناسایی کنند.

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

الگوریتم جستجوی خفاش BA در پایتون

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

در این قسمت سورس کد الگوریتم بهینه ساز خفاش BA در پایتون Python آماده شده است این سورس کد شامل ۲ فایل می‌باشد که عبارتند از:

  • benchmarks.py: این فایل شامل ۲۳ تابع هزینه یا Fitness از توابع benchmark می‌باشد و در اکثر مقالات علمی از این توابع محک برای ارزیابی الگوریتم‌ها استفاده می‌کنند.
  • BA.py: فایل اصلی برای اجرای الگوریتم بهینه ساز خفاش BA در پایتون می‌باشد که فراخوانی‌ها از طریق این فایل انجام و اجرا خواهد شد.

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

import numpy
import math

# define the function blocks
def prod( it ):
    p= 1
    for n in it:
        p *= n
    return p

def Ufun(x,a,k,m):
    y=k*((x-a)**m)*(x>a)+k*((-x-a)**m)*(x<(-a));
    return y
    
def F1(x):
    s=numpy.sum(x**2);
    return s

def F2(x):
    o=sum(abs(x))+prod(abs(x));
    return o;     
           
def F3(x):
    dim=len(x)+1;
    o=0;
    for i in range(1,dim):
        o=o+(numpy.sum(x[0:i]))**2; 
    return o; 
    
def F4(x):
    o=max(abs(x));
    return o;     

def F5(x):
    dim=len(x);
    o=numpy.sum(100*(x[1:dim]-(x[0:dim-1]**2))**2+(x[0:dim-1]-1)**2);
    return o; 

def F6(x):
    o=numpy.sum(abs((x+.5))**2);
    return o;

def F7(x):
   dim=len(x);

   w=[i for i in range(len(x))]
   for i in range(0,dim):
        w[i]=i+1;
   o=numpy.sum(w*(x**4))+numpy.random.uniform(0,1);
   return o;

def F8(x):
    o=sum(-x*(numpy.sin(numpy.sqrt(abs(x)))));
    return o;

def F9(x):
    dim=len(x);
    o=numpy.sum(x**2-10*numpy.cos(2*math.pi*x))+10*dim;
    return o;


def F10(x):
    dim=len(x);
    o=-20*numpy.exp(-.2*numpy.sqrt(numpy.sum(x**2)/dim))-numpy.exp(numpy.sum(numpy.cos(2*math.pi*x))/dim)+20+numpy.exp(1);
    return o;

def F11(x):
    dim=len(x);
    w=[i for i in range(len(x))]
    w=[i+1 for i in w];
    o=numpy.sum(x**2)/4000-prod(numpy.cos(x/numpy.sqrt(w)))+1;   
    return o;
    
def F12(x):
    dim=len(x);
    o=(math.pi/dim)*(10*((numpy.sin(math.pi*(1+(x[0]+1)/4)))**2)+numpy.sum((((x[1:dim-1]+1)/4)**2)*(1+10*((numpy.sin(math.pi*(1+(x[1:dim-1]+1)/4))))**2))+((x[dim-1]+1)/4)**2)+numpy.sum(Ufun(x,10,100,4));   
    return o;
    
def F13(x): 
    dim=len(x);
    o=.1*((numpy.sin(3*math.pi*x[1]))**2+sum((x[0:dim-2]-1)**2*(1+(numpy.sin(3*math.pi*x[1:dim-1]))**2))+ 
    ((x[dim-1]-1)**2)*(1+(numpy.sin(2*math.pi*x[dim-1]))**2))+numpy.sum(Ufun(x,5,100,4));
    return o;
    
def F14(x): 
     aS=[[-32,-16,0,16,32,-32,-16,0,16,32,-32,-16,0,16,32,-32,-16,0,16,32,-32,-16,0,16,32],[-32,-32,-32,-32,-32,-16,-16,-16,-16,-16,0,0,0,0,0,16,16,16,16,16,32,32,32,32,32]];     
     aS=numpy.asarray(aS);
     bS = numpy.zeros(25)
     v=numpy.matrix(x)
     for i in range(0,25):
         H=v-aS[:,i];
         bS[i]=numpy.sum((numpy.power(H,6)));   
     w=[i for i in range(25)]   
     for i in range(0,24):
        w[i]=i+1;
     o=((1./500)+numpy.sum(1./(w+bS)))**(-1);
     return o;  
     
def F15(L):  
    aK=[.1957,.1947,.1735,.16,.0844,.0627,.0456,.0342,.0323,.0235,.0246];
    bK=[.25,.5,1,2,4,6,8,10,12,14,16];
    aK=numpy.asarray(aK);
    bK=numpy.asarray(bK);
    bK = 1/bK;  
    fit=numpy.sum((aK-((L[0]*(bK**2+L[1]*bK))/(bK**2+L[2]*bK+L[3])))**2);
    return fit

def F16(L):  
     o=4*(L[0]**2)-2.1*(L[0]**4)+(L[0]**6)/3+L[0]*L[1]-4*(L[1]**2)+4*(L[1]**4);
     return o

def F17(L):  
    o=(L[1]-(L[0]**2)*5.1/(4*(numpy.pi**2))+5/numpy.pi*L[0]-6)**2+10*(1-1/(8*numpy.pi))*numpy.cos(L[0])+10;
    return o
    
def F18(L):  
    o=(1+(L[0]+L[1]+1)**2*(19-14*L[0]+3*(L[0]**2)-14*L[1]+6*L[0]*L[1]+3*L[1]**2))*(30+(2*L[0]-3*L[1])**2*(18-32*L[0]+12*(L[0]**2)+48*L[1]-36*L[0]*L[1]+27*(L[1]**2)));
    return o
# map the inputs to the function blocks
def F19(L):    
    aH=[[3,10,30],[.1,10,35],[3,10,30],[.1,10,35]];
    aH=numpy.asarray(aH);
    cH=[1,1.2,3,3.2];
    cH=numpy.asarray(cH);
    pH=[[.3689,.117,.2673],[.4699,.4387,.747],[.1091,.8732,.5547],[.03815,.5743,.8828]];
    pH=numpy.asarray(pH);
    o=0;
    for i in range(0,4):
     o=o-cH[i]*numpy.exp(-(numpy.sum(aH[i,:]*((L-pH[i,:])**2))));   
    return o
    

def F20(L):    
    aH=[[10,3,17,3.5,1.7,8],[.05,10,17,.1,8,14],[3,3.5,1.7,10,17,8],[17,8,.05,10,.1,14]];
    aH=numpy.asarray(aH);
    cH=[1,1.2,3,3.2];
    cH=numpy.asarray(cH);
    pH=[[.1312,.1696,.5569,.0124,.8283,.5886],[.2329,.4135,.8307,.3736,.1004,.9991],[.2348,.1415,.3522,.2883,.3047,.6650],[.4047,.8828,.8732,.5743,.1091,.0381]];
    pH=numpy.asarray(pH);
    o=0;
    for i in range(0,4):
     o=o-cH[i]*numpy.exp(-(numpy.sum(aH[i,:]*((L-pH[i,:])**2))));
    return o

def F21(L):
    aSH=[[4,4,4,4],[1,1,1,1],[8,8,8,8],[6,6,6,6],[3,7,3,7],[2,9,2,9],[5,5,3,3],[8,1,8,1],[6,2,6,2],[7,3.6,7,3.6]];
    cSH=[.1,.2,.2,.4,.4,.6,.3,.7,.5,.5];
    aSH=numpy.asarray(aSH);
    cSH=numpy.asarray(cSH);
    fit=0;
    for i in range(0,4):
      v=numpy.matrix(L-aSH[i,:])
      fit=fit-((v)*(v.T)+cSH[i])**(-1);
    o=fit.item(0);
    return o
  
def F22(L):
    aSH=[[4,4,4,4],[1,1,1,1],[8,8,8,8],[6,6,6,6],[3,7,3,7],[2,9,2,9],[5,5,3,3],[8,1,8,1],[6,2,6,2],[7,3.6,7,3.6]];
    cSH=[.1,.2,.2,.4,.4,.6,.3,.7,.5,.5];
    aSH=numpy.asarray(aSH);
    cSH=numpy.asarray(cSH);
    fit=0;
    for i in range(0,6):
      v=numpy.matrix(L-aSH[i,:])
      fit=fit-((v)*(v.T)+cSH[i])**(-1);
    o=fit.item(0);
    return o  

def F23(L):
    aSH=[[4,4,4,4],[1,1,1,1],[8,8,8,8],[6,6,6,6],[3,7,3,7],[2,9,2,9],[5,5,3,3],[8,1,8,1],[6,2,6,2],[7,3.6,7,3.6]];
    cSH=[.1,.2,.2,.4,.4,.6,.3,.7,.5,.5];
    aSH=numpy.asarray(aSH);
    cSH=numpy.asarray(cSH);
    fit=0;
    for i in range(0,9):
      v=numpy.matrix(L-aSH[i,:])
      fit=fit-((v)*(v.T)+cSH[i])**(-1);
    o=fit.item(0);
    return o***  توجه  ***

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


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

الگوریتم بهینه ساز خفاش BA در پایتون Python عنوان اثری است که در این پست به آن پرداخته شده است. این اثر در پایتون و با IDE اسپایدر (Spyder (Python 3.8 نوشته شده و بصورت کامل توسط گروه پشتیبانی پی استور تست و اجرا شده است و دارای نشان تضمین کیفیت پی استور می‌باشد. برای دانلود اثر مذکور آن را خریداری کنید.

ویدئوی معرفی اثر

ویدئوی نحوه اجرا


برنامه‌نویس:  تیم برنامه‌نویسی پی‌استور

متشکل از اساتید و فارغ التحصیلان رشته‌های فنی - مهندسی

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

مشخصات تکمیلی سورس کد

نام اثر: الگوریتم بهینه ساز خفاش BA در پایتون Python
نوع اثر: سورس کد
برنامه‌نویس: تیم برنامه‌نویسی پی‌استور
زبان برنامه نویسی: پایتون Python
ویژگی: دارای قابلیت ویرایش

راهنمای خرید و ثبت سفارش

تصویر مراحل خرید از پی استور

اگر در مورد این اثر یا نحوه تهیه آن سوالی دارید؟
  • با شماره تلفن واحد مخاطبین 44225175 (پیش شماره 041) تماس بگیرید. – تمام ساعات اداری
  • با ما مکاتبه ایمیلی داشته باشید (این لینک). – تمام ساعات

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

تصویر و لوگوی گارانتی

نظرات

2 نظر|5.00 (میانگین امتیاز کاربران)

  1. Avatar of مهدی

    مهدی

    این سورس کد رو خریدم ولی نتونستم دانلود کنم لطفا به ایمیلم بفرستین.

    • Avatar of فاطمه اسماعیلی

      فاطمه اسماعیلی

      سلام. لینک دانلود براتون ارسال شد

  2. Avatar of مدیریت و پشتیبانی

    مدیریت و پشتیبانی

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

دیدگاه خود را بنویسید

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

شناسه اثر: 9208 دسته‌بندی موضوعی: برچسب ,

هزینه سفارش:

تخفیف ویژه 60 درصدی

قیمت اصلی: ۲۶۹,۰۰۰ تومان بود.قیمت فعلی: ۱۰۷,۶۰۰ تومان.

دریافت کد تخفیف %