কম্পিউটারপ্রোগ্রামিং

ডায়নামিক প্রোগ্রামিং, মৌলিক নীতি

সন্তোষজনক সমাধান নির্বাচন করতে যখন কর্ম প্রভাবিত প্রোগ্রামিং কর্ম কখনও কখনও যে ব্যক্তিগত কম্পিউটার স্মৃতির লোড ডেটা সমন্বয় বিশাল পরিমাণ বাছাই করার প্রয়োজন হয়। ধরনের পদ্ধতি উদাহরণস্বরূপ, "ডিভাইড অ্যান্ড রুল" এর প্রোগ্রামিং পদ্ধতি, অন্তর্ভুক্ত। এই ক্ষেত্রে অ্যালগরিদম পৃথক ছোট subtasks মধ্যে বিচ্ছেদ সমস্যা প্রদান করে। এই পদ্ধতি কেবলমাত্র সেই ক্ষেত্রে যেখানে ছোট subtasks পারস্পরিক স্বাধীন মধ্যে প্রযোজ্য। যদি পরস্পরের উপর নির্ভরশীল উপ-কার্য অপ্রয়োজনীয় কাজ সম্পাদন এড়াতে, 50s মধ্যে আমেরিকান R.Bellmanom প্রস্তাবিত গতিশীল প্রোগ্রামিং পদ্ধতি ব্যবহার করে।

পদ্ধতি

ডায়নামিক প্রোগ্রামিং সন্তোষজনক সমাধান এন-মাত্রিক সমস্যা নির্ধারণ করতে, তার এন পৃথক পর্যায়ে ভাগ করছে। তাদের প্রত্যেকের রয়েছে পরিবর্তনশীল থেকে সম্মান সঙ্গে একটি উপ-কাজ।

এই পদ্ধতির প্রধান সুবিধা হলো ডেভেলপারদের এক-মাত্রিক অপ্টিমাইজেশান সমস্যা জড়িত একটি N- মাত্রিক সমস্যা পরিবর্তে subtasks, এবং আমাদের প্রাথমিক উদ্দেশ্য "নীচে আপ" যাচ্ছে বিবেচনা করা যেতে পারে।

এটা তোলে সেই ক্ষেত্রে যেখানে উপ-কার্য পরস্পরের সাথে যুক্ত থাকে, অর্থাত্ গতিশীল প্রোগ্রামিং প্রয়োগ করা বাঞ্ছনীয় সাধারণ মডিউল শেয়ার করুন। অ্যালগরিদম একবার subtasks প্রতিটি সিদ্ধান্ত প্রদান করে, এবং সংরক্ষণ প্রতিক্রিয়া একটি বিশেষ টেবিল সঞ্চালিত হয়। এটি একটি উত্তর নিরূপণ করা না, যখন সেগুলি একই সাব-টাস্ক দিয়ে আবার পূরণ এটা সম্ভব করে তোলে।

ডায়নামিক প্রোগ্রামিং কাজের সমস্যা solves অপ্টিমাইজেশান করুন। এই পদ্ধতি লেখক আর বেলম্যান optimality নীতি দ্বারা প্রণয়ন করা হয়েছে: যাই হোক না কেন, পদক্ষেপ এবং সমাধান এই পদক্ষেপ সংজ্ঞায়িত প্রতিটি প্রাথমিক রাষ্ট্র রাষ্ট্র, যা ধাপে শেষে সিস্টেম পায় সম্পর্কিত অনুকূল পছন্দ করে নিন নিম্নলিখিত সব।

পদ্ধতি রূপগুলো, অথবা পুনরাবৃত্তির মাধ্যমে সমাধানকৃত অংকের কর্মক্ষমতা উন্নত।

বিল্ডিং কাজের অ্যালগরিদম

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

কখনও কখনও, 3 য় ধাপে প্রতিটি কার্যের অগ্রগতি কিছু অতিরিক্ত পটভূমির তথ্য মুখস্থ হয়। এই রিটার্ন স্ট্রোক বলা হয়।

আবেদন পদ্ধতি

যখন দুটি চরিত্রগত বৈশিষ্ট্য ডায়নামিক প্রোগ্রামিং প্রয়োগ করা হয়:

  • subtasks জন্য অনুকূল;
  • subproblems ওভারল্যাপিং সমস্যা উপস্থিতি।

গতিশীল প্রোগ্রামিং দ্বারা অপ্টিমাইজেশান সমস্যা সমাধান, আপনাকে প্রথমে সমাধান কাঠামো বর্ণনা করতে হবে। কাজের যদি সমাধান তার subtasks শ্রেষ্ঠ সিদ্ধান্ত স্থিরীকৃত হয় অনুকূল হতে হয়েছে। এই ক্ষেত্রে, এটা গতিশীল প্রোগ্রামিং ব্যবহার করা বাঞ্ছনীয়।

সমস্যা দ্বিতীয় সম্পত্তি, এই পদ্ধতি অপরিহার্য, - উপ-কার্য অল্প সংখ্যক। একই ওভারল্যাপিং উপ-সমস্যার ব্যবহার সমস্যার recursive সমাধান, যার সংখ্যা প্রাথমিক তথ্য আকারের উপর নির্ভর করে। উত্তর একটি বিশেষ টেবিল মধ্যে সংরক্ষিত হয়, প্রোগ্রাম এই তথ্য ব্যবহার করে সময় বাঁচায়।

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

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 bn.delachieve.com. Theme powered by WordPress.