উত্তল বহুভুজের অভ্যন্তরে সর্বাধিক অঞ্চল-আয়তক্ষেত্রটি কীভাবে খুঁজে পাবেন?


21

এই পোস্টে আমরা খুঁজছেন আলগোরিদিম / ধারনা কিভাবে এটি উপর সর্বাধিক-অঞ্চল-আয়তক্ষেত্র একটি ভিতরে উত্তল বহুভুজ

নিম্নলিখিত চিত্রটিতে সংখ্যাগুলি লাগানো আয়তক্ষেত্রগুলির ক্ষেত্র। যেমন দেখানো হয়েছে একটি কাঙ্ক্ষিত আয়তক্ষেত্র প্রতিটি মাত্রায় পরিবর্তিত হতে পারে এবং যে কোনও কোণেও হতে পারে।

সম্পাদনা:

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

এখানে চিত্র বর্ণনা লিখুন


1
আপনি কোন সফটওয়্যারটি ব্যবহার করছেন তা নির্দিষ্ট করতে পারবেন? এছাড়াও, আপনার কাজটি এ পর্যন্ত পোস্ট করুন বা আপনি যে সাধারণ পদ্ধতির সমাধান করেছেন সেটির জন্য পোস্ট করুন। আপনি ইতিমধ্যে যা করেছেন কেউ হয়তো উন্নতি করতে পারে। আমার অভিজ্ঞতায় এর ফলে কেবল "নীল বাইরে" একটি প্রশ্ন পোস্ট করার চেয়ে অনেক বেশি দরকারী উত্তর পাওয়া যাবে।
মার্টিন

1
নিবিড়ভাবে সম্পর্কিত: gis.stackexchange.com/questions/22895/…
whuber

@ মার্টিন সফটওয়্যার: প্রয়োজনে প্রোগ্রামিং Pythonতখন হবে Fortran। আমরা একটি অনুমান আমাদের আগের পোস্টে ভিত্তিক যে আছে এখানে উপরের উল্লেখ whuberযে বহুভুজ সঙ্গে সাধারণ একটি প্রান্ত একটি উত্তর হবে সঙ্গে একটি আয়তক্ষেত্র হতে পারে।
বিকাশকারী

1
আপনার সমস্যাটি সত্যিই একটি আকর্ষণীয় এবং আমি মনে করি যে আমি এখানে এবং এখানে একটি সমাধান অ্যালগরিদম খুঁজে পেতে পেরেছি ।
nickves

1
@ নিকভস লিঙ্কগুলির জন্য ধন্যবাদ। আপনি কি দয়া করে অ্যালগরিদমের কিছুটা ব্যাখ্যা দিয়ে এই তথ্যগুলিকে উত্তর হিসাবে রাখবেন? এটি সম্ভবত গ্রহণযোগ্য হওয়ার জন্য একটি ভাল উত্তর হবে।
বিকাশকারী

উত্তর:


4

কিছু মন্তব্য নোট করার জন্য খুব বড় নোট (যদিও এটি সুস্পষ্ট অ্যালগরিদমের প্রস্তাব দেয় না):

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

আমি এটিকে চারটি ধাপে প্রমাণ করেছি:

দ্রষ্টব্য # 1 : সর্বাধিক ক্ষেত্রের আয়তক্ষেত্রের কমপক্ষে একটি ভার্টেক্স সর্বদা বহুভুজের সীমানায় অবস্থিত। এটি বেশ সুস্পষ্ট, তবে একটি প্রমাণ এর মতো হতে পারে (বিপরীতে): ধরুন আপনার বহুভুজের সীমানায় কোনও বিন্দুবিহীন একটি "সর্বাধিক" আয়তক্ষেত্র রয়েছে। তার মানে এর প্রতিটি বিভাজনের আশেপাশে কমপক্ষে একটি ছোট ঘর থাকবে। সুতরাং আপনি আপনার আয়তক্ষেত্রটিকে কিছুটা প্রসারিত করতে পারবেন, এর সর্বাধিকতার বিপরীতে।

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

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

দ্রষ্টব্য # 4 : (সম্পাদিত) সর্বাধিক ক্ষেত্রের আয়তক্ষেত্রটি বর্গক্ষেত্র না হলে এর তিনটি উল্লম্ব বহুভুজের সীমানায় থাকবে।

প্রমাণ করার জন্য, ধরুন এটি তেমনটি নয়, অর্থাত্ সর্বোচ্চ আয়তক্ষেত্রটি বর্গক্ষেত্র নয়, তবে এর দুটি শীর্ষকোষটি বহুভুজের সীমানায় রয়েছে। সর্বাধিকতার বিপরীতে কীভাবে একটি বড় আয়তক্ষেত্র তৈরি করবেন তা আমি দেখাব।

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

একটি নতুন আয়তক্ষেত্র নির্মাণ

সেই প্রমাণটি বিশ্বাস করার জন্য, আপনাকে নিজেকে বোঝাতে হবে যে একটি বৃত্তের মধ্যে লিখিত আয়তক্ষেত্রের ক্ষেত্রটি "আরও বর্গক্ষেত্র" হওয়ার সাথে সাথে বৃদ্ধি পেয়েছে (যেমন প্রান্ত দৈর্ঘ্যের মধ্যে পার্থক্য আরও ছোট হয়) gets উত্তেজক হওয়ার জন্য আপনার বহুভুজটিও দরকার যাতে নতুন লাইনগুলি এর মধ্যে থাকে। এবং আরও কম কিছু বিশৃঙ্খলা কম্বলটির নিচে প্রবাহিত হতে পারে, কিন্তু আমি মোটামুটি নিশ্চিত যে তারা সব কাজ করে।


নোট # 4 টি মাছ ধরা, কারণ "উইগলিং" অন্য দুটি উল্লম্বটি অ-আয়তক্ষেত্র তৈরি করবে।
হোবার

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

আমি বিশ্বাস করি যে # 4 নোট করার জন্য প্রতিবিম্ব রয়েছে। আমি যেগুলি খুঁজে পেয়েছি তা দেখানোর জন্য কিছু জড়িত গণনা নেয়, যদিও; সর্বাধিক সরল হ'ল একটি অনিয়মিত ষড়্ভুজক (দুটি বিপরীত কোণে সামান্য কাটা একটি বর্গ) per
whuber

সম্মত হয়েছেন যে নোট # 4 টি মৎসকুল। আমি এই সন্ধ্যায় কাছাকাছি ঘুরে দেখব এবং হয় এটি ঠিক করুন বা এটি অপসারণ করুন।
সিএসডি

+1 এটি একটি জটিল সমাধান। সম্পাদনার জন্য ধন্যবাদ!
whuber

3

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


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

প্রকৃতপক্ষে (আমার এখনই একটি বড় সন্দেহ আছে ), এই বহুভুজের বাহ্যিক ক্ষুদ্রতম আয়তক্ষেত্রটি ( এই পোস্ট থেকে প্রাপ্তরা) কোনও এক পক্ষের মতো একই দিকনির্দেশ পায়নি, আছে কি? (আমি এটিকে আমার লাল আয়তক্ষেত্রের মতো একই দৃষ্টিভঙ্গি দেখতে চাই)
সারিক

3
যে বহুভুজ উপায় দ্বারা উত্তল নয়। মূল প্রশ্নটি উত্তল বহুভুজগুলিতে সীমাবদ্ধ করে না।
সিএসডি

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

2

বেশিরভাগ অন্যান্য অ্যালগরিদমগুলি উত্তল বহুভুজের মধ্যে সর্বাধিক ক্ষেত্রের পুনর্গঠনকারী আয়তক্ষেত্রটি খুঁজে পায় এবং এর জটিলতা থাকে O(log n)। আপনার অনুমানটি আমি অনুমান করি না যে সর্বাধিক অঞ্চল বহুভুজের একটির সাথে একত্রিত করা সঠিক, কারণ আপনাকে যা করার দরকার তা হ'ল বহুভুজ nসময়কে ঘুরিয়ে দেওয়া , যার ফলে জটিলতা তৈরি হয়েছিল O(n log n)এবং আমার সংক্ষিপ্ত গবেষণায় আমি পারিনি এটি সহজ ছিল বলে কিছু খুঁজে।

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

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


প্রথম বাক্যে সম্ভবত টাইপো আছে? কোনও ও (লগ (এন)) অ্যালগরিদম সম্ভবত থাকতে পারে না কারণ কেবল স্থানাঙ্কগুলিতে পড়া একটি হে (এন) অপারেশন!
হোবার

লিঙ্কটি মারা গেছে
বিপজ্জনক

1
@ এঞ্জেনজারডেভ - যদিও দীর্ঘকাল স্থায়ী হয় তার জন্য একটি বিকল্প লিঙ্ক পাওয়া গেছে ....
মুক্তিদাতা
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.