Простий шлях на дагу з відсталими краями


10

У чому полягає складність наступної проблеми ( P? NP-hard?):

Вхід: спрямований ациклічний графік , набір зворотних ребер , і два різних вузли і .E V × V s tD=(V,E)EV×Vst

Запитання: Нехай позначає графік, утворений додаванням до ребер від . Чи існує простий шлях від до в який використовує принаймні один зворотний край?D E s t GG=(V,EE)DEstG

Примітка: 0) Простий шлях - це шлях, в якому не повторюється вершина. Зворотний край - це край, що суперечить частковому порядку, що передбачається DAG. 1) проблема легка, якщо ми вимагаємо простий шлях використовувати саме один зворотний край (або постійне число) шляхом тривіального скорочення до неперервної задачі шляху, яка допускає просте рішення PTime у DAG ( Perl і Shiloach, JACM'78 ) 2) проблема неперервного шляху є повною NP у загальних графах ( Fortune et al., TCS'80 ).


1
Це, безумовно , НЕ є оптимальним, але досить , щоб показати , що ваша проблема в P (якщо я не зрозумів що - то): нехай - ребра E ; застосувати алгоритм найкоротшого шляху від S до т до графи G я = ( V , E 'я J = 1 { е J } ) для я = 1 , 2 , . . . ,e1,...,emEstGi=(V,Ej=1i{ej}) . Іншими словами, продовжуйте додавати ребро, вибране з E, до графіка G ' = ( V , E ' ), поки не знайдете шлях від s до t . i=1,2,...,mEG=(V,E)st
Marzio De Biasi

1
Марціо: але що, якщо шлях, який ви знайдете, використовує лише ребра в , а жоден у E ? Ще може існувати інший шлях, який також включає край E ' . EEE
Девід Еппштейн

Що дуже дратує вашу проблему, це те, що наступна пов'язана проблема легко вважається NP-важкою: заданий графік і дві вершинні пари (s, t), (s ', t'), щоб визначити, чи є вершина-роз'єднання шляхи від s до t і від s 'до t', навіть коли t = s ', і навіть на графіках, що є об'єднанням двох DAG. Але це, мабуть, не допомагає в питанні, яке ви задаєте.
a3nm

1
Проблема непересічних шляхів є W [1] -твердою навіть у DAG, і це домашнє завдання показати, що це NP-Hard у DAG. Алгоритм Шилоаха розроблений для задачі двох непересічних шляхів, і дещо подібним чином працює для задачі k неперервних шляхів k у DAG, але це потребує часу n ^ k. Але принаймні визнає алгоритм XP для вашої проблеми.
Саїд
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.