টিউনিং নিয়ন্ত্রণকারীদের জন্য জেনেটিক অ্যালগরিদম ব্যবহার করা


9

আমি ননলাইনার সিস্টেমগুলি নিয়ন্ত্রণের জন্য কিছু কাগজপত্র পড়েছি (যেমন ননলাইনার পেন্ডুলাম)। ননলাইনার সিস্টেমগুলিকে টার্গেট করার জন্য বেশ কয়েকটি পন্থা রয়েছে। সর্বাধিক সাধারণ হ'ল প্রতিক্রিয়া লিনিয়ারাইজিং , ব্যাকস্টেপিং এবং স্লাইডিং মোড কন্ট্রোলারগুলি।

আমার ক্ষেত্রে, আমি একটি সাধারণ দুলের ননলাইনার মডেল এবং সি ++ এর অন্যান্য ম্যানিপুলেটারগুলির সমস্যাগুলি নিয়ন্ত্রণ করার তাত্ত্বিক এবং ব্যবহারিক অংশগুলি করেছি। দুলের জন্য, আমি কৌণিক স্থানচ্যুতি এবং বেগের জন্য ট্র্যাকিংয়ের কাজটি সমাধান করার জন্য একটি ব্যাকস্টেপিং কন্ট্রোলার ব্যবহার করেছি। ফলাফল হয়

θ¨+(k/m)θ˙+(g/L)sinθ=u

যেখানে এবং ।m=0.5,k=0.0001,L=.2g=9.81

গ্রাফ 1

গ্রাফ 2

ফলাফল ভাল। তবে নিয়ামক টিউন করা সময়সাপেক্ষ। বেশিরভাগ কাগজপত্র তাদের নিয়ন্ত্রকদের যেমন পিডি, পিআইডি এবং ব্যাকস্টেপিং কন্ট্রোলারগুলির সুরের জন্য জেনেটিক অ্যালগরিদম ব্যবহার করে। আমি এই ক্ষেত্রে নিখুঁত এবং আমি আশা করি যে কেউ এই ধারণাটি সম্পর্কে কিছুটা আলোকপাত করবেন, যদি কমপক্ষে একটি সহজ দুল নিয়ন্ত্রণের জন্য কোনও ম্যাটল্যাব নমুনা থাকে তবে তার থেকে ভাল।

নিয়ন্ত্রককে ম্যানুয়ালি টিউন করার জন্য এখনও আমি সি ++ / কিউটিতে একটি সাধারণ জিইউআই ডিজাইন করেছি। নীচের ছবিতে, পদক্ষেপ ফাংশনের জন্য নিয়ামকের প্রতিক্রিয়া।

নিয়ামক টিউনিং অ্যাপ্লিকেশনের জিইউআইয়ের স্ক্রিনশট

উত্তর:


1

প্যারামিটার টিউনিংয়ের জন্য বিবর্তনীয় পদ্ধতিগুলি (জিএ এর মধ্যে একটি) প্রকৃতপক্ষে নিয়ন্ত্রণ ডোমেনের একটি সাধারণ পদ্ধতি [1]। বিশেষত অ-লিনিয়ার সিস্টেমগুলির জন্য, অনুকূল পরামিতিগুলির জন্য বিশ্লেষণাত্মক সমাধানগুলি খুঁজে পাওয়া কঠিন can নিকট-অনুকূল পরামিতিগুলির জন্য দক্ষতার সাথে অনুসন্ধান সম্পাদনের এক উপায় বিবর্তনীয় পদ্ধতি।

একটি খুব সফল এবং সর্বজনীন পদ্ধতি যা ব্যাপকভাবে ব্যবহৃত হয় তা হ'ল সিএমএ-ইএস । ম্যাটল্যাব সহ সেখানে প্রচুর পরিমাণে বাস্তবায়ন রয়েছে। আমি জানি যে বিভিন্ন ধরণের মেরু ভারসাম্য প্রায়শই একটি মানদণ্ড হিসাবে ব্যবহৃত হয়।

অ্যালগরিদম প্রয়োগ করা সাধারণত খুব কঠিন হয় না। আপনার ফলাফলের পারফরম্যান্সকে রেটিং দিন - এটি EA এর ফিটনেস ফাংশন বলা হয় - এটি সাধারণত সর্বাধিক জড়িত অংশ।

[১] পিজে ফ্লেমিং, আরসি পার্সহাউস, কন্ট্রোল সিস্টেম ইঞ্জিনিয়ারিংয়ের বিবর্তনীয় অ্যালগরিদম: একটি সমীক্ষা, কন্ট্রোল ইঞ্জিনিয়ারিং অনুশীলন, খণ্ড 10, সংখ্যা 11, নভেম্বর 2002, পৃষ্ঠা 1223-1241, আইএসএসএন 0967-0661, http: //dx.doi। org / 10.1016 / S0967-0661 (02) 00081-3


আপনি জিএ সম্পর্কে পড়া ভাল বলে মনে করেন এমন কোনও ভাল বই এসেছেন?
ক্রোকো

8

জেনেটিক অ্যালগরিদম হ'ল একটি মেশিন লার্নিং কৌশল যা কোনও ব্যবহারকারীকে কোনও সিস্টেমকে 'ফাইন টিউন' করার প্রয়োজনীয়তা সরিয়ে দেয় এবং পরিবর্তে কম্পিউটারকে কীভাবে সিস্টেমটি টিউন করতে হয় তা নির্ধারণ করার অনুমতি দেয়। এই পদ্ধতির সুবিধাগুলি হ'ল এটি গবেষক / ব্যবহারকারীদের সময়কে মুক্ত করে এবং প্রায়শই এমন একটি সিস্টেমের দিকে পরিচালিত করতে পারে যা গবেষক / ব্যবহারকারী নিজেরাই অর্জন করতে সক্ষম হতে পারে তার চেয়ে ভাল tun

জেনেটিক অ্যালগরিদম ব্যবহারের সাধারণ ধারণাটি কিছু বেসিক নিয়ন্ত্রণ প্রবাহ অনুসরণ করবে:

Create_X_Number_Of_Random_Controllers()
while (Not_Yet_Satisfied_With_tuning)
    Score_Each_Controller_Based_On_Performance()
    Remove_Lowest_Performing_Controllers()
    Create_New_Controllers_By_Mixing_Best_Performers()
    Add_Slight_Randomness_For_Evolution()
Display_Top_Performer()

অনুশীলনে আমি এই নীতিটি সহজেই প্রদর্শন করতে পারি তার সেরা উদাহরণটি হ'ল 'গেম' যা জেনেটিক বিবর্তনকে যানবাহনগুলি ডিজাইনের জন্য ব্যবহার করে যা কোনও কোর্স ধরে গাড়ি চালাতে সক্ষম। একই ধারণা আপনি যে কোনও সিস্টেমে প্রয়োগ করতে পারেন আপনি নিজেই কোনও সুর তৈরি না করেই সুরটি ঠিক করতে চান। উদাহরণ: http://rednuht.org/genetic_cars_2/


যদি জেনেটিক অ্যালগরিদম ব্যবহার করে @ ক্রোকো এর অর্থ এটিই হয় তবে জিগ্লার নিকোলস টিউনিং পদ্ধতিটি বাস্তবায়নের জন্য দুর্দান্ত প্রার্থী হবে, কারণ এটি দুর্দান্ত পদ্ধতিগত।
স্টিভো

@ ক্রোকো কী বোঝাতে চেয়েছিল তা আমি দেখতে পাচ্ছি না, তবে জিগলার নিকোলসের সমস্যাটি এখনও এটির যে কোনও একটি জেনেটিক অ্যালগোয়ের সাথে আপনি সিস্টেমের কোনও দিক পরিবর্তন করতে পারেন এবং এটি 'বিকশিত' হবে এমন একটি উপাদান সুর করতে আপনার এখনও প্রয়োজন I বিকাশকারীকে কোনও
জঘন্য

1
এই উত্তরটি এখনও তা অর্জনের সাধারণ প্রক্রিয়া হিসাবে দাঁড়িয়েছে। জেনেটিক অ্যালগরিদমগুলি সম্পূর্ণ অধ্যয়নের একটি ক্ষেত্র এবং এর থেকে জটিল পর্যন্ত তবে একটি সংক্ষিপ্ত প্রতিক্রিয়াতে সত্যিই ব্যাখ্যা করার জন্য, আমি সেগুলি পড়ার পরামর্শ দিচ্ছি যদি আপনি তাদের মডেলগুলি সুর করার জন্য সেগুলি ব্যবহার করতে আগ্রহী হন!
বীদি

2
আমি একটি অসুস্থ সীমাবদ্ধ জেনেটিক অ্যালগরিদম চিত্রিত করছি যে টিউন করার সময় বেশ আনন্দের সাথে স্ট্রিং স্ন্যাপ করে।
রামরোড

1
@ অটোপাস যেমন উল্লেখ করেছে, প্রকৃত পদার্থবিজ্ঞানের সরঞ্জামগুলি অর্জন করা কঠিন, যদি না আপনি সুরের চেষ্টা করছেন এমন ডিভাইসটিকে কম্পিউটারের শারীরিকভাবে নিয়ন্ত্রণ করতে দিতে দীর্ঘ সময় দেওয়ার অনুমতি দিতে রাজি না হন, তবুও আপনার কিছু 'অভিভাবক' প্রোগ্রাম প্রয়োজন যা পর্যবেক্ষণ করে এবং পারফরম্যান্সের ভিত্তিতে প্রতিটি নিয়ামককে স্কোর করে এবং এটি মেশিনকে ক্ষতিগ্রস্থ করছে না তা যাচাই করে। সব মিলিয়ে তুলনামূলকভাবে জটিল কাজ যা বাস্তবায়নের জন্য জেনেটিক অ্যালগরিদমের উপর প্রচুর পড়া লাগবে, এটি কোনও ছোট কাজ নয়।
বীডি

2

আপনি যে কোনও জেনেটিক অ্যালগরিদম বলছেন তাতে আমি বিভ্রান্ত হয়ে পড়েছি। পিডি, পিআইডি, ইত্যাদি, নিয়ন্ত্রকরা হিউরিস্টিক বা স্টোকাস্টিক পদ্ধতি নয় এবং এগুলি বিবর্তনীয় অ্যালগরিদমের ভিত্তিতে নয়। পরিবর্তে, নির্ধারিত অ্যালগরিদমগুলি হ'ল সিস্টেম প্রতিক্রিয়াটির খুঁটি এবং শূন্য স্থাপনের জন্য কাঙ্ক্ষিত কর্মক্ষমতা (ত্রুটি হ্রাস, প্রতিক্রিয়ার গতি, নিষ্পত্তি করার সময়, স্থিতিশীলতা এবং বিশৃঙ্খলা প্রত্যাখ্যান) স্থাপনের উদ্দেশ্যে। আমার মতে, একটি ভাল শিক্ষার রেফারেন্স হ'ল কুয়ের স্বয়ংক্রিয় নিয়ন্ত্রণ ব্যবস্থা বই Control রাভেনের অটোমেটিক কন্ট্রোল ইঞ্জিনিয়ারিং বইতে আপনি কম কঠোর চিকিত্সা পেতে পারেন ।


আমি জেনেটিক অ্যালগরিদম (জিএ) এর সাথে পরিচিত নই। আমি কেবল কিছু কাগজপত্র দেখেছি দাবি করেছে যে তাদের নিয়ন্ত্রণকারীদের টিউনিং অংশ জিএ ব্যবহার করে সম্পন্ন হয়েছে। এই বিষয়ে তাদের কাগজপত্রগুলিতে আর কোনও বিবরণ নেই। আমি জানিনা যে জিএ কী এবং আমি কীভাবে এটি ব্যবহার করতে পারি।
ক্রোকো

প্যারামিটার টিউনিংয়ের জন্য বিবর্তনীয় পদ্ধতি ব্যবহার করা খুব সাধারণ কৌশল। আপনি যে বিশ্লেষণাত্মক পদ্ধতির বর্ণনা করছেন তার বিকল্প বিকল্প হিসাবে বিবেচনা করব।
জ্যাকব
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.