প্রায় সম্পাদনের ব্যয়। নিকটতম প্রতিবেশী একটি স্কিপ চতুর্ভুজ অনুসন্ধান


10

দ্রষ্টব্য : আমার উত্তরগুলিতে প্রশ্নটি পুনঃস্থাপন করা হয়েছে: ধরে নিই যে এখন আমরা সময়ের মধ্যে সবচেয়ে কম ভাইবোনের পূর্বপুরুষদের খুঁজে পেতে পারি, এএনএন কি সত্যই সম্পাদিত হতে পারে ?( লগ এন )O(1)O(logn)


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

তাদের অ্যালগরিদমটি কাজ করার জন্য, প্রত্যেকটি নোডের জন্য একজনকে বজায় রাখতে হবে - কমপক্ষে দুটি অ-খালি কোয়াড্রেন্ট সহ একটি বর্গক্ষেত্র - চারটি দিকের প্রতিটি উত্তর (উত্তর, পশ্চিম, দক্ষিণের) পূর্ববর্তী নোডের প্রতিটি নিম্নতম (স্তরক্রমের নিকটতম) পয়েন্টার , পূর্ব)। এগুলি নোডের পশ্চিম দিকের পূর্বপুরুষের জন্য সবুজ তীর দ্বারা নির্দেশিত (পূর্বপুরুষের স্কোয়ারের কেন্দ্রে তীর পয়েন্ট)।

কাগজ দাবি করেছে যে এই পয়েন্টারগুলিকে O (1) এ পয়েন্ট সন্নিবেশ এবং মোছার সময় আপডেট করা যেতে পারে। তবে সবুজ পয়েন্টের সন্নিবেশের দিকে তাকানোর সময় মনে হয় যে কোনও পয়েন্টারের স্বেচ্ছাসেবী সংখ্যার আপডেট করতে হবে, এই ক্ষেত্রে তাদের মধ্যে ছয়টি।

আমি স্থির সময়ে এই পয়েন্টার আপডেটটি করার কোনও কৌশল আশা করি। হয়তো ইন্ডিয়ারেশনের কোনও ফর্ম রয়েছে যা কাজে লাগানো যেতে পারে?

চতুর্ভুজটি পূর্বে (বাম) এবং পরে (ডান) পয়েন্ট সন্নিবেশ

সম্পাদনা করুন:

কাগজ থেকে প্রাসঙ্গিক অধ্যায়, 6.3 যেখানে এটি সার্চ: "যদি পথ নুয়ে আছে, তারপর ছাড়াও সব চেয়ে কম পূর্বপুরুষদের , আমরা প্রত্যেকের জন্য বিবেচনা করা উচিত দিকনির্দেশ সর্বনিম্ন পূর্বপুরুষ যে দিকের দিকে যায় [...] থেকে এই বর্গগুলি সন্ধান করা সময়ে প্রতি বর্গক্ষেত্রে করা যেতে পারে যদি আমরা প্রতিটি দিকের জন্য নিকটতম পূর্বপুরুষদের দিকে ইশারা করে প্রতিটি স্কোয়ারে পয়েন্টার যুক্ত করি তবে "এই পয়েন্টারগুলি কোনও বিন্দু সন্নিবেশ বা মোছার সময় সময়ে আপডেট করা যেতে পারে ।"log(c/ε)q2dqqO(1)2dQ0O(1)

[২]: ইপস্টিন, ডি এবং গুডরিচ, এমটি এবং সান, জেজেড, "স্কিপ কোয়াড্ট্রি: মাল্টিডিমেনশনাল ডেটার জন্য একটি সাধারণ গতিশীল ডেটা স্ট্রাকচার," কম্পিউটারের জ্যামিতির একুশতম বার্ষিক সিম্পোজিয়ামের প্রসেসিং, পিপি 296 29305 , 2005।


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

2
হাই ডেভিড, একবার দেখার জন্য ধন্যবাদ। এএনএন অনুসন্ধান শেষ বিভাগ (6)। সমস্যা ডুমুর মধ্যে নির্দেশিত হয়। ((খ) উপরের উদাহরণে আমি প্রায় আঁকড়ে ধরেছি, যদি Q নীচে বামদিকে থাকে is অংশটি 6.3 থেকে পাঠ্যের নির্দিষ্ট অংশটি অন্তর্ভুক্ত করার জন্য আমি প্রশ্নটি সম্পাদনা করেছি। সাম্য বোধের সংজ্ঞা দিয়ে কীভাবে আমি শিথিল হতে পারি সে সম্পর্কে আমার কিছু ধারণা রয়েছে তবে আমি নিশ্চিত নই যে আমি প্রমাণ করতে পারি যে কোনও বিকল্প গণনা লক্ষ্যবস্তু কর্মক্ষমতা লঙ্ঘন করে না ...
0__

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

2
গ্রেট, আপনাকে অনেক ধন্যবাদ. চরিত্র গণনা এবং বিন্যাসের কারণে, আমি একটি উত্তর যুক্ত করব যা আমার 'স্বজ্ঞাত ধারণাটি' স্কেচ করে, সম্ভবত এটি একটি সূচনা পয়েন্ট।
0__

উত্তর:


11

ডেভিডের মতো, আমি জানি না কেন জোনাথন 2 poin ডি পয়েন্টার সম্পর্কে সেই মন্তব্য করেছিলেন। তাদের প্রয়োজন হয় না। ডেভিড উপরে উল্লিখিত হিসাবে, অপরিহার্য সম্পত্তি হ'ল আমরা যখন Q_0 এর পাতায় v বিন্দুতে অবস্থান করি তখন স্কিপ চতুষ্কোণে থাকা ভাইবোনের নোডগুলি (এবং তাদের বাক্সগুলি) মনে রাখা যথেষ্ট। আমরা যখন পি থেকে কোনও বাক্স প্রক্রিয়া করি, তখন নীচে নামার সাথে সাথে ভাইবোন বাক্সগুলি সন্নিবেশ করে আমরা আমাদের ক্যোয়ারী পয়েন্টের নিকটবর্তী পাতার বাক্সের জন্য একটি পয়েন্ট অবস্থান করি। মনে হচ্ছে এটি আপনার উত্তর হিসাবে কম বা কম একই রকম হবে। এছাড়াও, এই পদ্ধতিটি খুব অনুরূপ, উদাহরণস্বরূপ, নীচের কাগজটিতে আনুমানিক পয়েন্ট অবস্থানটি কীভাবে করা হয়: আর্য, সুনীল এবং মাউন্ট, ডেভিড এম এবং নেতানিয়াহু, নাথান এস এবং সিলভারম্যান, রুথ এবং উ, অ্যাঞ্জেলা ওয়াই, "নির্ধারিত মাত্রাগুলি সন্ধানের আনুমানিক নিকটতম প্রতিবেশীর জন্য একটি অনুকূল অ্যালগরিদম", জ্যাকএএম, 1998 Indeed


এটা ভাল সংবাদ! আমি ঠিক নিশ্চিত ছিলাম না যে গো-ডাউন-স্টেপ চলাকালীন ভাইবোনদের যুক্ত করা সামগ্রিকভাবে সবচেয়ে খারাপ ক্ষেত্রে ব্যয়ের সীমা পরিবর্তন করবে কিনা, তবে আমি মনে করি না। আমি আরিয়া ইত্যাদি আলমের কাগজটি দেখেছি, তবে আমি এটি আপনার চতুর্থ পত্রিকার চেয়ে অনেক কম অ্যাক্সেসযোগ্য দেখতে পেয়েছি :)
0__

5
কি দারুন! Cstheory.SE এ স্বাগতম!
হিসিয়েন-চিহ চাং 之 之

5

স্ক্রিপ কোয়াডট্রি সম্পর্কে যে কোনও জ্যাপ-অর্ডার অনুসারে পয়েন্টগুলি সংরক্ষণ করে ডেটা-কাঠামোর স্কিপ-তালিকা বাস্তবায়ন হিসাবে ভাবতে পারেন। এটি (তর্কযুক্ত) কমপক্ষে ধারণাগতভাবে সহজ ...

২ য় অধ্যায়টি এখানে দেখুন: http://goo.gl/pLiEO

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


3
হ্যাঁ, এবং ডিস্ট্রিমেন্টিক রূপগুলি একই জেড-অর্ডারের জন্য অনেকগুলি 2-3 গাছের মতো।
ডেভিড এপস্টিন

লিঙ্কটির জন্য ধন্যবাদ, আমি আপনার কাগজটি আগে দেখেছি indeed যাই হোক না কেন, আমি উত্সর্গীকৃত প্রদত্ত অ্যালগরিদমের সাথে আবদ্ধতা যাচাই করতে পারিনি। আমার অনুভূতি আছে যে লেওমা 7-এর রেফারেন্সটি যা উপপাদ্য 13 এ রাউন্ডের সংখ্যাকে আবদ্ধ করার জন্য ব্যবহৃত হয়, এটি অবৈধ হতে পারে, কারণ এটি একটি ধ্রুবক ব্যাসার্ধ ধরে , যেখানে এএনএন-তে অনুসন্ধান ব্যাসার্ধ ক্রমবর্ধমান পরিবর্তিত হয় এবং তাই সমালোচনামূলক স্কোয়ার সেট। ? r
0__

ব্যাসার্ধ সুনির্দিষ্টভাবে অনুসন্ধানের সময় সঙ্কুচিত হয়। যুক্তিটি সঠিক বলে আমি যুক্তিযুক্ত আশাবাদী।
সারিল হার-পিল্ড

1

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

আমার ধারণা মোটামুটিভাবে হয় নিম্নরূপ: এছাড়া সেরা প্রার্থী বিন্দু থেকে (গাছের পাতা) , আমরা খারাপ দূরত্ব ট্র্যাক প্রতিটি রাউন্ডে রাখবেন, । সবচেয়ে খারাপ দূরত্ব কোয়েরি পয়েন্ট নোড এর সমস্ত কোণার সর্বাধিক দূরত্ব হতে হবে , যদিও কোনও বর্গের ভিতরে বা বাইরের বাইরে matterlbestrmaxdist(v,q)qvv

একটি বৃত্তাকারটি এরকম: খালি থাকলে , যদি কিছু থাকে তবে ফিরিয়ে দিন । তা না হলে ডিলিট-মিনিট বর্তমান দেয় মধ্যে । আরম্ভ থেকে (অথবা এটা সেট যদি কোন ভাল প্রার্থী এখনো পরিলক্ষিত হয়েছে)। প্রথমত, প্রতিটি খালি নয় এমন সন্তান পরীক্ষা মধ্যে । যদি এই শিশু টি একটি পাতা হয় তবে এবং প্রয়োজনে update আপডেট করুন । যদি একটি নোড হয় তবে এবং গণনা করুন হ'ল: শূন্য হয়, যদিPlbestp0Q0rmaxlbestp0Q0qlbestrmaxqdist(q,v)dist(q,v)v অভ্যন্তরে অবস্থিত বা থেকে এর সমস্ত কোণের সংক্ষিপ্ততম দূরত্ব ।qqv

যদি ভুলে যান , অন্যথায় এটি রাখুন। যদি রাখা নোডের সংখ্যা সেই দিকে চাপ দিন । রাউন্ডের সমাপ্তি।dist(q,v)>rmaxq2P

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

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


সম্পাদনা (এপ্রিল 2013)

আমি এখন উপরোক্ত অ্যালগরিদমের স্পষ্টতা নিয়ে আরও পরীক্ষা-নিরীক্ষা করেছি যা সম্পত্তির উপর ভিত্তি করে নোডের সমতুল্যকরণের পরিবর্তে 'ইকুইপোটেন্ট' নোডের সংজ্ঞা ব্যবহার করে, যে নোডে নেমে আসা বর্তমান ক্যোয়ারী আকারের দ্বারা আবৃত অঞ্চলটি পরিবর্তন করে না ।rmax

দুর্ভাগ্যক্রমে, কেউ প্যাথলজিকাল কেসগুলি তৈরি করতে পারে (নীচের চিত্রটি দেখুন; কোয়েরি পয়েন্টটি নীচের কেন্দ্র) যেখানে কর্মক্ষমতা রাউন্ডে অবনমিত হয়।O(n)

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


0

আমি এখন ইক্যুস্ট্যাবিলিং ভিত্তিক অ্যালগরিদম বাস্তবায়ন করেছি, যেখানে সবচেয়ে কম সহোদর পূর্বপুরুষরা ব্রুট-ফোর্স (একটি O (1) রূপ আবিষ্কার করার আগে) অনুসন্ধান করা হয়েছে, উপপাদিতিকে দাবি করা সর্বাধিক সংখ্যার রাউন্ডটি যাচাই করতে: ।O(ϵ1d(logn+logϵ1))

আমি আমার পূর্ববর্তী উত্তর থেকে "প্যাথলজিকাল" উদাহরণটি ব্যবহার করছি। দ্বিমাত্রিক মূল বর্গক্ষেত্রটির পাশের দৈর্ঘ্য 512, যেখানে কেন্দ্রের স্থানাঙ্ক (256, 256)। সমন্বয়গুলি পূর্ণসংখ্যায় দেওয়া হয়, যার ফলে একটি সোজা এগিয়ে । পয়েন্টগুলি মূল স্কোয়ার জুড়ে আনুভূমিকভাবে সমানভাবে স্থান করা হয় এবং কোয়েরি পয়েন্ট (256, 511) এ থাকে (নোট করুন যে 512 ইতিমধ্যে মূল বর্গাকার বাইরে) outsideϵ=1v

নীচের চিত্রটিতে, সম্পূর্ণ ট্রি টি দেখানো হয়েছে, এবং এই উদাহরণের পয়েন্টের সংখ্যা 16 টি। যা তারা ঠেলা হয়। আবিষ্কৃত লিফ পয়েন্টগুলিতে রাউন্ড নম্বর সহ লেবেলযুক্ত রয়েছে যার জন্য তারা হিসাব করা হয়। তিনটি স্বচ্ছ নীল চেনাশোনা 1 ম, দ্বিতীয় এবং 7 তম রাউন্ডের পরে পরিচিত এনএন ব্যাসার্ধকে নির্দেশ করে (নিকটতম প্রতিবেশীটি প্রথম 7 ম রাউন্ডে দেখা যায়)। মোট 12 টি রাউন্ড রয়েছে (সর্বশেষ 6 টি কেবল সারি থেকে পপ স্কোয়ারগুলি তবে নতুন কোনও স্কোয়ার যোগ করবেন না)।Q0

আমি এই উদাহরণটি ক্রমবর্ধমান বৃহত মূল স্কোয়ার এবং পয়েন্টের সংখ্যা দিয়ে চালিয়েছি, যেখানে পয়েন্টগুলির ব্যবধান একই থাকবে (32)। এটি চিত্র দ্বারা ইতিমধ্যে স্বজ্ঞাতভাবে যা দৃশ্যমান তা নিশ্চিত করেছে: অ্যালগরিদমের জন্য রাউন্ডের প্রয়োজন হয়, যেখানে এবং সহ উপপাদ্য 13 কেবলমাত্র রাউন্ডগুলির প্রয়োজন হবে।O(n)d=2ϵ=1O(logn)

সুতরাং যতক্ষণ না আমি গুরুত্বপূর্ণ কিছু মিস করছি, অ্যালগরিদম বর্ণিত গতি অর্জন করতে পারে না। কোন মন্তব্য বা ধারণা?

ট্র্যাভেরসাল

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