ড্রোলস টিউটোরিয়াল: ড্রুলস রুল ইঞ্জিনের আর্কিটেকচার এবং উদাহরণ

ড্রোলস কি?

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

ড্রোলস অ্যাপাচি লাইসেন্স 2.0 এর অধীনে মুক্তি পেয়েছিল এবং এটি যেকোনো JVM- এর সাথে সামঞ্জস্যপূর্ণ এবং মাভেন সেন্ট্রাল রিপোজিটরিতেও পাওয়া যায়।

ড্রোলস টুল আপনাকে বিজনেস প্রসেসে পাওয়া লজিক এবং ডেটার উপর আলাদা এবং যুক্তি করতে সাহায্য করে। এটি ফরওয়ার্ড এবং ব্যাকওয়ার্ড চেইন ইনফারেন্স-ভিত্তিক ড্রোলস রুলস ইঞ্জিন সমর্থন করে।

ড্রুল দুটি ভাগে বিভক্ত: লেখক এবং রানটাইম।

  • লেখক - এটি নিয়ম ফাইল উন্নয়ন জড়িত।
  • রানটাইম - এটি কার্যকরী মেমরি তৈরি এবং সক্রিয়করণ পরিচালনা করে।

নতুনদের জন্য এই ড্রোলস টিউটোরিয়ালে, আপনি শিখবেন:

নিয়ম কি?

নিয়মগুলি জ্ঞানের অংশ যা প্রায়শই প্রকাশ করা হয়, 'যখন নির্দিষ্ট শর্ত দেখা দেয়, তখন কিছু কাজ করুন।'

একটি নিয়মের সবচেয়ে গুরুত্বপূর্ণ অংশ হল এটি কখন অংশ একদা কখন অংশ সন্তুষ্ট, তারপর অংশ ট্রিগার করা হয়

সিনট্যাক্স: | _+_ |

প্যাটার্ন ম্যাচিং পদ্ধতি:

প্যাটার্ন ম্যাচিং পদ্ধতি আপনাকে নতুন বা পুরাতন তথ্য উৎপাদনের নিয়মের সাথে তুলনা করতে সাহায্য করে। এটি ইনফারেন্স ইঞ্জিন দ্বারা সম্পন্ন হয়।

প্যাটার্ন মিলের জন্য ব্যবহৃত অ্যালগরিদম হল:

  • অ্যালগরিদম নেটওয়ার্ক
  • লিপস অ্যালগরিদম
  • লিনিয়ার অ্যালগরিদম
  • অ্যালগরিদম ব্যবহার করুন

যাইহোক, অ্যালগরিদম বেশিরভাগই ড্রুলস দ্বারা ব্যবহৃত হয় রিট অ্যালগরিদম।

অ্যালগরিদম নেটওয়ার্ক

Rete অ্যালগরিদম একটি দরকারী প্যাটার্ন মিলে অ্যালগরিদম যা আপনাকে উত্পাদন নিয়ম সিস্টেম বাস্তবায়ন করতে দেয়। এটি আপনাকে বাড়তি গতির জন্য স্মৃতি বিসর্জন দিতে সাহায্য করে। এটি নোড শেয়ারিংয়ের সাহায্যে নির্দিষ্ট ধরনের অপ্রয়োজনীয়তা হ্রাস বা নির্মূল করে। এটি বিভিন্ন ফ্যাক্ট টাইপের মধ্যে যোগদান করার সময় আংশিক ম্যাচ সঞ্চয় করে।

ড্রোলস রুল ইঞ্জিন

ড্রোলস রুল ইঞ্জিন ড্রোলস সফটওয়্যারে একটি বিশেষজ্ঞ সিস্টেম বাস্তবায়নের নিয়ম-ভিত্তিক পদ্ধতি। রুল ইঞ্জিন বিশেষজ্ঞ সিস্টেম প্রদান করে যা জ্ঞান ভিত্তিক সিস্টেম যা আপনাকে কি করতে হবে এবং কিভাবে করতে হবে এর মত সিদ্ধান্ত নিতে সাহায্য করে। এটি জ্ঞানকে একটি জ্ঞানের ভিত্তিতে সংগ্রহ করে যা যুক্তির জন্য ব্যবহার করা যেতে পারে।

ড্রুলস টুলস স্যুট

এখন এই ড্রোলস রুল ইঞ্জিন টিউটোরিয়ালে আমরা ড্রুলস টুল স্যুট সম্পর্কে জানব। এখানে, পাঁচ ধরণের সরঞ্জাম রয়েছে যা ড্রোলস স্যুটের অংশ হিসাবে আসে:

  • ড্রোলস গুভনর : এটি Drools KnowledgeBase এর জন্য একটি কেন্দ্রীয় ভান্ডার।
  • ড্রলস প্রবাহ : এটি কর্মপ্রবাহ এবং ব্যবসায়িক প্রক্রিয়া প্রদান করে।
  • ড্রোলস ফিউশন : জটিল ইভেন্ট প্রক্রিয়াকরণের জন্য ব্যবহৃত টুল
  • ড্রোলস এক্সপার্ট বা রুলস ইঞ্জিন : যুক্তি সম্পাদনের জন্য একটি দরকারী হাতিয়ার।
  • ড্রোলস প্ল্যানার: স্বয়ংক্রিয় পরিকল্পনার প্রস্তাব দেওয়া, যার মধ্যে রয়েছে NP- কঠিন পরিকল্পনা সমস্যা।

ড্রোলসে গুরুত্বপূর্ণ উপাদান

এখন এই ড্রোলস টিউটোরিয়ালে, আসুন ড্রোলসের গুরুত্বপূর্ণ উপাদানগুলি সম্পর্কে শিখি।

এখানে, ড্রোলসে ব্যবহৃত অপরিহার্য পদগুলি রয়েছে:

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

ড্রুলের স্থাপত্য

ড্রোলস রুল ইঞ্জিন আর্কিটেকচার



এখানে ড্রোলস আর্কিটেকচারের কাজ পদ্ধতি:

ধাপ 1) নিয়মগুলি রুল বেসে লোড করা হয়, যা সব সময় পাওয়া যায়।

ধাপ ২) ঘটনাগুলোকে ওয়ার্কিং মেমরিতে দৃerted়ভাবে উল্লেখ করা হয় যেখানে সেগুলি সংশোধন বা প্রত্যাহার করা যেতে পারে।

ধাপ 3) উৎপাদনের নিয়মের বিপরীতে নতুন বা বিদ্যমান তথ্য মিলানোর প্রক্রিয়াটিকে প্যাটার্ন ম্যাচিং বলা হয়, যা নিয়ম ইঞ্জিন দ্বারা সম্পাদিত হয়।

ধাপ 4) এজেন্ডা আপনাকে দ্বন্দ্ব নিরসনের কৌশলের সাহায্যে দ্বন্দ্বমূলক নিয়মের কার্যকর আদেশ পরিচালনা করতে দেয়।

ড্রলের বৈশিষ্ট্য

ড্রলের গুরুত্বপূর্ণ বৈশিষ্ট্যগুলি এখানে:

  • আপনাকে ডায়নামিক লজিক থেকে অ্যাপ্লিকেশন আলাদা করতে সাহায্য করে
  • ঘোষণামূলক প্রোগ্রামিং
  • জ্ঞানের কেন্দ্রীকরণ
  • গতি এবং মাপযোগ্যতা
  • আবেদন থেকে যুক্তি আলাদা করুন
  • বোধগম্য নিয়ম

কিভাবে Eclipse এ Drools প্লাগইন যোগ করা যায়

এখন এই ড্রোলস টিউটোরিয়ালে, আসুন কিভাবে Eclipse এ Drools প্লাগইন যোগ করতে হয় তা শিখি।

ধাপ 1) যাও লিঙ্ক এবং jBPM ইন্টিগ্রেশনের জন্য 'ডিস্ট্রিবিউশন জিপ' ক্লিক করুন। একবার ডাউনলোড হয়ে গেলে এটি আপনার হার্ড ড্রাইভে বের করুন

ধাপ ২) Eclipse এ, নতুন সফটওয়্যার ইনস্টল করুন নির্বাচন করুন

ধাপ 3) Add এ ক্লিক করুন

ধাপ 4) পরের পর্দায়,

  1. লোকাল এ ক্লিক করুন
  2. 'Org.drools.updatesite/' ফোল্ডার নির্বাচন করুন
  3. ঠিক আছে ক্লিক করুন

ধাপ 5) পরবর্তী ক্লিক করুন

ধাপ 6) লাইসেন্স চুক্তি গ্রহণ করুন এবং পরবর্তী ক্লিক করুন

ধাপ 7) সফটওয়্যার ডাউনলোড হবে এবং আপনাকে গ্রহন রিবুট করতে বলা হবে

ধাপ 8) উইন্ডোজ> পছন্দসই মেনুতে, আপনি Drools বিকল্পটি দেখতে পাবেন যে এটি ইনস্টল করা আছে।

ড্রোলস প্রোগ্রাম হ্যালো ওয়ার্ল্ড উদাহরণ

নীচে হ্যালো ওয়ার্ল্ড প্রোগ্রামের জন্য একটি ড্রোলস উদাহরণ: | _+_ |

ব্যাকওয়ার্ড বনাম ফরওয়ার্ড চেইন কি?

একটি ফরওয়ার্ড-চেইন ইঞ্জিন সত্যতা যাচাই করে এবং একটি নির্দিষ্ট উপসংহার লাভ করে।

আসুন চিকিৎসা নির্ণয়ের পদ্ধতির একটি দৃশ্য বিবেচনা করি। যদি রোগীর উপসর্গগুলোকে কার্যকারী স্মৃতিতে সত্য হিসেবে রাখা হয়, তাহলে তাকে অসুস্থতা নির্ণয় করা সহজ।

একটি পশ্চাদপদ চেইন ইঞ্জিনের নির্ধারিত লক্ষ্য রয়েছে এবং ইঞ্জিন এটিকে সন্তুষ্ট করার চেষ্টা করে।

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

কেন ড্রোলস রুল ইঞ্জিন ব্যবহার করবেন?

এখানে, ড্রোলস নিয়ম ইঞ্জিন ব্যবহারের প্রধান কারণগুলি হল:

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

নিয়ম ইঞ্জিনের অসুবিধা

এখানে, নিয়ম ইঞ্জিন ব্যবহারের অসুবিধা/ অসুবিধা রয়েছে:

  • প্রোগ্রামিংয়ের এই পদ্ধতিটি জানতে ডেভেলপারদের প্রচুর শিক্ষার প্রচেষ্টা প্রয়োজন
  • সমস্যা সমাধানের জন্য রুল ইঞ্জিন একটি নিরাপদ পদ্ধতি নয়।
  • আরো মেমরি খরচ করার জন্য নিয়ম ইঞ্জিনের কাজ বুঝতে হবে
  • একটি জটিল শাখার জন্য বিস্তৃত নিয়ম রয়েছে।

নিয়মগুলি সময়ের সাথে পরিবর্তিত হতে পারে এবং কোড পরিবর্তনের সাথে কার্যকর হবে

সারসংক্ষেপ

  • JBoss Drools হল একটি বিজনেস লজিক ইন্টিগ্রেশন প্ল্যাটফর্ম (BLiP)
  • ড্রোল টুলের প্রকারভেদ হল: ১) ড্রোলস গভনর 2) ড্রোলস ফ্লো 3) ড্রোলস ফিউশন 4) ড্রোলস এক্সপার্ট 5) ড্রুলস, প্ল্যানার।
  • ড্রুল আপনাকে ডায়নামিক লজিক থেকে অ্যাপ্লিকেশন আলাদা করতে সাহায্য করে।
  • ফ্যাক্ট ডেটার প্রতিনিধিত্ব করে যা নিয়মের জন্য ইনপুট হিসাবে কাজ করে।
  • ওয়ার্কিং মেমোরি হল ফ্যাক্টস সহ একটি স্টোরেজ, যেখানে সেগুলো প্যাটার্ন মিলের জন্য ব্যবহৃত হয়। এটি পরিবর্তন, সন্নিবেশ এবং অপসারণ করা যেতে পারে।
  • জ্ঞান ভিত্তি হল এমন একটি উপাদান যা ফায়ারিং রুলের জন্য প্রয়োজনীয় সকল সম্পদ ধারণ করে।
  • জ্ঞান অধিবেশন Drools বাস্তুতন্ত্রের জ্ঞান প্রতিনিধিত্ব করে।
  • নলেজ বেস ড্রোলস ইকোসিস্টেমের জ্ঞানের প্রতিনিধিত্ব করে।
  • মডিউল একাধিক জ্ঞান ঘাঁটি সঞ্চয় করে, যা বিভিন্ন সেশন করতে পারে।
  • নিয়মগুলি জ্ঞানের অংশ যা প্রায়শই প্রকাশ করা হয়, 'যখন নির্দিষ্ট শর্ত দেখা দেয়, তখন কিছু কাজ করুন।'
  • ড্রোলস একটি নিয়ম ইঞ্জিন যা একটি বিশেষজ্ঞ সিস্টেম বাস্তবায়নের জন্য একটি নিয়ম ভিত্তিক পদ্ধতি ব্যবহার করে।
  • একটি ফরওয়ার্ড-চেইন ইঞ্জিন সত্যতা যাচাই করে এবং একটি নির্দিষ্ট উপসংহার লাভ করে।
  • একটি পশ্চাদপদ চেইন ইঞ্জিনের নির্ধারিত লক্ষ্য রয়েছে এবং ইঞ্জিন এটিকে সন্তুষ্ট করার চেষ্টা করে।
  • Rete অ্যালগরিদম একটি দরকারী প্যাটার্ন মিলে অ্যালগরিদম যা আপনাকে উত্পাদন নিয়ম সিস্টেম বাস্তবায়ন করতে দেয়।
  • নিয়মগুলি ডেভেলপার এবং ব্যবসায় বিশ্লেষকদের জন্য সহজেই বোঝা যায়।
  • ড্রুলের মতো নিয়ম ইঞ্জিন ব্যবহার করার প্রধান অসুবিধা হল যে প্রোগ্রামিংয়ের এই পদ্ধতিটি জানতে ডেভেলপারদের অনেক শিক্ষার প্রচেষ্টা প্রয়োজন।