A Branch-and-Bound Approach for Maximum Low-Diameter Dense Subgraph Problems
Zhou, Luo, Wang et al.
A graph with $n$ vertices is an $f(\cdot)$-dense graph if it has at least $f(n)$ edges, $f(\cdot)$ being a well-defined function. The notion $f(\cdot)$-dense graph encompasses various clique models like $γ$-quasi cliques, $k$-defective cliques, and dense cliques, arising in cohesive subgraph extraction applications. However, the $f(\cdot)$-dense graph may be disconnected or weakly connected. To conquer this, we study the problem of finding the largest $f(\cdot)$-dense subgraph with a diameter of at most two in the paper. Specifically, we present a decomposition-based branch-and-bound algorithm to optimally solve this problem. The key feature of the algorithm is a decomposition framework that breaks the graph into $n$ smaller subgraphs, allowing independent searches in each subgraph. We also introduce decomposition strategies including degeneracy and two-hop degeneracy orderings, alongside a branch-and-bound algorithm with a novel sorting-based upper bound to solve each subproblem. Worst-case complexity for each component is provided. Empirical results on 139 real-world graphs under two $f(\cdot)$ functions show our algorithm outperforms the MIP solver and pure branch-and-bound, solving nearly twice as many instances optimally within one hour.
academic
সর্বোচ্চ নিম্ন-ব্যাস ঘন উপগ্রাফ সমস্যার জন্য একটি শাখা-এবং-সীমাবদ্ধতা পদ্ধতি
শিরোনাম: সর্বোচ্চ নিম্ন-ব্যাস ঘন উপগ্রাফ সমস্যার জন্য একটি শাখা-এবং-সীমাবদ্ধতা পদ্ধতি
লেখক: Yi Zhou (ইলেকট্রনিক্স বিজ্ঞান ও প্রযুক্তি বিশ্ববিদ্যালয়, চীন), Chunyu Luo (ইলেকট্রনিক্স বিজ্ঞান ও প্রযুক্তি বিশ্ববিদ্যালয়, চীন), Zhengren Wang (পিকিং বিশ্ববিদ্যালয়), Zhang-Hua Fu (শেনজেন কৃত্রিম বুদ্ধিমত্তা এবং রোবোটিক্স সমাজ ইনস্টিটিউট, CUHK শেনজেন)
এই কাগজটি সর্বোচ্চ নিম্ন-ব্যাস f(·)-ঘন উপগ্রাফ সমস্যা (MfDS) অধ্যয়ন করে। f(·)-ঘন গ্রাফ হল এমন একটি গ্রাফ যার n টি শীর্ষবিন্দু এবং কমপক্ষে f(n) টি প্রান্ত রয়েছে, যেখানে f(·) একটি সুসংজ্ঞায়িত ফাংশন। এই ধারণাটি γ-কোয়াসি-ক্লিক, k-ত্রুটিপূর্ণ ক্লিক এবং ঘন ক্লিক সহ বিভিন্ন ক্লিক শিথিলকরণ মডেল অন্তর্ভুক্ত করে। তবে, f(·)-ঘন গ্রাফগুলি সংযুক্ত নাও হতে পারে বা দুর্বলভাবে সংযুক্ত হতে পারে। এই সমস্যা সমাধানের জন্য, এই কাগজটি ব্যাস ২ এর বেশি নয় এমন সর্বোচ্চ f(·)-ঘন উপগ্রাফ খুঁজে পাওয়ার অধ্যয়ন করে। বিশেষভাবে, এটি সর্বোত্তম সমাধানের জন্য একটি বিয়োজন-ভিত্তিক শাখা-এবং-সীমাবদ্ধতা অ্যালগরিদম প্রস্তাব করে। অ্যালগরিদমের মূল বৈশিষ্ট্য হল গ্রাফটিকে n টি ছোট উপগ্রাফে বিয়োজন করা, যা প্রতিটি উপগ্রাফে স্বাধীন অনুসন্ধানের অনুমতি দেয়। কাগজটি অবক্ষয় ক্রম এবং দুই-হপ অবক্ষয় ক্রম সহ বিয়োজন কৌশল এবং নতুন ক্রম সীমাবদ্ধতা সহ শাখা-এবং-সীমাবদ্ধতা অ্যালগরিদম প্রবর্তন করে। ১৩৯টি বাস্তব গ্রাফে পরীক্ষার ফলাফল দেখায় যে অ্যালগরিদমটি MIP সমাধানকারী এবং বিশুদ্ধ শাখা-এবং-সীমাবদ্ধতা পদ্ধতির চেয়ে উন্নত, এক ঘণ্টার মধ্যে সর্বোত্তম সমাধান করা উদাহরণের সংখ্যা প্রায় দ্বিগুণ।
নেটওয়ার্ক বিশ্লেষণে, ঘনিষ্ঠভাবে সংযুক্ত উপগ্রাফ (cohesive subgraph) চিহ্নিত করা একটি মূল কাজ, যা সম্প্রদায় আবিষ্কার, প্রোটিন জটিল সনাক্তকরণ, আর্থিক নেটওয়ার্ক বিশ্লেষণ এবং অন্যান্য ক্ষেত্রে প্রয়োগ করা হয়। ক্লাসিক ক্লিক (clique) মডেল সমস্ত শীর্ষবিন্দু জোড়ার মধ্যে প্রান্ত থাকার দাবি করে, কিন্তু এই প্রয়োজনীয়তা অত্যন্ত কঠোর, বিশেষত শব্দ এবং ত্রুটি সহ বাস্তব প্রয়োগে। অতএব, বিভিন্ন শিথিল ক্লিক মডেল উপস্থিত হয়েছে, যেমন:
γ-কোয়াসি-ক্লিক: n টি শীর্ষবিন্দুর প্রেরিত উপগ্রাফে কমপক্ষে γ(n choose 2) টি প্রান্ত রয়েছে
s-ত্রুটিপূর্ণ ক্লিক: কমপক্ষে (n choose 2) - s টি প্রান্ত রয়েছে
গড় s-plex: কমপক্ষে n(n-s)/2 টি প্রান্ত রয়েছে
এই মডেলগুলি f(·)-ঘন গ্রাফ হিসাবে একীভূত করা যেতে পারে: n টি শীর্ষবিন্দুর গ্রাফে কমপক্ষে f(n) টি প্রান্ত রয়েছে।
বিদ্যমান f(·)-ঘন গ্রাফ মডেলগুলির গুরুতর ত্রুটি রয়েছে: সংযুক্ত নাও হতে পারে বা সংযোগ খুবই দুর্বল হতে পারে। কাগজটি চিত্র ১ এর মাধ্যমে দুটি উদাহরণ প্রদর্শন করে:
G1: ২০০ টি শীর্ষবিন্দুর ক্লিক এবং ১০ টি শীর্ষবিন্দুর পথ, v1 থেকে v210 পর্যন্ত ১০ হপ প্রয়োজন
G2: ২০০ টি শীর্ষবিন্দুর ক্লিক এবং ১০ টি বিচ্ছিন্ন শীর্ষবিন্দু, v1 এবং v210 এর মধ্যে কোন পথ নেই
এই দুটি গ্রাফই f(n)=0.9(n choose 2) এর ঘনত্ব প্রয়োজনীয়তা পূরণ করে, কিন্তু স্পষ্টতই ঘনিষ্ঠভাবে সংযুক্ত সম্প্রদায় নয়।
MIP পদ্ধতি: যদিও নির্দিষ্ট f(·) ফাংশনের জন্য মিশ্র পূর্ণসংখ্যা প্রোগ্রামিং মডেল বিদ্যমান (যেমন GF3), তবে বড় আকারের গ্রাফের জন্য অদক্ষ, এবং নিম্ন-ব্যাস সীমাবদ্ধতার জন্য কোন MIP মডেল নেই
শাখা-এবং-সীমাবদ্ধতা পদ্ধতি: নির্দিষ্ট সমস্যার জন্য অ্যালগরিদম বিদ্যমান (যেমন সর্বোচ্চ s-ত্রুটিপূর্ণ ক্লিক, সর্বোচ্চ γ-কোয়াসি-ক্লিক), কিন্তু সর্বজনীন f(·)-ঘন গ্রাফ সমাধান কাঠামোর অভাব রয়েছে
সংযোগ সীমাবদ্ধতা: Santos et al. (2024) স্প্যানিং ট্রি-ভিত্তিক সংযোগ সীমাবদ্ধতা প্রস্তাব করেছে, কিন্তু ব্যাস সীমাবদ্ধতা ঘনিষ্ঠ সংযোগ নিশ্চিত করতে আরও ভাল
এই কাগজটি নিম্ন-ব্যাস f(·)-ঘন গ্রাফ ধারণা প্রবর্তন করে: গ্রাফটি সংযুক্ত হওয়ার, কমপক্ষে f(n) টি প্রান্ত থাকার এবং ব্যাস ২ এর বেশি না হওয়ার প্রয়োজন। ব্যাস ২ এর সীমাবদ্ধতা (2-club হিসাবে পরিচিত) নিশ্চিত করে যে যেকোনো দুটি শীর্ষবিন্দুর মধ্যে সর্বনিম্ন পথ ২ এর বেশি নয়, শক্তিশালী সংযোগ নিশ্চিত করে। কাগজটি এই NP-কঠিন সমস্যা সমাধানের জন্য দক্ষ নির্ভুল অ্যালগরিদম ডিজাইন করার লক্ষ্য রাখে।
মূল লেম্মা (Lemma 3): গ্রাফ G এর যেকোনো শীর্ষবিন্দু ক্রম π=⟨v1,...,vn⟩ দেওয়া, প্রতিটি শীর্ষবিন্দু vi এর জন্য, সংজ্ঞায়িত করুন:
Vi = {vi} ∪ {N^(2)_G(vi) ∩ {vi+1,...,vn}}
Gi = GVi
যদি S_i হল Gi তে vi ধারণকারী সর্বোচ্চ নিম্ন-ব্যাস f(·)-ঘন উপগ্রাফ, তাহলে:
**ωf(G) = max(|S_1|,...,|S*_n|)**
অ্যালগরিদম প্রবাহ:
১. হিউরিস্টিক অ্যালগরিদম দিয়ে প্রাথমিক সমাধান S পান (নিম্ন সীমা)
२. ক্রম অ্যালগরিদম দিয়ে শীর্ষবিন্দু ক্রম π নির্ধারণ করুন
३. প্রতিটি vi এর জন্য π তে:
- উপগ্রাফ Gi = G[Vi] তৈরি করুন
- ExactSearch(Gi, f(·), {vi}, N^(2)_G(vi), lb) দিয়ে সমাধান করুন
४. সমস্ত উপ-সমস্যার সর্বোচ্চ সমাধান ফেরত দিন
সময় জটিলতা: O(Theur(G) + Torder(G) + poly(αG)2^αG)
অবক্ষয় ক্রম (degeneracy ordering) এর উপর ভিত্তি করে:
সংজ্ঞা: k-অবক্ষয় ক্রম হল শীর্ষবিন্দু ক্রম ⟨v1,...,vn⟩, যেমন প্রতিটি vi এর {vi,...,vn} প্রেরিত উপগ্রাফে ডিগ্রি ≤ k
গণনা: peel অ্যালগরিদম ব্যবহার করুন, O(|V|+|E|) সময়, বারবার সর্বনিম্ন ডিগ্রি শীর্ষবিন্দু মুছে ফেলুন
অবক্ষয় ডিগ্রি dG: সর্বনিম্ন k মান
হিউরিস্টিক প্রবাহ:
१. অবক্ষয় ক্রম ⟨v1,...,vn⟩ গণনা করুন
२. প্রতিটি vi এর জন্য:
- Si ← {vi} ∪ {NG(vi) ∩ {vi+1,...,vn}}
- Gi ← G[Si] (ব্যাস ≤ २)
- যখন |Ei| < f(|Si|):
Gi তে সর্বনিম্ন ডিগ্রি শীর্ষবিন্দু মুছে ফেলুন
- সর্বোত্তম সমাধান S* আপডেট করুন
३. S* ফেরত দিন
BranchBound(G, S, C, lb):
ইনপুট: গ্রাফ G, বর্তমান সমাধান S, প্রার্থী সেট C, নিম্ন সীমা lb
१. যদি G[S] সম্ভাব্য সমাধান এবং |S|>lb: lb এবং সর্বোত্তম সমাধান আপডেট করুন
२. যদি f(·) উত্তরাধিকার এবং |E(S)|<f(|S|): প্রুন করে ফেরত দিন
३. UB ← SortBound(G, f(·), S, C) // সীমা গণনা করুন
४. যদি UB ≤ lb: প্রুন করে ফেরত দিন
५. যদি f(·) উত্তরাধিকার: হ্রাস নিয়ম প্রয়োগ করুন (Lemma 5)
६. র্যান্ডমলি u∈C নির্বাচন করুন
७. যদি Lemma 4 এর শর্ত পূরণ করে: শুধুমাত্র S∪{u} শাখায় পুনরাবৃত্তি করুন
অন্যথায়: দুটি শাখা S∪{u} এবং S তে পুনরাবৃত্তি করুন
Lemma 4 (সর্বজনীন হ্রাস): যদি u∈C সন্তুষ্ট করে:
१. |NG(u)| = |V|-1, বা
२. |NG(u)| = |V|-२ এবং GS∪{u} সম্ভাব্য
তাহলে u ধারণকারী সর্বোত্তম সমাধান বিদ্যমান → শুধুমাত্র u ধারণকারী শাখা অনুসন্ধান করুন
Lemma 5 (উত্তরাধিকার ফাংশন হ্রাস): যদি f(·) উত্তরাধিকার হয়:
१. যদি |E(S)| < f(|S|), তাহলে S ধারণকারী কোন সম্ভাব্য সমাধান নেই
२. যদি v∈C যেমন |E(S∪{v})| < f(|S|+१), তাহলে v ধারণকারী কোন সম্ভাব্য সমাধান নেই
v∈C এর জন্য, সংজ্ঞায়িত করুন wS(v) = |S\N(v)| (S তে v এর অ-প্রতিবেশী সংখ্যা)
१. wS(v) অ-হ্রাসমান ক্রমে C সাজান ⟨v1,...,v|C|⟩ পান
२. সর্বোচ্চ k খুঁজুন যেমন wS(Sk) + |E(S)| ≤ gf(|S|+k), যেখানে gf(n)=(n choose 2)-f(n)
३. |S|+k ফেরত দিন
সঠিকতা (Lemma 6): wS(S') + |E(S)| |E(S∪S')| এর নিম্ন অনুমান
মূল ধারণা:
१. সরল সীমা S এবং C এর মধ্যে প্রান্ত উপেক্ষা করে
२. সরল সীমা দুই-হপ সীমাবদ্ধতা বিবেচনা করে না
অ্যালগরিদম প্রবাহ:
१. লোভী অ্যালগরিদম ব্যবহার করে C কে χ স্বাধীন সেটে বিভক্ত করুন Π1,...,Πχ
(χ কমিয়ে আনুন ≈ গ্রাফ রঙ সমস্যা, O(|C|³) লোভী ব্যবহার করুন)
२. প্রতিটি Πi এর জন্য:
a. wS(v) ক্রমে Πi সাজান
b. আরও Πi কে একাধিক Rσ তে বিভক্ত করুন, যেমন Rσ তে যেকোনো দুটি শীর্ষবিন্দুর দূরত্ব >२
c. প্রতিটি Rσ থেকে wS(·) সর্বনিম্ন শীর্ষবিন্দু নির্বাচন করে C' তে যোগ করুন
d. w'S(uj) = wS(uj) + j - १ গণনা করুন
३. w'S(·) ক্রমে C' সাজান, সর্বোচ্চ k খুঁজুন যেমন |E(S)| + w'S(Sk) ≤ gf(|S|+k)
४. |S|+k ফেরত দিন
সময় জটিলতা: O(|C|³ + |S||C|)
সঠিকতা (Theorem 3):
প্রতিটি স্বাধীন সেট Πi তে সর্বাধিক s'i শীর্ষবিন্দু নির্বাচন করুন
প্রতিটি Rσ তে দুই-হপ সীমাবদ্ধতার কারণে সর্বাধিক १ শীর্ষবিন্দু নির্বাচন করুন
পদক্ষেপ:
१. স্বাধীন সেটে বিভক্ত করুন: Π१={v३,v५,v७,v९}, Π२={v४,v६,v८,v१०}
२. wS গণনা করুন: wS(v३)=०, wS(v५)=१, wS(v७)=२...
३. দূরত্ব দ্বারা আরও বিভক্ত করুন: R¹१={v३,v७}, R²१={v५,v९}, R¹२={v८,v४}, R²२={v१०,v६}
४. সর্বনিম্ন wS নির্বাচন করুন: C'={v३,v५,v८,v१०}
५. w'S গণনা করুন: w'S(v३)=०, w'S(v८)=०, w'S(v५)=२, w'S(v१०)=२
সুপারিশকৃত পরিস্থিতি:
१. সামাজিক নেটওয়ার্ক বিশ্লেষণ: ঘনিষ্ঠভাবে সংযুক্ত সম্প্রদায় খুঁজে পাওয়া (ব্যাস ≤२ দ্রুত যোগাযোগ নিশ্চিত করে)
२. জৈব নেটওয়ার্ক: প্রোটিন জটিল সনাক্তকরণ (কিছু প্রান্ত অনুপস্থিত অনুমতি দেয়)
३. সহযোগিতা নেটওয়ার্ক: মূল গবেষণা দল সনাক্তকরণ
४. মধ্যম আকারের গ্রাফ: |V|<१०⁶, αG<५००० সময় সর্বোত্তম কর্মক্ষমতা
অসুপারিশকৃত পরিস্থিতি:
१. অতি-বড় আকারের ঘন গ্রাফ: αG |V| এর কাছাকাছি সময় সূচক বিস্ফোরণ
२. রিয়েল-টাইম প্রয়োগ: সর্বোচ্চ ক্ষেত্রে এখনও সূচক সময় প্রয়োজন
३. অনুমান সমাধান যথেষ্ট পরিস্থিতি: নির্ভুল অ্যালগরিদম খরচ বেশি
উন্নতি সুপারিশ:
१. দ্রুত অনুমান সমাধানের জন্য হিউরিস্টিক অ্যালগরিদম একত্রিত করুন
२. অতি-বড় আকারের গ্রাফ প্রক্রিয়া করতে সমান্তরালকরণ করুন
३. নির্দিষ্ট f(·) এর জন্য বিশেষায়িত অ্যালগরিদম ডিজাইন করুন
८. Downey & Fellows (२०१२): "প্যারামিটারাইজড জটিলতা" - W१-কঠোরতা তত্ত্ব
সামগ্রিক মূল্যায়ন: এটি একটি তাত্ত্বিকভাবে কঠোর, অ্যালগরিদমিকভাবে উদ্ভাবনী এবং পরীক্ষামূলকভাবে সম্পূর্ণ উৎকৃষ্ট কাগজ। বিয়োজন কাঠামো এবং ক্রম সীমা পদ্ধতি উচ্চ সাধারণতা এবং ব্যবহারিক মূল্য রাখে। প্রধান অবদান একাধিক ক্লিক শিথিলকরণ মডেল একীভূত করা এবং দক্ষ সমাধান অ্যালগরিদম প্রদান করা। গ্রহণের সুপারিশ করা হয়, গ্রাফ অ্যালগরিদম এবং নেটওয়ার্ক বিশ্লেষণ ক্ষেত্রে গুরুত্বপূর্ণ অবদান রাখে।