Հոսքային ցանց
Գրաֆների տեսության մեջ հոսքի ցանցը (flow network), որը նաև կոչվում է տրանսպոտային ցանց, ուղղված գրաֆ է, որտեղ ամեն ծայրը ունի որոշակի թողունակություն, և որտեղ այդ ծայրերը ստանում են հոսք: Հոսքի քանակը եզրերի վրա չի կարող գերազանցել եզրի թողունակությունը: Հաճախ գործառնությունների հետազոտությունում (Operations Research) ուղիղ գրաֆն անվանվում է «ցանց», գագաթները կոչվում են «հանգույցներ», իսկ եզրերը կոչվում են «աղեղներ»:
Հոսքը պետք է բավարարի այն սահմանափակումները, որ որոշ հոսքերի գումարը դեպի հանգույց հավասար է դրանից դուրս եկող հոսքեի գումարին, բացառությամբ այն դեպքերի, երբ դա «աղբյուրն» է` հիմքը, որն ունի ավելի շատ դուրս եկող հոսք, կամ ընդունիչն է, վերջինս էլ ունի ավելի շատ մուտքային հոսք: Ցանցը կարող է օգտագործվել որպես երթևեկության մոդել ճանապարհային համակարգի մեջ, հեղուկներ խողովակների մեջ, հոսանքներ էլեկտրական միացման մեջ կամ որևէ նման մի բան, որի մեջ ինչ-որ բան «ճանապարհորդում» է ցանցային հանգույցների միջոցով:
Բովանդակություն |
Նկարագրությունը [խմբագրել]
-ն վերջավոր ուղղահայաց գրաֆ է, որում ամեն ծայրը
ունի ոչ բացասական , իրական արժեքով թողունակություն`
: Եթե
մենք ենթադրում ենք, որ
: Մենք տարբերակում ենք երկու գագաթներ` ինֆորմացիայի աղբյուրը
-ը և ընդունիչը
-ն: Հոսքային ցանցը իրական ֆունկցիա է
հետևյալ երեք հատկություններով բոլոր
և
հանգույցների համար:
-
Թողունակության սահմանափակումներ (Capacity constraints):
: Հոսքը եզրով չի կարող գերազանցել իր թողունակությունը:Շեղման սիմետրիկություն` համաչափություն (Skew symmetry):
. Ցանցային հոսքը
ից դեպի
պետք է լինի հակադիր
-ից դեպի
ցանցային հոսքին (տես օրինակը):Հոսքի պահպանություն (Flow conservation):
, քանի դեռ
կամ
: Ցանցային հոսքը դեպի հանգույց 0 է , բացառությամբ աղբյուրի (source), որը "արտադրում է" հոսք,և ընդունիչի, որը "սպառում", օգտագործում է հոսքը:
Նկատենք, որ
-ն հոսքային ցանցն է
-ից դեպի
: Եթե գրաֆն իրենից ներկայացնում է ֆիզիկական ցանց,և եթե գոյություն ունի իրական հոսք, օրինակ, 4 միավոր
-ից դեպի
, և 3 միավորի իրական հոսք
-ից դեպի
, մենք ունենք
և
:
Ծայրի մնացորդային թողունակությունը
-ն է:Սա նկարագրում է մնացորդային ցանցը` որոշված
-ով, որը տալիս է հասանելի թողունակության որոշակի քանակություն: Տեսնենք, որ դա մնացորդային ցանցում կարող է լինել ծայր
-իվ դեպի
, նույնիսկ եթե չկա ոչ մի ծայր` եզր
-ից դեպի
սկզբնական (օրիգինալ) ցանցում: Հոսքերը հակադիր ուղղություններում կրճատվում (չեղարկվում) են` նվազեցնելով հոսքը
-ից դեպի
, նույնն է, թե ավելացվում են հոսքերը
-ից դեպի
: Աճող ճանապարհը ուղի է
մնացորդային ցանցում, որտեղ
,
, և
. Ցանցն ունի մաքսիմում հոսք, այն և միայն այն դեօքում, եթե չկա աճող ճանապարհ մնացորդային ցանցում:
Եթե որևէ մեկին անհրաժեշտ է մոդելավորել ցանց ավելի քան մեկ սկզբնաղբյուրներով, ապա այդ աղբյուրը` supersource-ը ներկայացվում է գրաֆի տեսքով: Սա պարունակում է գագաթ, որը ծայերով կապված է յուրաքանչյուր սկզբնաղբյուրի հետ անսահման թողունակությամբ,այսպիսով ստեղծվում է գլոբալ սկզբնաղբյուրի տպավորություն: Ընդունիչների համար նմանատիպ կառուցվածքն էլ կոչվում է գերընդունիչ` supersink.
Օրինակ [խմբագրել]
Աջում մենք տեսնում ենք հոսքային ցանցը` նշված
-ով, սկզբնաղբյուրը
-ով, և չորս լրացուցիչ հանգույցներ: Հոսքը և թողունակությունը նշանակված է
-ով: Տեսնենք, թե ինչպես է ցանցն ապահովում շեղման համաչափությունը, թողունակության սահմանափակումները և հոսքի պաշտպանությունը: Հոսքի ամբողջ գումարը
-ից դեպի
5 միավոր է, որը կարող ենք հեշտությամբ նկատել այն փաստից, որ ամբողջ ելքային հոսքը
-ից 5 միավոր է, որը նաև մուտքային հոսքն է դեպի
: Մենք գիտենք, որ ոչ մի հոսք չի հայտնվում կամ անհետանում ցանկացած հանգույցներում:
Ներքևում տեսնում ենք տրված հոսքի համար մնացորդային ցանց: Տեսնենք, թե ինչպես է, որ կա դրական մնացորդային թողունակություն ծայրերի վրա, որտեղ սկզբնական թողունակությունը 0 է, օրինակ ծայրի համար
է: Այս հոսքը մաքսիմում հոսք չէ:Այստեղ ճանապարհներում կա հասանելի թողունակություն
,
և
, որոնք աճող ճանապարհներ են: Մնացորդային թողունակության առաջին ճանապարհը հետևյալն է` 
: Նկատենք, որ այդ աճող ճանապարհը
գոյություն չունի սկզբնական (օրիգինալ) ցանցում, բայց մենք կարող ենք ուղարկել հոսք դրա միջով և դեռ ստանալ իրական հոսք:
Եթե սա իրական հոսք է, փաստորեն հնարավոր է լինի 2-ի հոսք
-ից դեպի
, և 1-ի հոսք
-ից դեպի
, բայց մենք միայն օժանդակում ենք ցանցային հոսքը:
Կիրառություններ [խմբագրել]
Պատկերացնենք մի շարք ջրատար խողովակներ ցանցին համապատասխան: Յուրաքանչյուր խողովակ ունի որոշակի տրամագիծ, այսպիսով այն կարող է օժանդակել որոշ քանակությամբ ջրի հոսքը:Այնտեղ, որտեղ խողովակները հանդիպում են, ջրի ամբողջ քանակությունը լցվում է դրանց մեջ, և այդ միացումը պետք է հավասար լինի ջրի դուրս եկող քանակությանը: Մենք ունենք ջրի մուտք, որը մեր սկզբնաղբյուրն է (source), և ջրի ելք, որը մեր ընդունիչն է: Հոսքն էլ պետք է լինի ջրելու այն հնարավոր եղանակը, որպեսզի հասնենք մուտքից դեպի ելքին:
Հոսքեր կարող ենք համարել տրանսպորտային ցանցում մարդկանց,կամ էլեկտրականությունը էլեկտարական բաշխման համակարգում: Նմանատիպ ֆիզիկական ցանցերում մուտքային հոսքը ցանկացած միջանկյալ հանգույցում, պետք է հավասար լինի այդ հանգույցի ելքային հոսքին: Այս պաշտպանության սահմանափակումը ձևակերպվում է որպես Կիրչհոֆի հոսանքի օրենք (Kirchhoff's current law):
Հոսքային ցանցերը կիրառվում են նաև էկոլոգիայում:Ցանցային էկոհամակարգի դաշտի վերլուծությունը` մշակված Ռոբերտ Ուլյանովիչի և ուրիշների կողմից, ներառում է իր մեջ հասկացություններ ինֆորմացիայի տեսությունից և ջերմադինամիկաից ուսումնասիրելու այս ցանցերի էվոլյուցիան ժամանակի ընթացքում:
Ամենապարզ և ամենատարածված խնդիրրը, որը լուծվում է օգտագործելով ցանցային հոսքերը, դա այսպես կոչված մաքսիմում հոսքը գտնելն է, վերջինս էլ տրված գրաֆում ապահովում է ամենաշատ հնարավոր հոսքը աղբյուրից դեպի ընդունիչ: Կան շատ ուրիշ խնդիներ, որոնք լուծվում են մաքսիմում հոսքի ալգորիթմի օգնությամբ: Մաքսիմում հոսքի խնդիրները կարող են լուծվել Ֆորդ-Ֆուլկերսոնի ալգորիթմի հիման վրա: Մաքսիմում հոսքի մինիմում կրճատման թեորեմը ապացուցում է, որ մաքսիմում ցանցային հոսքը գտնելը հավասարազոր է մինիմում թողունակության կրճատումը գտնելուն, որը առանձնացնում է աղբյուրն ու ընդունիչը:
Բազմապրանքային հոսքերի խնդրում մենք ունենք բազմաթիվ աղբյուրներ և ընդունիչներ, և տարբեր "ապրանքատեսակներ", որոնք հոսքեր են տրված աղբյուրից դեպի ընդունիչը: Այսպիսի օրինակ կարող են հանդիսանալ տարբեր ապրանքները, որոնք արտադրվել են տարբեր գործարաններում և պետք է մատակարարվեն տարբեր հաճախորդներին նույն տրանսպորտային ցանցով:
Մինիմում արժեքի հոսքի խնդրում ամեն ծայր
ունի տրված արժեք`
, ինչպես նաև հոսքը ուղարկելու արժեքը`
ծայրերով`
. Այս խնդրի նպատակն է ուղարկել տրված հոսքի քանակությունը աղբյուրից դեպի ընդունիչ հնարավոր ցածր գներով:
Շրջանառության խնդրում մենք ունենք ավելի ցածր սահման
ծայրերին,ի հավելումն ավելի բարձր սահմանի
: Ամեն ծայր ունի իր արժեքը: Հաճախ հոսքի պաշտպանությունը պահում է բոլոր հանգույցները շրջանառության մեջ, և գոյություն ունի կապ ընդունիչից դեպի աղբյուրը: Այս եղանակով մենք կարող ենք որոշել ամբողջ հոսքը
-ով և
-ով: Հոսքը շրջանառվում է ցանցով, ինչպես տեսնում ենք խնդրի անվան մեջ:
Աղբյուրներ [խմբագրել]
- Հոդվածի սկզբնական տարբերակը թարգմանվել է անգլերեն վիքիպեդիայի համանուն հոդվածից։
Արտաքին հղումներ [խմբագրել]
- Մաքսիմում հոսքի խնդիրը
- Իրական գրաֆի օրինակներ
- Lemon C++գրադարան մաքսիմում հոսքերով, մինիմում արժեքի շրջանառության ալգորիթմներ
- QuickGraph, Գրաֆների կառուցվածքներ, ալգորիթմներ .Net-իհամար
: Հոսքը եզրով չի կարող գերազանցել իր թողունակությունը:
. Ցանցային հոսքը
, քանի դեռ
կամ
: Ցանցային հոսքը դեպի հանգույց 0 է , բացառությամբ աղբյուրի (source), որը "արտադրում է" հոսք,և ընդունիչի, որը "սպառում", օգտագործում է հոսքը: