Shortest path problem

Shortest path (A, C, E, D, F), blue, between vertices A and F in the weighted directed graph

In graph theory, the shortest path problem is the problem of finding a path between two vertices (or nodes) in a graph such that the sum of the weights of its constituent edges is minimized.[1]

The problem of finding the shortest path between two intersections on a road map may be modeled as a special case of the shortest path problem in graphs, where the vertices correspond to intersections and the edges correspond to road segments, each weighted by the length or distance of each segment.[2]

Definition

The shortest path problem can be defined for graphs whether undirected, directed, or mixed. The definition for undirected graphs states that every edge can be traversed in either direction. Directed graphs require that consecutive vertices be connected by an appropriate directed edge.[3]

Two vertices are adjacent when they are both incident to a common edge. A path in an undirected graph is a sequence of vertices P=(v1,v2,,vn)V×V××V{\displaystyle P=(v_{1},v_{2},\ldots ,v_{n})\in V\times V\times \cdots \times V} such that vi{\displaystyle v_{i}} is adjacent to vi+1{\displaystyle v_{i+1}} for 1i<n{\displaystyle 1\leq i<n}. Such a path P{\displaystyle P} is called a path of length n1{\displaystyle n-1} from v1{\displaystyle v_{1}} to vn{\displaystyle v_{n}}. (The vi{\displaystyle v_{i}} are variables; their numbering relates to their position in the sequence and need not relate to a canonical labeling.)[4]

Let E={ei,j}{\displaystyle E=\{e_{i,j}\}} where ei,j{\displaystyle e_{i,j}} is the edge incident to both vi{\displaystyle v_{i}} and vj{\displaystyle v_{j}}. Given a real-valued weight function f:ER{\displaystyle f:E\rightarrow \mathbb {R} }, and an undirected (simple) graph G{\displaystyle G}, the shortest path from v{\displaystyle v} to v{\displaystyle v'} is the path P=(v1,v2,,vn){\displaystyle P=(v_{1},v_{2},\ldots ,v_{n})} (where v1=v{\displaystyle v_{1}=v} and vn=v{\displaystyle v_{n}=v'}) that over all possible n{\displaystyle n} minimizes the sum i=1n1f(ei,i+1).{\displaystyle \sum _{i=1}^{n-1}f(e_{i,i+1}).} When each edge in the graph has unit weight or f:E{1}{\displaystyle f:E\rightarrow \{1\}}, this is equivalent to finding the path with fewest edges.

The problem is also sometimes called the single-pair shortest path problem, to distinguish it from the following variations:[5]

  • The single-source shortest path problem, in which we have to find shortest paths from a source vertex v to all other vertices in the graph.
  • The single-destination shortest path problem, in which we have to find shortest paths from all vertices in the directed graph to a single destination vertex v. This can be reduced to the single-source shortest path problem by reversing the arcs in the directed graph.
  • مشكلة أقصر مسار بين جميع الأزواج ، والتي يتعين علينا فيها إيجاد أقصر المسارات بين كل زوج من الرؤوس v و v' في الرسم البياني.

تتميز هذه التعميمات بخوارزميات أكثر كفاءة بشكل ملحوظ من النهج المبسط المتمثل في تشغيل خوارزمية أقصر مسار لزوج واحد على جميع أزواج الرؤوس ذات الصلة. [ 6 ]

الخوارزميات

توجد العديد من الخوارزميات المعروفة لحل هذه المشكلة ومتغيراتها.

يمكن العثور على خوارزميات إضافية وتقييمات مرتبطة بها في Cherkassky و Goldberg و Radzik (1996) .

أقصر المسارات من مصدر واحد

الرسوم البيانية غير الموجهة

الأوزانتعقيد الخطةمؤلف
R{\displaystyle \mathbb {R} }+يا(V2){\displaystyle O(V^{2})}ديكسترا 1959
R{\displaystyle \mathbb {R} }+يا((هـ+V)سجلV){\displaystyle O((E+V)\log {V})}جونسون 1977 ( كومة ثنائية )
R{\displaystyle \mathbb {R} }+يا(هـ+VسجلV){\displaystyle O(E+V\log {V})}فريدمان وتارجان 1984 ( كومة فيبوناتشي )
شمال{\displaystyle \mathbb {N} }يا(هـ){\displaystyle O(E)}ثورب 1999 (يتطلب الضرب في زمن ثابت)
R{\displaystyle \mathbb {R} }+يا(هـسجلVسجلسجلV){\displaystyle O(E{\sqrt {\log V\log \log V}})}دوان وآخرون 2023

الرسوم البيانية غير الموزونة

الخوارزميةتعقيد الخطةمؤلف
البحث بالعرض أولاًيا(هـ+V){\displaystyle O(E+V)}

الرسوم البيانية الموجهة غير الدورية

يمكن لخوارزمية تستخدم الفرز الطوبولوجي حل مشكلة أقصر مسار من مصدر واحد في وقت Θ( E + V ) في الرسوم البيانية الموجهة غير الدورية ذات الأوزان العشوائية. [ 7 ]

الرسوم البيانية الموجهة ذات الأوزان غير السالبة

الجدول التالي مأخوذ من Schrijver (2004) ، مع بعض التصحيحات والإضافات. تشير الخلفية الخضراء إلى أفضل حد تقاربي في الجدول؛ L هو أقصى طول (أو وزن) بين جميع الحواف، بافتراض أن أوزان الحواف أعداد صحيحة.

الأوزانالخوارزميةتعقيد الخطةمؤلف
R{\displaystyle \mathbb {R} }يا(V2هـل){\displaystyle O(V^{2}EL)}فورد 1956
R{\displaystyle \mathbb {R} }خوارزمية بيلمان-فورديا(Vهـ){\displaystyle O(VE)}شيمبل 1955 ، بيلمان 1958 ، مور 1959
R{\displaystyle \mathbb {R} }يا(V2سجلV){\displaystyle O(V^{2}\log {V})}دانتزيج 1960
R{\displaystyle \mathbb {R} }خوارزمية ديكسترا مع القوائميا(V2){\displaystyle O(V^{2})}Leyzorek et al. 1957 ، Dijkstra 1959 ، Minty (انظر Pollack & Wiebenson 1960Whiting & Hillier 1960
R{\displaystyle \mathbb {R} }خوارزمية ديكسترا مع الكومة الثنائيةيا((هـ+V)سجلV){\displaystyle O((E+V)\log {V})}جونسون 1977
R{\displaystyle \mathbb {R} }خوارزمية ديكسترا مع كومة فيبوناتشييا(هـ+VسجلV){\displaystyle O(E+V\log {V})}فريدمان وتارجان 1984 ، فريدمان وتارجان 1987
R{\displaystyle \mathbb {R} }خوارزمية ديكسترا الكمومية مع قائمة التجاوريا(Vهـسجل2V){\displaystyle O({\sqrt {VE}}\log ^{2}{V})}دور وآخرون 2006 [ 8 ]
R{\displaystyle \mathbb {R} }نموذج ديكسترا - بلمان - فورد الهجين مع تقليل حدود البحث بتقسيم المشكلة إلى أجزاء أصغريا(هـسجل2/3V){\displaystyle O(E\log ^{2/3}{V})}دوان وآخرون 2025 [ 9 ]
شمال{\displaystyle \mathbb {N} }خوارزمية ديال [ 10 ] ( خوارزمية ديكسترا باستخدام قائمة انتظار دلو مع L دلو)يا(هـ+لV){\displaystyle O(E+LV)}اتصل بالرقم 1969
يا(هـسجلسجلل){\displaystyle O(E\log {\log {L}})}جونسون 1981 ، كارلسون وبوبليت 1983
خوارزمية جابويا(هـسجلهـ/Vل){\displaystyle O(E\log _{E/V}L)}جابو 1983 ، جابو 1985
يا(هـ+Vسجلل){\displaystyle O(E+V{\sqrt {\log {L}}})}أهوجا وآخرون 1990
شمال{\displaystyle \mathbb {N} }ثوربيا(هـ+VسجلسجلV){\displaystyle O(E+V\log {\log {V}})}ثورب 2004

الرسوم البيانية الموجهة ذات الأوزان العشوائية بدون دورات سالبة

الأوزانالخوارزميةتعقيد الخطةمؤلف
R{\displaystyle \mathbb {R} }يا(V2هـل){\displaystyle O(V^{2}EL)}فورد 1956
R{\displaystyle \mathbb {R} }خوارزمية بيلمان-فورديا(Vهـ){\displaystyle O(VE)}شيمبل 1955 ، بيلمان 1958 ، مور 1959
R{\displaystyle \mathbb {R} }خوارزمية جونسون-ديكسترا مع الكومة الثنائيةيا(Vهـ+VسجلV){\displaystyle O(VE+V\log V)}جونسون 1977
R{\displaystyle \mathbb {R} }خوارزمية جونسون-ديكسترا مع كومة فيبوناتشييا(Vهـ+VسجلV){\displaystyle O(VE+V\log V)}فريدمان وتارجان 1984 ، فريدمان وتارجان 1987 ، مقتبس بعد جونسون 1977
Z{\displaystyle \mathbb {Z} }تم تطبيق تقنية جونسون على خوارزمية ديال [ 10 ]يا(V(هـ+ل)){\displaystyle O(V(E+L))}اتصل عام 1969 ، مقتبس عن جونسون عام 1977
Z{\displaystyle \mathbb {Z} }طريقة النقطة الداخلية مع حل لابلاسيا(هـ10/7سجليا(1)Vسجليا(1)ل){\displaystyle O(E^{10/7}\log ^{O(1)}V\log ^{O(1)}L)}كوهين وآخرون 2017
Z{\displaystyle \mathbb {Z} }طريقة النقطة الداخلية معص{\displaystyle \ell _{p}}محلل التدفقهـ4/3+o(1)سجليا(1)ل{\displaystyle E^{4/3+o(1)}\log ^{O(1)}L}أكسيوتيس، مادري وفلادو 2020
Z{\displaystyle \mathbb {Z} }طريقة النقطة الداخلية القوية مع الرسم التخطيطييا((هـ+V3/2)سجليا(1)Vسجليا(1)ل){\displaystyle O((E+V^{3/2})\log ^{O(1)}V\log ^{O(1)}L)}فان دن براند وآخرون، 2020
Z{\displaystyle \mathbb {Z} }1{\displaystyle \ell _{1}}طريقة النقطة الداخلية مع بنية بيانات دورة النسبة الدنيا الديناميكيةيا(هـ1+o(1)سجلل){\displaystyle O(E^{1+o(1)}\log L)}تشين وآخرون، 2022
Z{\displaystyle \mathbb {Z} }استنادًا إلى التحلل ذي القطر المنخفضيا(هـسجل8Vسجلل){\displaystyle O(E\log ^{8}V\log L)}بيرنشتاين، نانونغكاي وولف -نيلسن 2022
R{\displaystyle \mathbb {R} }أقصر المسارات المحدودة بالقفزاتيا(هـV8/9سجليا(1)V){\displaystyle O(EV^{8/9}\log ^{O(1)}V)}فينمان 2024
R{\displaystyle \mathbb {R} }أدوات شتاينر-ترييا(V2+o(1)){\displaystyle O(V^{2+o(1)})}خانا وسونغ 2026 [ 11 ]

الرسوم البيانية الموجهة ذات الأوزان العشوائية مع دورات سالبة

يجد دورة سالبة أو يحسب المسافات إلى جميع الرؤوس.

الأوزانالخوارزميةتعقيد الخطةمؤلف
Z{\displaystyle \mathbb {Z} }يا(هـVسجلشمال){\displaystyle O(E{\sqrt {V}}\log {N})}أندرو ف. غولدبيرغ

الرسوم البيانية المستوية ذات الأوزان غير السالبة

الأوزانالخوارزميةتعقيد الخطةمؤلف
R0{\displaystyle \mathbb {R} _{\geq 0}}يا(V){\displaystyle O(V)}هينزينجر وآخرون 1997

التطبيقات

Network flows[12] are a fundamental concept in graph theory and operations research, often used to model problems involving the transportation of goods, liquids, or information through a network. A network flow problem typically involves a directed graph where each edge represents a pipe, wire, or road, and each edge has a capacity, which is the maximum amount that can flow through it. The goal is to find a feasible flow that maximizes the flow from a source node to a sink node.

Shortest Path Problems can be used to solve certain network flow problems, particularly when dealing with single-source, single-sink networks. In these scenarios, we can transform the network flow problem into a series of shortest path problems.

Transformation Steps

[13]

  1. Create a Residual Graph:
    • For each edge (u, v) in the original graph, create two edges in the residual graph:
      • (u, v) with capacity c(u, v)
      • (v, u) with capacity 0
    • The residual graph represents the remaining capacity available in the network.
  2. Find the Shortest Path:
    • Use a shortest path algorithm (e.g., Dijkstra's algorithm, Bellman-Ford algorithm) to find the shortest path from the source node to the sink node in the residual graph.
  3. Augment the Flow:
    • Find the minimum capacity along the shortest path.
    • Increase the flow on the edges of the shortest path by this minimum capacity.
    • Decrease the capacity of the edges in the forward direction and increase the capacity of the edges in the backward direction.
  4. Update the Residual Graph:
    • Update the residual graph based on the augmented flow.
  5. Repeat:
    • Repeat steps 2-4 until no more paths can be found from the source to the sink.

All-pairs shortest paths

The all-pairs shortest path problem finds the shortest paths between every pair of vertices v, v' in the graph. The all-pairs shortest paths problem for unweighted directed graphs was introduced by Shimbel (1953), who observed that it could be solved by a linear number of matrix multiplications that takes a total time of O(V4).

Undirected graph

WeightsTime complexityAlgorithm
R{\displaystyle \mathbb {R} }+O(V3){\displaystyle O(V^{3})}Floyd–Warshall algorithm
{1,}{\displaystyle \{1,\infty \}}O(VωlogV){\displaystyle O(V^{\omega }\log V)}Seidel's algorithm (expected running time using fast matrix multiplication algorithms)
N{\displaystyle \mathbb {N} }O(V3/2Ω(logV)1/2){\displaystyle O(V^{3}/2^{\Omega (\log V)^{1/2}})}Williams 2014
R{\displaystyle \mathbb {R} }+O(EVlogα(E,V)){\displaystyle O(EV\log \alpha (E,V))}Pettie & Ramachandran 2002
N{\displaystyle \mathbb {N} }O(EV){\displaystyle O(EV)}Thorup 1999 applied to every vertex (requires constant-time multiplication).

Directed graph

WeightsTime complexityAlgorithm
R{\displaystyle \mathbb {R} } (no negative cycles)O(V3){\displaystyle O(V^{3})}Floyd–Warshall algorithm
N{\displaystyle \mathbb {N} }O(V3/2Ω(logV)1/2){\displaystyle O(V^{3}/2^{\Omega (\log V)^{1/2}})}Williams 2014
R{\displaystyle \mathbb {R} } (no negative cycles)O(V2.5log2V){\displaystyle O(V^{2.5}\log ^{2}{V})}Quantum search[14][15]
R{\displaystyle \mathbb {R} } (no negative cycles)O(EV+V2logV){\displaystyle O(EV+V^{2}\log V)}Johnson–Dijkstra
R{\displaystyle \mathbb {R} } (no negative cycles)O(EV+V2loglogV){\displaystyle O(EV+V^{2}\log \log V)}Pettie 2004
N{\displaystyle \mathbb {N} }O(EV+V2loglogV){\displaystyle O(EV+V^{2}\log \log V)}Hagerup 2000

Applications

تُستخدم خوارزميات أقصر مسار لإيجاد الاتجاهات تلقائيًا بين المواقع الجغرافية، مثل توجيهات القيادة على مواقع الخرائط الإلكترونية مثل MapQuest أو خرائط جوجل . وتتوفر لهذا التطبيق خوارزميات متخصصة سريعة. [ 16 ]

إذا مثّلنا آلةً مجردةً غير حتمية برسم بياني حيث تمثل الرؤوس الحالات وتمثل الحواف الانتقالات الممكنة، فيمكن استخدام خوارزميات أقصر مسار لإيجاد تسلسل أمثل من الخيارات للوصول إلى حالة هدف معينة، أو لتحديد الحد الأدنى للوقت اللازم للوصول إلى حالة معينة. على سبيل المثال، إذا مثّلت الرؤوس حالات لغز مثل مكعب روبيك ، وكان كل ضلع موجه يمثل حركةً أو دورةً واحدة، فيمكن استخدام خوارزميات أقصر مسار لإيجاد حل يستخدم أقل عدد ممكن من الحركات.

في مجال الشبكات والاتصالات ، تُسمى مشكلة أقصر مسار أحيانًا بمشكلة المسار ذي أقل تأخير، وعادةً ما تُربط بمشكلة المسار الأوسع . على سبيل المثال، قد تبحث الخوارزمية عن أقصر مسار (أقل تأخير) وأوسع مسار، أو أوسع مسار (أقل تأخير). [ 17 ]

ومن التطبيقات الأكثر مرحاً ألعاب " ست درجات من الانفصال " التي تحاول إيجاد أقصر مسار في الرسوم البيانية مثل نجوم السينما الذين يظهرون في نفس الفيلم.

وتشمل التطبيقات الأخرى، التي غالباً ما يتم دراستها في بحوث العمليات ، تخطيط المصانع والمرافق، والروبوتات ، والنقل ، وتصميم الدوائر المتكاملة واسعة النطاق (VLSI) . [ 18 ]

شبكات الطرق

يمكن اعتبار شبكة الطرق بمثابة رسم بياني ذي أوزان موجبة. تمثل العقد تقاطعات الطرق، ويرتبط كل ضلع في الرسم البياني بجزء من الطريق بين تقاطعين. قد يتوافق وزن الضلع مع طول جزء الطريق المرتبط به، أو الوقت اللازم لاجتيازه، أو تكلفة اجتيازه. باستخدام الأضلاع الموجهة، يمكن أيضًا نمذجة الشوارع ذات الاتجاه الواحد. تتميز هذه الرسوم البيانية بأن بعض الأضلاع أكثر أهمية من غيرها للسفر لمسافات طويلة (مثل الطرق السريعة). وقد تم صياغة هذه الخاصية رسميًا باستخدام مفهوم بُعد الطريق السريع. [ 19 ] يوجد عدد كبير من الخوارزميات التي تستغل هذه الخاصية، وبالتالي فهي قادرة على حساب أقصر مسار بسرعة أكبر بكثير مما هو ممكن على الرسوم البيانية العامة.

تعمل جميع هذه الخوارزميات على مرحلتين. في المرحلة الأولى، تتم معالجة الرسم البياني مسبقًا دون معرفة عقدة المصدر أو الهدف. أما المرحلة الثانية فهي مرحلة الاستعلام، حيث تكون عقدة المصدر والهدف معروفة. الفكرة هي أن شبكة الطرق ثابتة، لذا يمكن تنفيذ مرحلة المعالجة المسبقة مرة واحدة واستخدامها لعدد كبير من الاستعلامات على نفس شبكة الطرق.

تُعرف الخوارزمية الأسرع من حيث زمن الاستعلام باسم "تحديد المحاور"، وهي قادرة على حساب أقصر مسار على شبكات الطرق في أوروبا أو الولايات المتحدة في جزء من الميكروثانية. [ 20 ] ومن التقنيات الأخرى المستخدمة:

للحصول على معلومات حول مسائل أقصر مسار في الهندسة الحسابية ، انظر أقصر مسار إقليدي .

يمثل أقصر مسار متعدد غير متصل [ 21 ] تمثيلاً لشبكة المسار البدائية ضمن إطار نظرية الزحف . أما مسألة أوسع مسار فتسعى إلى إيجاد مسار يكون فيه الحد الأدنى لقيمة أي حافة أكبر ما يمكن.

يمكن تصنيف المشاكل الأخرى ذات الصلة إلى الفئات التالية.

مسارات ذات قيود

على عكس مسألة أقصر مسار، التي يمكن حلها في وقت متعدد الحدود في الرسوم البيانية الخالية من الدورات السالبة، تُسمى مسائل أقصر مسار التي تتضمن قيودًا إضافية على مسار الحل المطلوب " مسألة أقصر مسار مقيد أولًا" ، وهي أصعب في الحل. أحد الأمثلة على ذلك مسألة أقصر مسار مقيد [ 22 ] ، التي تسعى إلى تقليل التكلفة الإجمالية للمسار مع الحفاظ في الوقت نفسه على مقياس آخر أقل من عتبة معينة. هذا يجعل المسألة من فئة NP-كاملة (لا يُعتقد أن مثل هذه المسائل قابلة للحل بكفاءة لمجموعات البيانات الكبيرة، انظر مسألة P = NP ). مثال آخر من فئة NP-كاملة يتطلب تضمين مجموعة محددة من الرؤوس في المسار [ 23 مما يجعل المسألة مشابهة لمسألة البائع المتجول (TSP). مسألة البائع المتجول هي مسألة إيجاد أقصر مسار يمر بكل رأس مرة واحدة فقط، ويعود إلى نقطة البداية. كما أن مسألة إيجاد أطول مسار في رسم بياني هي أيضًا من فئة NP-كاملة.

إمكانية الملاحظة الجزئية

تُعدّ مسألة المسافر الكندي ومسألة أقصر مسار عشوائي تعميماتٍ حيث لا يكون الرسم البياني معروفًا تمامًا للمتحرك، أو يتغير بمرور الوقت، أو حيث تكون الإجراءات (الاجتيازات) احتمالية. [ 24 ] [ 25 ]

أقصر المسارات الاستراتيجية

أحيانًا، تتمتع حواف الرسم البياني بشخصيات خاصة: فلكل حافة مصلحتها الأنانية. مثال على ذلك شبكة اتصالات، حيث تمثل كل حافة جهاز كمبيوتر قد ينتمي إلى شخص مختلف. تختلف سرعات نقل البيانات بين أجهزة الكمبيوتر، لذا فإن لكل حافة في الشبكة وزنًا عدديًا يساوي عدد المللي ثواني اللازمة لنقل رسالة. هدفنا هو إرسال رسالة بين نقطتين في الشبكة في أقصر وقت ممكن. إذا عرفنا زمن نقل كل جهاز كمبيوتر (وزن كل حافة)، فيمكننا استخدام خوارزمية أقصر المسارات القياسية. أما إذا لم نعرف أزمنة النقل، فعلينا أن نطلب من كل جهاز كمبيوتر إخبارنا بزمن نقله. لكن، قد تكون أجهزة الكمبيوتر أنانية: فقد يخبرنا جهاز كمبيوتر أن زمن نقله طويل جدًا، حتى لا نزعجه برسائلنا. أحد الحلول الممكنة لهذه المشكلة هو استخدام صيغة معدلة من آلية VCG ، التي تحفز أجهزة الكمبيوتر على الكشف عن أوزانها الحقيقية.

الكشف عن الدورة السلبية

في بعض الحالات، لا يكون الهدف الرئيسي هو إيجاد أقصر مسار، بل فقط اكتشاف ما إذا كان الرسم البياني يحتوي على دورة سالبة. ويمكن استخدام بعض خوارزميات أقصر المسارات لهذا الغرض:

  • يمكن استخدام خوارزمية بيلمان -فورد للكشف عن دورة سلبية في الزمنيا(|V||هـ|){\displaystyle O(|V||E|)}.
  • قام تشيركاسكي وغولدبرغ [ 26 ] باستعراض العديد من الخوارزميات الأخرى للكشف عن الدورات السلبية.

الإطار الجبري العام على أنصاف الحلقات: مسألة المسار الجبري

يمكن صياغة العديد من المسائل على شكل مسألة أقصر مسار، وذلك باستخدام مفاهيم مناسبة للجمع على طول مسار معين، ثم حساب القيمة الدنيا. ويتمثل النهج العام في اعتبار العمليتين بمثابة عمليتي نصف حلقة . يتم الضرب في نصف الحلقة على طول المسار، بينما يتم الجمع بين المسارات. يُعرف هذا الإطار العام بمسألة المسار الجبري. [ 27 ] [ 28 ] [ 29 ]

يمكن صياغة معظم خوارزميات أقصر مسار الكلاسيكية (والجديدة منها) على أنها حلول لأنظمة خطية على مثل هذه الهياكل الجبرية. [ 30 ]

وفي الآونة الأخيرة، تم تطوير إطار عمل أكثر عمومية لحل هذه المشكلات (ومشاكل أخرى أقل وضوحًا في ارتباطها) تحت شعار جبر التقييم . [ 31 ]

أقصر مسار في الشبكات العشوائية المعتمدة على الزمن

في الواقع، عادةً ما تكون شبكة النقل عشوائية وتعتمد على الزمن. وتعتمد مدة الرحلة على جزء من الطريق على عوامل عديدة، مثل حجم حركة المرور (مصفوفة الأصل والوجهة)، وأعمال الطرق، والطقس، والحوادث، وأعطال المركبات. ويُعدّ نموذج الشبكة العشوائية المعتمدة على الزمن (STD) نموذجًا أكثر واقعية لمثل هذه الشبكة. [ 32 ] [ 33 ]

لا يوجد تعريف مُتفق عليه للمسار الأمثل في ظل عدم اليقين (أي في شبكات الطرق العشوائية). إنه موضوع مثير للجدل، على الرغم من التقدم الكبير الذي أُحرز خلال العقد الماضي. أحد التعريفات الشائعة هو المسار ذو أقل وقت سفر متوقع. الميزة الرئيسية لهذا النهج هي إمكانية استخدام خوارزميات أقصر مسار فعّالة للشبكات المحددة. مع ذلك، قد لا يكون المسار الأمثل الناتج موثوقًا، لأن هذا النهج لا يُراعي تباين وقت السفر.

لمعالجة هذه المشكلة، يستخدم بعض الباحثين توزيع مدة الرحلة بدلاً من قيمتها المتوقعة. لذا، يجدون التوزيع الاحتمالي لإجمالي مدة الرحلة باستخدام طرق تحسين مختلفة، مثل البرمجة الديناميكية وخوارزمية ديكسترا . [ 34 ] تستخدم هذه الطرق التحسين العشوائي ، وتحديداً البرمجة الديناميكية العشوائية، لإيجاد أقصر مسار في الشبكات ذات أطوال الأقواس الاحتمالية. [ 35 ] يُستخدم مصطلحا " موثوقية وقت الرحلة" و "تباين وقت الرحلة" كمتضادين في أدبيات أبحاث النقل: فكلما زاد التباين، انخفضت موثوقية التنبؤات.

لمراعاة التباين، اقترح الباحثون تعريفين بديلين للمسار الأمثل في ظل عدم اليقين. المسار الأكثر موثوقية هو الذي يزيد من احتمالية الوصول في الوقت المحدد ضمن ميزانية زمنية محددة. أما المسار الموثوق به من الدرجة α فهو الذي يقلل من الميزانية الزمنية اللازمة للوصول في الوقت المحدد باحتمالية معينة.

أقصر مسار مقيد

مسألة أقصر مسار مقيد (RSP) هي شكل من أشكال مسألة أقصر مسار، حيث يوجد معياران للتحسين. لدينا رسم بياني موجه، لكل حافة فيه e تكلفة عددية غير سالبة c<sub> e</sub> ، وتأخير عددي غير سالب d<sub> e </sub>، ورأسان محددان s و t، وميزانية تأخير عددية غير سالبة B. الهدف هو إيجاد مسار s-t بأقل تكلفة إجمالية، من بين المسارات التي لا يتجاوز تأخيرها الإجمالي B. تُصنف مسألة RSP ضمن المسائل الصعبة حسابيًا (NP-hard): وقد وردت في كتاب غاري وجونسون تحت مسمى المسألة ND30، "أقصر مسار مقيد الوزن". ولها خوارزمية تقريبية متعددة الحدود (FPTAS) منسوبة إلى هاسين [ 36 ] ، والتي قام لورنز وراز [ 37 ] بتبسيطها وتحسينها لاحقًا.

توجد عدة تعميمات معروفة لهذه المشكلة:

  • في مسألة أقصر مسار مقيد بالموارد (RCSP) ، [ 38 ] يمكن لكل حافة أن تستهلك عدة موارد (بدلاً من الوقت فقط). لكل مورد r ميزانية مستقلة B<sub> r</sub> . تستهلك كل حافة e مقدار d<sub> e,r</sub> من كل مورد r . الهدف هو إيجاد مسار s--t بأقل تكلفة إجمالية، من بين المسارات التي تُحقق قيد الموارد لكل مورد.
  • في مسألة CSP المشتركة متعددة الأطراف ، [ 39 ] يمكن أن يكون هناك عدة أزواج من المصدر والهدف ( sj ، tj )، حيث j=1،2،.. هنا، الهدف هو إيجاد مسار لكل زوج من المصدر والهدف، بأقل تكلفة إجمالية ، بشرط ألا يتجاوز إجمالي التأخير ميزانية التأخير.
  • تُعدّ مسألة تخصيص الموارد الجزئية (Fractional RSP) تبسيطًا لمسألة تخصيص الموارد (RSP) باستخدام البرمجة الخطية. وقد قدّمها هاندلر وزانغ [ 40 ] ، وقدّما خوارزمية توافقية لحلّها (في حالة مورد واحد). وأثبت ميلهورن وزيغلمان [ 38 ] أنه في حالة مورد واحد، تعمل الخوارزمية التوافقية في زمن متعدد الحدود، O(log( nCD ))، حيث n هو عدد العقد، والتكاليف أعداد صحيحة في النطاق من 0 إلى C ، والتأخيرات أعداد صحيحة في النطاق من 0 إلى D. أما في حالة وجود موارد متعددة، فيبقى زمن تشغيل الخوارزمية التوافقية غير محدد، ولكن يمكن حلّ البرمجة الخطية في زمن متعدد الحدود ضعيف باستخدام طريقة القطع الناقص.

انظر أيضاً

مراجع

ملحوظات

  1. ^ أورتيجا أرانز، هيكتور. لانوس، دييغو ر.؛ جونزاليس إسكريبانو ، أرتورو (2015). مشكلة أقصر مسار . محاضرات تركيبية في علوم الكمبيوتر النظرية. شام: سبرينغر. دوى : 10.1007/978-3-031-02574-7 . رقم ISBN 978-3-031-01446-8.
  2. غوينين، برتراند (2014). مقدمة مبسطة في التحسين . يوشين كونيمان، ليفنت تونجيل ( الطبعة الأولى). ويست نياك: مطبعة جامعة كامبريدج. ص 27. ISBN   978-1-107-05344-1.
  3. ديو، نارسنج (17 أغسطس 2016). نظرية الرسوم البيانية مع تطبيقات في الهندسة وعلوم الحاسوب . منشورات كوريير دوفر. ISBN 978-0-486-80793-5.
  4. "المشي، والمسارات، والممرات، والدراجات، والدوائر" . نجاح الطلاب الأكاديمي . تم الاسترجاع في 13 يوليو 2026 .
  5. "شرح خوارزمية أقصر مسار مع مسائل" . GeeksforGeeks . 2023-11-02 . تم الاطلاع عليه بتاريخ 2026-07-13 .
  6. بروبيكر، بن (2025-08-06). "الطريقة الجديدة هي أسرع طريقة لإيجاد أفضل المسارات" . مجلة كوانتا . تم الاطلاع عليه بتاريخ 2026-07-13 .
  7. ^ كورمين وآخرون. 2001 ، ص. 655 
  8. دور، كريستوف؛ هايليغمان، مارك؛ هوير، بيتر؛ محلة، مهدي (يناير 2006). "تعقيد الاستعلام الكمي لبعض مسائل الرسوم البيانية". مجلة SIAM للحوسبة . 35 (6): 1310-1328 . arXiv : quant-ph/0401091 . doi : 10.1137/050644719 . ISSN 0097-5397 . S2CID 14253494 .  
  9. بروبيكر، بن (2025-08-06). "الطريقة الجديدة هي أسرع طريقة لإيجاد أفضل المسارات" . مجلة كوانتا . تم الاطلاع عليه بتاريخ 2025-08-11 .
  10. 12Dial, Robert B. (1969). "Algorithm 360: Shortest-Path Forest with Topological Ordering [H]". Communications of the ACM. 12 (11): 632–633. doi:10.1145/363269.363610. S2CID 6754003.
  11. Khanna, Sanjeev; Song, Junkai (February 18, 2026). "An n2+o(1) Time Algorithm for Single-Source Negative Weight Shortest Paths". arXiv:2602.16638 [cs.DS].
  12. Cormen, Thomas H. (July 31, 2009). Introduction to Algorithms (3rd ed.). MIT Press. ISBN 9780262533058.
  13. Kleinberg, Jon; Tardos, Éva (2005). Algorithm Design (1st ed.). Addison-Wesley. ISBN 978-0321295354.
  14. Dürr, C.; Høyer, P. (1996-07-18). "A Quantum Algorithm for Finding the Minimum". arXiv:quant-ph/9607014.
  15. Nayebi, Aran; Williams, V. V. (2014-10-22). "Quantum algorithms for shortest paths problems in structured instances". arXiv:1410.6220 [quant-ph].
  16. Sanders, Peter (March 23, 2009). "Fast route planning". Google Tech Talk. Archived from the original on 2021-12-11.
  17. Hoceini, S.; A. Mellouk; Y. Amirat (2005). "K-Shortest Paths Q-Routing: A New QoS Routing Algorithm in Telecommunication Networks". Networking - ICN 2005, Lecture Notes in Computer Science, Vol. 3421. Vol. 3421. Springer, Berlin, Heidelberg. pp. 164–172. doi:10.1007/978-3-540-31957-3_21. ISBN 978-3-540-25338-9.
  18. Chen, Danny Z. (December 1996). "Developing algorithms and software for geometric path planning problems". ACM Computing Surveys. 28 (4es). Article 18. doi:10.1145/242224.242246. S2CID 11761485.
  19. Abraham, Ittai; Fiat, Amos; Goldberg, Andrew V.; Werneck, Renato F. "Highway Dimension, Shortest Paths, and Provably Efficient Algorithms". ACM-SIAM Symposium on Discrete Algorithms, pages 782–793, 2010.
  20. Abraham, Ittai; Delling, Daniel; Goldberg, Andrew V.; Werneck, Renato F. research.microsoft.com/pubs/142356/HL-TR.pdf "A Hub-Based Labeling Algorithm for Shortest Paths on Road Networks". Symposium on Experimental Algorithms, pages 230–241, 2011.
  21. Kroger, Martin (2005). "Shortest multiple disconnected path for the analysis of entanglements in two- and three-dimensional polymeric systems". Computer Physics Communications. 168 (3): 209–232. Bibcode:2005CoPhC.168..209K. doi:10.1016/j.cpc.2005.01.020.
  22. Lozano, Leonardo; Medaglia, Andrés L (2013). "On an exact method for the constrained shortest path problem". Computers & Operations Research. 40 (1): 378–384. doi:10.1016/j.cor.2012.07.008.
  23. Osanlou, Kevin; Bursuc, Andrei; Guettier, Christophe; Cazenave, Tristan; Jacopin, Eric (2019). "Optimal Solving of Constrained Path-Planning Problems with Graph Convolutional Networks and Optimized Tree Search". 2019 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS). pp. 3519–3525. arXiv:2108.01036. doi:10.1109/IROS40897.2019.8968113. ISBN 978-1-7281-4004-9. S2CID 210706773.
  24. Bar-Noy, Amotz; Schieber, Baruch (1991). "The canadian traveller problem". Proceedings of the Second Annual ACM-SIAM Symposium on Discrete Algorithms: 261–270. CiteSeerX 10.1.1.1088.3015.
  25. Nikolova, Evdokia; Karger, David R. "Route planning under uncertainty: the Canadian traveller problem"(PDF). Proceedings of the 23rd National Conference on Artificial Intelligence (AAAI). pp. 969–974. Archived(PDF) from the original on 2022-10-09.
  26. Cherkassky, Boris V.; Goldberg, Andrew V. (1999-06-01). "Negative-cycle detection algorithms". Mathematical Programming. 85 (2): 277–311. doi:10.1007/s101070050058. ISSN 1436-4646. S2CID 79739.
  27. Pair, Claude (1967). "Sur des algorithmes pour des problèmes de cheminement dans les graphes finis" [On algorithms for path problems in finite graphs]. In Rosentiehl, Pierre (ed.). Théorie des graphes (journées internationales d'études) [Theory of Graphs (international symposium)]. Rome (Italy), July 1966. Dunod (Paris); Gordon and Breach (New York). p. 271. OCLC 901424694.
  28. Derniame, Jean Claude; Pair, Claude (1971). Problèmes de cheminement dans les graphes[Path Problems in Graphs]. Dunod (Paris).
  29. Baras, John; Theodorakopoulos, George (4 April 2010). Path Problems in Networks. Morgan & Claypool Publishers. pp. 9–. ISBN 978-1-59829-924-3.
  30. Gondran, Michel; Minoux, Michel (2008). "chapter 4". Graphs, Dioids and Semirings: New Models and Algorithms. Springer Science & Business Media. ISBN 978-0-387-75450-5.
  31. Pouly, Marc; Kohlas, Jürg (2011). "Chapter 6. Valuation Algebras for Path Problems". Generic Inference: A Unifying Theory for Automated Reasoning. John Wiley & Sons. ISBN 978-1-118-01086-0.
  32. Loui, R.P., 1983. Optimal paths in graphs with stochastic or multidimensional weights. Communications of the ACM, 26(9), pp.670-676.
  33. Rajabi-Bahaabadi, Mojtaba; Shariat-Mohaymany, Afshin; Babaei, Mohsen; Ahn, Chang Wook (2015). "Multi-objective path finding in stochastic time-dependent road networks using non-dominated sorting genetic algorithm". Expert Systems with Applications. 42 (12): 5056–5064. doi:10.1016/j.eswa.2015.02.046.
  34. Olya, Mohammad Hessam (2014). "Finding shortest path in a combined exponential – gamma probability distribution arc length". International Journal of Operational Research. 21 (1) 64020: 25–37. doi:10.1504/IJOR.2014.064020.
  35. Olya, Mohammad Hessam (2014). "Applying Dijkstra's algorithm for general shortest path problem with normal probability distribution arc length". International Journal of Operational Research. 21 (2) 64541: 143–154. doi:10.1504/IJOR.2014.064541.
  36. Hassin, Refael (February 1992). "Approximation Schemes for the Restricted Shortest Path Problem". Mathematics of Operations Research. 17 (1): 36–42. doi:10.1287/moor.17.1.36. ISSN 0364-765X.
  37. Lorenz, Dean H.; Raz, Danny (June 2001). "A simple efficient approximation scheme for the restricted shortest path problem". Operations Research Letters. 28 (5): 213–219. doi:10.1016/s0167-6377(01)00069-4. ISSN 0167-6377.
  38. 12Mehlhorn, Kurt; Ziegelmann, Mark (2000). "Resource Constrained Shortest Paths". In Paterson, Mike S. (ed.). Algorithms - ESA 2000. Lecture Notes in Computer Science. Vol. 1879. Berlin, Heidelberg: Springer. pp. 326–337. doi:10.1007/3-540-45253-2_30. ISBN 978-3-540-45253-9.
  39. García-Heredia, David; Molina, Elisenda; Laguna, Manuel; Alonso-Ayuso, Antonio (November 2021). "A solution method for the shared resource-constrained multi-shortest path problem". Expert Systems with Applications. 182 115193. doi:10.1016/j.eswa.2021.115193. hdl:10016/30793. ISSN 0957-4174.
  40. Handler, Gabriel Y.; Zang, Israel (December 1980). "A dual algorithm for the constrained shortest path problem". Networks. 10 (4): 293–309. doi:10.1002/net.3230100403. ISSN 0028-3045.

Bibliography

Further reading