স্কোয়ার বা হেক্স গ্রিডগুলি কি পাথফাইন্ডিংয়ের জন্য আরও ভাল?


17

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


4
আপনার গেমপ্লে অনুসারে আপনার যা ব্যবহার করা উচিত তা ব্যবহার করা উচিত;)
অ্যান্ড্রু রাসেল

উত্তর:


19

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

বরং এটি গেমপ্লে সমস্যা যা গেম ডিজাইনারদের বিবেচনা করা উচিত। স্কয়ার গ্রিডগুলি ভর বাজারে আরও অ্যাক্সেসযোগ্য (হেক্স বোর্ডগুলি "গিকি" দেখায়) এবং উপরে / নীচে / বাম / ডান নিয়ন্ত্রণের বিশ্বে এটি কোনও ইউআই স্ট্যান্ডপয়েন্ট থেকে হেক্সের চেয়ে স্কোয়ারের চারদিকে নেভিগেট করা অনেক বেশি স্বজ্ঞাত। স্কয়ার গ্রিডগুলি আরও কিছুটা চলাচলে বাধা দেয়; অরথোগোনাল গতিবিধি (এবং তির্যক নয়) ধরে নেওয়া, এটি একটি হেক্স গ্রিডে 3 টি চালের তুলনায় এক বর্গাকার অন্তরায় ঘুরে দেখতে 4 টি পদক্ষেপ নেয়। প্রোগ্রামিং দৃষ্টিকোণ থেকে, হেক্সস প্রয়োগ করাও কিছুটা সহজ তবে এটি অনুসন্ধান অ্যালগরিদম সম্পর্কে নয় যতটা স্কোয়ার গ্রিড দ্বি-মাত্রিক অ্যারের সমান হয় না, তবে একটি হেক্স গ্রিড সত্যই কোনও স্ট্যান্ডার্ড ডেটা স্ট্রাকচারের মানচিত্র দেয় না।

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


4
+1 টি। এটি একটি ডিজাইনের সিদ্ধান্ত, এআইয়ের সিদ্ধান্ত নয়। আপনি যদি হেক্সাগোনাল গ্রিডগুলি চান তবে www-cs-students.stanford.edu/~amitp/game-pogramming/grids/… এর মতো অফসেট-স্কোয়ার গ্রিডটি নৈমিত্তিক খেলোয়াড়দের জন্য কম ভয় দেখানো হতে পারে এবং এটি গাণিতিকভাবে ষড়ভুজগুলির সমতুল্য। এছাড়াও, এটি মেমরির সুবিধার্থে একটি সুবিধাজনক।

2
"স্কয়ার গ্রিডগুলি গণবাজারে আরও অ্যাক্সেসযোগ্য (হেক্স বোর্ডগুলি" গিরিযুক্ত "দেখায়)": ডি
কর্নেল কিসেলিউইচস

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

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

4
কেবল একদিকে, হেক্সেসকে 2-মাত্রিক অ্যারে ম্যাপ করা যায়। স্কোয়ার গ্রিডের চিত্র দিন, তারপরে প্রতি কলামটি আধ ধাপ নীচে স্থানান্তর করুন। আপনি এখন একটি অফসেট স্কোয়ার গ্রিড পেয়েছেন, যা একটি হেক্স গ্রিডের কাছে isomorphic।
অসমর

3

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

তবে টার্ন-বেসড-স্ট্র্যাটেজি গেম লেভেলের মতো সরল বিশ্বের জন্য দুটি লেআউটের মধ্যে পার্থক্য খুব বেশি গুরুত্ব পাবে না; একটি বর্গ গ্রিড কিছুটা সহজ এবং দ্রুত হবে।


5
"স্কোয়ার গ্রিডগুলি কিছুটা দ্রুত (6 এর পরিবর্তে নোডের প্রতি 4 সংযোগ)" - আপনি যদি ত্রিভুজগুলি দিয়ে ভ্রমণ করতে না পারেন তবে এই ক্ষেত্রে এটি 8 টি বনাম 6 সংযোগ রয়েছে
ইয়ান শ্রায়বার

টাচ। আপনি পুরোপুরি ঠিক বলেছেন; অবশ্যই তির্যক সংযোগ সম্ভবত হবে।
গ্রেগরি অ্যাভেরি-ওয়েয়ার

3

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


0

হেক্সাগন সম্পর্কিত এই গাইডটি দুর্দান্ত। পাথফাইন্ডিংয়ের অংশটির একটি ইন্টারেক্টিভ উদাহরণ এবং বর্গক্ষেত্রের পথনির্দেশকে কীভাবে মানিয়ে নেওয়া যায় সে সম্পর্কে কিছু তথ্য রয়েছে।

আপনি যদি গ্রাফিক-ভিত্তিক পাথফাইন্ডিং ব্যবহার করছেন যেমন এ * বা ডিজকস্ট্রার অ্যালগরিদম বা ফ্লয়েড-ওয়ারশাল, হেক্স গ্রিডে পাথ ফাইন্ডিং স্কোয়ার গ্রিডে পাথ ফাইন্ডিংয়ের চেয়ে আলাদা নয়।

  • প্রতিবেশী. আমি প্যাথফাইন্ডিং টিউটোরিয়ালে যে নমুনা কোডটি সরবরাহ করি তা কোনও অবস্থানের প্রতিবেশীদের পেতে গ্রাফকে কল করে igh এর জন্য প্রতিবেশী বিভাগে ফাংশনটি ব্যবহার করুন। দুর্ভেদ্য যে প্রতিবেশীদের ফিল্টার।
  • অনুসন্ধানমূলক। এ * এর নমুনা কোডটি একটি হিউরিস্টিক ফাংশন ব্যবহার করে যা দুটি অবস্থানের মধ্যে একটি দূরত্ব দেয়। চলাচলের ব্যয় মেলাতে স্কেল করা দূরত্বের সূত্রটি ব্যবহার করুন। উদাহরণস্বরূপ, যদি আপনার চলাচলের ব্যয় হেক্স প্রতি 5 হয়, তবে দূরত্বটি 5 দিয়ে গুণ করুন।
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.