একটি নখর খোঁজার জন্য ম্যাট্রিক্সের গুণকে


20

একজন নখর একটি হল । একটি তুচ্ছ অ্যালগরিদম সময়ের মধ্যে একটি নখর সনাক্ত করবে । এটি , যেখানে দ্রুত ম্যাট্রিক্সের গুণকের সূচক হয়: নীচে প্রতিটি ভার্টেক্স জন্য দ্বারা অনুপ্রাণিত সাব-অনুচ্ছেদটি নিন এবং এর মধ্যে একটি ত্রিভুজটি সন্ধান করুন এর পরিপূরকK1,3O(n4)O(nω+1)ωN[v]v

যতদূর আমি জানি, এই বেসিক অ্যালগরিদমগুলি কেবল জানা যায়। স্পিনরাড তাঁর "দক্ষ গ্রাফের উপস্থাপনা" বইটিতে তালিকাভুক্ত সময় খোলা সমস্যা হিসাবে (8.3, পৃষ্ঠা 103) হিসাবে একটি নখর সনাক্তকরণ করেছে । নিম্ন সীমাটির জন্য, আমরা জানি যে একটি -কালীন অ্যালগরিদম একটি ত্রিভুজটি সন্ধানের জন্য একটি -কালীন অ্যালগরিদমকে বোঝায় ly সুতরাং আমরা একটি নিম্ন সীমা হিসাবে বিবেচনা করতে পারি ।o(nω+1)O(nc)O(nmax(c,2))Ω(nω)

প্রশ্ন:

  1. এ নিয়ে কি কোনও অগ্রগতি আছে? বা এটি অসম্ভব দেখিয়েছে কোন অগ্রগতি?
  2. ome -কালীন অ্যালগরিদমগুলির সাথে অন্য কোন প্রাকৃতিক সমস্যা রয়েছে যা সেরা?O(nω+1)

মন্তব্য:

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

আপনি ব্যবহার করতে পারেন । Alôn এট এর ত্রিভুজ খুঁজে বের করার পদ্ধতি , প্রতিটি নোডের যা এ শেষ যা গ্রাফিক খুব ঘন না হলে than চেয়ে ভাল । O(|E|1.41)O(|V||E|1.41)|V|ω+1
আরবি

@ আরবি, এটি নির্দেশ করার জন্য আপনাকে ধন্যবাদ। মূল ধারণাটি এখনও যেকোন-ত্রিভুজ-সনাক্তকরণ-অ্যালগরিদম বার চালানো, যা আমি এড়াতে চাই। n
Yixin Cao

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

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

1
@ ডমোটরপ, মনে হচ্ছে যে অংশটি পরিষ্কার, অন্য দিকের চারপাশে পরিষ্কার নয়, আমার অর্থ কেন আমাদের রৈখিক অনুসন্ধান প্রয়োজন। যিক্সিন যেমন উল্লেখ করেছেন, অন্য একটি অ্যালগরিদমও থাকতে পারে যা অ্যালগরিদম সন্ধানের ত্রিভুজ ব্যবহার করে না এবং , যা আমি মনে করি যে এই জাতীয় একটি অ্যালগরিদম খুঁজে পাওয়া খুব কঠিন এবং সম্ভবত এটি দেখানো আরও সহজ অ্যালগোরিদম তার উপর লিনিয়ার অনুসন্ধানের সাথে ত্রিভুজ অনুসন্ধানকে সাব্রুটিন (বা রূপান্তর করতে পারে) হিসাবে ব্যবহার করে। o(nω+1)
সাঈদ

উত্তর:


16

আমি মনে করি যে আমরা ঘন গ্রাফগুলির জন্য আয়তক্ষেত্রাকার ম্যাট্রিক্স গুণণের মাধ্যমে চেয়ে কিছুটা আরও ভাল করতে পারি । 4-চক্র সনাক্তকরণের জন্য আইসেনব্র্যান্ড এবং গ্র্যান্ডনি ("নির্দিষ্ট প্যারামিটার চক্র এবং প্রভাবশালী সেটগুলির জটিলতার উপর"), তাত্ত্বিক কম্পিউটার সায়েন্স ভলিউম 326 (2004) 57-67) অনুরূপ ধারণা ব্যবহার করেছিল।O(n1+ω)

যাক গ্রাফ যা আমরা একটি নখর অস্তিত্ব সনাক্ত করতে চান হও। A কে V এর মধ্যে (অর্ডারযুক্ত) জোড়ের জোড়ের সেট হতে দিন । নিম্নলিখিত বুলিয়ান ম্যাট্রিক্স বিবেচনা এম আকারের | ভি | × | | : প্রতিটি সারির কিছু দ্বারা সূচীবদ্ধ করা হয় তোমার দর্শন লগ করা ভী , প্রতিটি কলাম কিছু দ্বারা সূচীবদ্ধ করা হয় ( বনাম , W ) একজন , এবং সংশ্লিষ্ট এন্ট্রি এক যদি এবং কেবল যদি { U , V } G=(V,E)AVM|V|×|A|uV(v,w)A , { বনাম , W } এবং { U , W } এম এর বুলিয়ান ম্যাট্রিক্স পণ্যএবং এর ট্রান্সপোজ এম টি বিবেচনা করুন । গ্রাফ জি যদি এবং কেবল যদি অস্তিত্ব আছে একটি নখর হয়েছে { U , V } ধরনের এন্ট্রি যে এম এম টি সারি দ্বারা সূচীবদ্ধ মধ্যে U এবং কলাম দ্বারা সূচীবদ্ধ বনাম অন্যতম।{u,v}E{v,w}E{u,w}EMMTG{u,v}EMMTuv

এই অ্যালগরিদম জটিলতা মূলত একটি বুলিয়ান পণ্য কম্পিউটিং জটিলতা হয় একটি দ্বারা ম্যাট্রিক্স এন 2 × এন ম্যাট্রিক্স, যেখানে n হল গ্রাফে ছেদচিহ্ন সংখ্যা উল্লেখ করে। জানা যায় এই ধরনের একটি ম্যাট্রিক্স পণ্য সময় নির্ণিত করা যেতে পারে হে ( 3.3 ) , যা বেশী ভালো হে ( 1 + + ω ) সব থেকে বহুল পরিচিত জন্য উপরের উপর আবদ্ধ ω । অবশ্যই, যদি ω = 2 (অনুমান হিসাবে) তবে দুটি পদ্ধতির একই জটিলতা O দেয়n×n2n2×nnO(n3.3)O(n1+ω)ωω=2O(n3)


গ্রেট! আমার প্রথম প্রশ্নের জন্য ঠিক এটিই আমি চাই: ম্যাট্রিক্স গুণনের কেবল একটি কল, যদিও এটি আরও বড়। আমি আমার দ্বিতীয় প্রশ্নের উত্তর হিসাবে গ্রহণের আগে আরও মন্তব্য বা উত্তরের জন্য অপেক্ষা করব।
যিকসিন কাও

15

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

ক্লকস, টন; ক্রেটস, ডিয়েটার; মুলার, হাইকো (2000), "দক্ষতার সাথে ছোট ছোট অনুচ্ছেদগুলি সন্ধান করা এবং গণনা করা", ইনফরমেশন প্রসেসিং লেটারস 74 (3–4): 115–121, দোই: 10.1016 / এস 10020-0190 (00) 00047-8, এমআর 1761552।

প্রথম পর্যবেক্ষণটি হ'ল, যখন আপনি ম্যাট্রিক্সের গুণকে বাড়িয়ে যাচ্ছেন, তখন ম্যাট্রিকগুলি সত্যই হয় না , তবে d × d যেখানে ডি প্রতিটি বর্গক্ষেত্রের ডিগ্রি হয়, কারণ আপনি যা সন্ধান করছেন এটি একটি সহ ত্রিভুজ প্রতিটি শীর্ষবিন্দুর পাড়া।n×nd×dd

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

তদতিরিক্ত, প্রতিটি প্রান্তটি দুটি প্রান্তকে এর শেষপয়েন্টগুলির জন্য ম্যাট্রিক্স গুণমানের আকারে অবদান রাখতে পারে। সবচেয়ে খারাপ পরিস্থিতি ঘটে যখন এই ম্যাট্রিক্স গুণমান সমস্যার মোট আকারের O ( ) এ ছড়িয়ে যায় 2m(pro)আকারের সাব-সমস্যাগুলিO(m)প্রতিটি, যা(মি ( 1 + ω ) / 2 ) এরমোট সময়সীমা দেয়,আর বি দ্বারা উল্লিখিত(এনএম ω / 2 ) উপরের বিচ্ছিন্ন গ্রাফের জন্য একটি উন্নতি anO(m)O(m(1+ω)/2)O(nmω/2)


বাহ, এটি একটি চতুর ধারণা, আমি ভাবছিলাম সাবলাইনার অনুসন্ধান করা সম্ভব (আসলে এটি অস্বীকার করা) এবং সমস্যার অভ্যন্তরীণ বৈশিষ্ট্যগুলি সম্পর্কেও ভাবি নি।
Saeed

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