আপনি যা বলেছিলেন তার উপর ভিত্তি করে: আমি ধরে নিলাম আপনাকে 50 টি ভেরিয়েবলের জন্য অনুকূল করতে হবে; আমি এটিও ধরে নিয়েছি যে আপনার এমন একটি পরিস্থিতি রয়েছে যে বিশ্লেষণাত্মক ডেরিভেটিভগুলি খুঁজে পাওয়া খুব ব্যয়বহুল (এককভাবে সংখ্যাগুলি বের করা যাক) এবং আপনার অপ্টিমাইজেশনটি সংবিধানবিহীন।
আমাকে চাপ দিন, আপনি 25-30 থেকে 100 ভেরিয়েবলের মধ্যে কিছুটা দুর্ভাগ্যজনক কারণ হয়ে উঠুন যখন এটি বৃহত বা ছোট আকারের অপ্টিমাইজেশনের রুটিনগুলির মধ্যে বাছাইয়ের ক্ষেত্রে কিছুটা গোধূলি অঞ্চল is যদিও তা বলে, কিছুই হারিয়ে যায় না।
এমনকি প্রথম অর্ডার ডেরাইভেটিভ ব্যয়বহুল যে নিউটনের পদ্ধতির ধারণাটি মেরে ফেলেছে তা ব্যয় করে। আপনার কোসি-নিউটন (বিএফজিএস) এর সাথে আপনার ভাগ্য ভাল হতে পারে যদিও আপনার হেসিয়ানটি শুরু করার মতো কিছুটা তির্যক হলে। সিজি সাধারণত বিএফজিএস এর চেয়ে কিছুটা ধীর হয় তাই সম্ভবত জিনিসগুলিকে অনেক উন্নতি করা যায় না; মেমোরিটিও যদি সমস্যা হয় তবে এটি ব্যবহার করুন (বা কেবল সে ক্ষেত্রে এল-বিএফজিএসের জন্য যান)। আপনার ক্রিয়াকলাপটি মূল্যায়ন করতে কত ধীর গতিবেগ দেওয়া হয়েছে, একটি সরল খাড়া বংশোদ্ভূত / লাইন অনুসন্ধান অ্যালগরিদম অত্যাচারী ধীর হয়ে যাবে; সিমুলেটেড অ্যানিলিং এবং অন্যান্য এলোমেলো অনুসন্ধানের রূপগুলির সাথে একই জিনিস চলে যায় (আমি ধরে নিই যে আপনার এইচএমসি এবং সমস্ত জাজের অ্যাক্সেস নেই)।
সুতরাং, যখন আপনার একক ক্রিয়াকলাপের মূল্যায়নের বিষয়টি আপনার বকের জন্য সেরা ব্যাং দরকার তখন: পাওলের পদ্ধতির সাথে যান এবং কোবাইলাও পরীক্ষা করুন; সীমাবদ্ধ অপ্টিমাইজেশন অ্যালগরিদম হওয়া সত্ত্বেও এটি জিনিসগুলিকে গতিময় করার জন্য এটি অভ্যন্তরীণভাবে আপনার ফাংশনটির গ্রেডিয়েন্টকে রৈখিক করে তুলবে, এটি আপনার ফাংশনের লাইনারিটির সুবিধা নিতে সক্ষম হবে। এছাড়াও স্পষ্টভাবে চেষ্টা পাইথন জন্য NLopt । তাদের প্রচুর গ্রেডিয়েন্ট-মুক্ত অপ্টিমাইজার রয়েছে; ইউবাইকিউএ চেষ্টা করুন; এটিও পাওলের ব্রেইনচাইল্ড (চতুর্ভুজিক অনুমোদনের মাধ্যমে বেআইনী অপ্টিমাইজেশন)।
খুব সংক্ষেপে: এন-সিজি অ্যালগরিদমগুলি হেসিয়ান গণনার উপর নির্ভর করে এবং আপনার হেসিয়ান গণনা করা খুব ব্যয়বহুল বলে মনে হয়। এনএলসিজি এবং বিএফজিএস এর প্রয়োজন হয় না যদিও তাদের প্রথম ধাপে একবার এটি গণনা করার চেষ্টা করা যেতে পারে।
আমি উদ্দেশ্যটির ভিত্তিতে সিমপ্লেক্স অ্যালগরিদমটি ছেড়ে দিয়েছি কারণ এটি সম্পূর্ণ ভিন্ন জন্তু; যেমন গ্রেডিয়েন্টগুলির সাথে কিছুই করার নেই। এটি চেষ্টা করে দেখুন তবে আমি আসলে এটি সম্পর্কে মন্তব্য করতে পারি না; এটি সত্যিই আপনার সমস্যার প্রকৃতির উপর নির্ভরশীল।
সংখ্যাসূচক অপ্টিমাইজেশান সম্পর্কিত প্রথম ভাল রেফারেন্সের জন্য সিটিকেলির বই ইটিউটরিভ মেথডস ফর অপটিমাইজেশন আপনাকে বেশ সুন্দরভাবে পেয়েছে ।