9848 ΠΏΠΎΠ΄ΠΏΠΈΡΡΠΈΠΊΠΎΠ²
π PDLP: ΠΌΠ΅ΡΠΎΠ΄ Π±ΡΡΡΡΠΎΠ³ΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΡ Π·Π°Π΄Π°Ρ Π»ΠΈΠ½Π΅ΠΉΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ.
PDLP (PDHG Π΄Π»Ρ LP) - ΡΡΠΎ ΠΌΠ΅ΡΠΎΠ΄ Π±ΡΡΡΡΠΎΠ³ΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΡ Π·Π°Π΄Π°Ρ Π»ΠΈΠ½Π΅ΠΉΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Ρ Π²ΡΡΠΎΠΊΠΎΠΉ ΡΠΎΡΠ½ΠΎΡΡΡΡ, ΡΡΠΎ Π²Π°ΠΆΠ½ΠΎ Π΄Π»Ρ ΠΌΠ½ΠΎΠ³ΠΈΡ
ΠΎΠ±Π»Π°ΡΡΠ΅ΠΉ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ - ΠΎΡ ΠΌΠ°ΡΠΈΠ½Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡΡΠ΅Π½ΠΈΡ Π΄ΠΎ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ Π±ΠΈΠ·Π½Π΅Ρ-ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ².
PDLP ΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½ Π½Π° ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΊΡΡΠΏΠ½ΠΎΠΌΠ°ΡΡΡΠ°Π±Π½ΡΡ
Π·Π°Π΄Π°Ρ, Π³Π΄Π΅ ΡΡΠ°Π΄ΠΈΡΠΈΠΎΠ½Π½ΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ ΡΠΈΠΌΠΏΠ»Π΅ΠΊΡ-ΠΌΠ΅ΡΠΎΠ΄ ΠΈ ΠΌΠ΅ΡΠΎΠ΄ Π²Π½ΡΡΡΠ΅Π½Π½ΠΈΡ
ΡΠΎΡΠ΅ΠΊ, ΡΡΠ°Π½ΠΎΠ²ΡΡΡΡ Π½Π΅ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΡΠΌΠΈ ΠΈΠ·-Π·Π° Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ ΡΠ°ΠΊΡΠΎΡΠΈΠ·Π°ΡΠΈΠΈ ΠΌΠ°ΡΡΠΈΡ.
Π ΠΎΡΠ½ΠΎΠ²Π΅ PDLP Π»Π΅ΠΆΠΈΡ ΠΏΡΠΈΠ½ΡΠΈΠΏ primaldual hybrid gradient (PDHG), ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½Π½ΡΠΉ ΠΊ Π·Π°Π΄Π°ΡΠ΅ ΡΠ΅Π΄Π»ΠΎΠ²ΠΎΠΉ ΡΠΎΡΠΊΠΈ, ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ½ΠΎΠΉ ΠΈΡΡ
ΠΎΠ΄Π½ΠΎΠΉ Π·Π°Π΄Π°ΡΠ΅ ΠΠ. ΠΠ»Ρ ΠΏΠΎΠ²ΡΡΠ΅Π½ΠΈΡ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΠΈ PDHG Π² PDLP ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ ΡΡΠ΄ ΡΡΠΎΠ²Π΅ΡΡΠ΅Π½ΡΡΠ²ΠΎΠ²Π°Π½ΠΈΠΉ:
π’Π°Π΄Π°ΠΏΡΠΈΠ²Π½ΡΠΉ Π²ΡΠ±ΠΎΡ ΡΠ°Π³Π°;
π’Π°Π΄Π°ΠΏΡΠΈΠ²Π½ΡΠΉ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΡΡΠΊ;
π’Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ Π²Π΅ΡΠΎΠ² ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΡΡ
ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
;
π’ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅;
π’Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»ΡΠ½ΠΎΠ΅ ΠΏΡΠ΅Π΄ΠΎΠ±ΡΡΠ»Π°Π²Π»ΠΈΠ²Π°Π½ΠΈΠ΅.
ΠΠ»Π³ΠΎΡΠΈΡΠΌ PDLP Π½Π°ΡΠΈΠ½Π°Π΅Ρ ΡΠ°Π±ΠΎΡΡ Ρ ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΡ ΠΈ Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠ΅Π΄ΠΎΠ±ΡΡΠ»Π°Π²Π»ΠΈΠ²Π°Π½ΠΈΡ. ΠΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΡΠΏΡΠΎΡΠ°Π΅Ρ Π·Π°Π΄Π°ΡΡ ΠΏΡΡΠ΅ΠΌ Π²ΡΡΠ²Π»Π΅Π½ΠΈΡ ΠΈ ΡΡΡΡΠ°Π½Π΅Π½ΠΈΡ ΠΈΠ·Π±ΡΡΠΎΡΠ½ΡΡ
ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠΉ, ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
ΠΈ Π΄ΡΡΠ³ΠΈΡ
ΡΠΏΡΠΎΡΠ΅Π½ΠΈΠΉ.
ΠΠΈΠ°Π³ΠΎΠ½Π°Π»ΡΠ½ΠΎΠ΅ ΠΏΡΠ΅Π΄ΠΎΠ±ΡΡΠ»Π°Π²Π»ΠΈΠ²Π°Π½ΠΈΠ΅ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΡΠ΅Ρ ΠΌΠ°ΡΡΠΈΡΡ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠΉ Π΄Π»Ρ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ ΡΡ
ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ Π°Π»Π³ΠΎΡΠΈΡΠΌΠ°. ΠΠΎΡΠ»Π΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΡΠΈΡ
ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΡΡ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΠΈΡΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΡΠΉ ΠΏΡΠΎΡΠ΅ΡΡ PDHG Ρ Π°Π΄Π°ΠΏΡΠΈΠ²Π½ΡΠΌ Π²ΡΠ±ΠΎΡΠΎΠΌ ΡΠ°Π³Π° ΠΈ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΡΡΠΊΠ°ΠΌΠΈ.
ΠΠ»Ρ ΠΎΡΠ΅Π½ΠΊΠΈ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΠΈ Π°Π»Π³ΠΎΡΠΈΡΠΌΠ° PDLP ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈΡΡ ΡΡΠΈ Π½Π°Π±ΠΎΡΠ° Π΄Π°Π½Π½ΡΡ
: MIP Relaxations, LP benchmark ΠΈ Netlib. Π Π΅Π·ΡΠ»ΡΡΠ°ΡΡ ΡΡΠ°Π²Π½ΠΈΠ²Π°Π»ΠΈΡΡ Ρ baseline PDHG ΠΈ Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΠΌΠ΅ΡΠΎΠ΄Π°ΠΌΠΈ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ ΠΏΠΎΡΡΠ΄ΠΊΠ°: SCS (Π² ΠΏΡΡΠΌΠΎΠΌ ΠΈ ΠΌΠ°ΡΡΠΈΡΠ½ΠΎ-ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ°Ρ
) ΠΈ ΡΠ»ΡΡΡΠ΅Π½Π½ΠΎΠΉ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠ΅ΠΉ ΠΌΠ΅ΡΠΎΠ΄Π° ΡΠΊΡΡΡΠ°Π³ΡΠ°Π΄ΠΈΠ΅Π½ΡΠ°.
ΠΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΡ ΠΏΠΎΠΊΠ°Π·Π°Π»ΠΈ, ΡΡΠΎ PDLP Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΏΡΠ΅Π²ΠΎΡΡ
ΠΎΠ΄ΠΈΡ baseline PDHG ΠΏΠΎ ΡΠΊΠΎΡΠΎΡΡΠΈ ΡΠ΅ΡΠ΅Π½ΠΈΡ Π·Π°Π΄Π°Ρ ΠΈ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Ρ ΡΠ΅ΡΠ΅Π½Π½ΡΡ
Π·Π°Π΄Π°Ρ. ΠΡΠΈ ΡΡΠΎΠΌ PDLP Π½Π° Π½Π΅ΠΊΠΎΡΠΎΡΡΡ
Π·Π°Π΄Π°ΡΠ°Ρ
ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ, ΡΠΎΠΏΠΎΡΡΠ°Π²ΠΈΠΌΡΡ Ρ ΠΊΠΎΠΌΠΌΠ΅ΡΡΠ΅ΡΠΊΠΈΠΌ ΡΠ΅ΡΠ°ΡΠ΅Π»Π΅ΠΌ Π»ΠΈΠ½Π΅ΠΉΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Gurobi.
ΠΠ°ΠΆΠ½ΡΠΌ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠΌ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΡΠΏΠ΅ΡΠ½ΠΎΠ΅ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ PDLP Π΄Π»Ρ ΡΠ΅ΡΠ΅Π½ΠΈΡ Π·Π°Π΄Π°ΡΠΈ ΡΠ°Π½ΠΆΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π²Π΅Π±-ΡΡΡΠ°Π½ΠΈΡ PageRank, Π³Π΄Π΅ ΡΡΠ°Π΄ΠΈΡΠΈΠΎΠ½Π½ΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ Π½Π΅ ΡΠΏΡΠ°Π²Π»ΡΡΡΡΡ ΠΈΠ·-Π·Π° Π±ΠΎΠ»ΡΡΠΈΡ
ΡΠ°Π·ΠΌΠ΅ΡΠΎΠ² Π·Π°Π΄Π°ΡΠΈ.
Π’Π΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡΠΎΠ²ΠΎΠ΄ΠΈΠ»ΠΎΡΡ Π½Π° ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ
Π³ΡΠ°ΡΠ°Ρ
ΡΠΈΠΏΠ° BarabΓ‘si-Albert Ρ ΠΌΠ°ΠΊΡ. ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎΠΌ ΡΠ·Π»ΠΎΠ² Π΄ΠΎ 10^7.
PDLP ΡΡΠΏΠ΅ΡΠ½ΠΎ ΡΠ΅ΡΠΈΠ» Π·Π°Π΄Π°ΡΠΈ PageRank Π·Π° 5.4 ΡΠ°ΡΠ° (Π³ΡΠ°Ρ 10^7 ΡΠ·Π»ΠΎΠ² Ρ ΡΠΎΡΠ½ΠΎΡΡΡΡ 10^-8), Π² ΡΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠ°ΠΊ Gurobi ΡΡΠΎΠ»ΠΊΠ½ΡΠ»ΡΡ Ρ ΠΎΡΠΈΠ±ΠΊΠ°ΠΌΠΈ Π½Π΅Ρ
Π²Π°ΡΠΊΠΈ ΠΏΠ°ΠΌΡΡΠΈ.
βΆοΈ ΠΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠ°Π»ΡΠ½Π°Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Π΄Π»Ρ ΡΠ΅ΡΠ΅Π½ΠΈΡ Π·Π°Π΄Π°Ρ Π»ΠΈΠ½Π΅ΠΉΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΌΠ΅ΡΠΎΠ΄Π°ΠΌΠΈ PDLP Π½Π° Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ
ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ°Ρ
NVIDIA Π² ΡΡΠ΅Π΄Π΅ ΡΠ·ΡΠΊΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Julia:
# set up the necessary packages:
$ julia --project -e 'import Pkg; Pkg.instantiate()'
# run solve.jl script
$ julia --project scripts/solve.jl \
--instance_path=INSTANCE_PATH --output_directory=OUTPUT_DIRECTORY \
--tolerance=TOLERANCE --time_sec_limit=TIME_SEC_LIMIT
# The results are written to JSON and text files
# in is the working directory.
πΠΠΈΡΠ΅Π½Π·ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ : MIT ΠΈ Apache 2.0 License.
π‘Arxiv
π₯Github
#AI #ML #LP #PDLP
2 ΠΌΠΈΠ½ΡΡΡ
23Β ΡΠ΅Π½ΡΡΠ±ΡΡ