Решение задачи о максимальном разрезе графа методом глобального равновесного поиска

Запропоновано підхід до розв’язання задачі про максимальний розріз неорієнтованого графа. Він базується на використанні методу глобального рівноважного пошуку, який на даний час є одним із найефективніших методів дискретного програмування. Досліджено ефективність запропонованого алгоритму....

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Datum:2010
Hauptverfasser: Шило, В.П., Шило, О.В.
Format: Artikel
Sprache:Russian
Veröffentlicht: Інститут кібернетики ім. В.М. Глушкова НАН України 2010
Schriftenreihe:Кибернетика и системный анализ
Schlagworte:
Online Zugang:http://dspace.nbuv.gov.ua/handle/123456789/45627
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
Назва журналу:Digital Library of Periodicals of National Academy of Sciences of Ukraine
Zitieren:Решение задачи о максимальном разрезе графа методом глобального равновесного поиска / В.П. Шило, О.В. Шило // Кибернетика и системный анализ. — 2010. — № 5. — С. 68-79. — Бібліогр.: 14 назв. — рос.

Institution

Digital Library of Periodicals of National Academy of Sciences of Ukraine
id irk-123456789-45627
record_format dspace
spelling irk-123456789-456272013-06-17T03:15:13Z Решение задачи о максимальном разрезе графа методом глобального равновесного поиска Шило, В.П. Шило, О.В. Системный анализ Запропоновано підхід до розв’язання задачі про максимальний розріз неорієнтованого графа. Він базується на використанні методу глобального рівноважного пошуку, який на даний час є одним із найефективніших методів дискретного програмування. Досліджено ефективність запропонованого алгоритму. An approach is proposed to the solution of the max-cut problem. It is based on the use of the global equilibrium search method that is one of the most efficient discrete programming methods at the present time. The efficiency of the proposed algorithm is investigated. 2010 Article Решение задачи о максимальном разрезе графа методом глобального равновесного поиска / В.П. Шило, О.В. Шило // Кибернетика и системный анализ. — 2010. — № 5. — С. 68-79. — Бібліогр.: 14 назв. — рос. 0023-1274 http://dspace.nbuv.gov.ua/handle/123456789/45627 519.854 ru Кибернетика и системный анализ Інститут кібернетики ім. В.М. Глушкова НАН України
institution Digital Library of Periodicals of National Academy of Sciences of Ukraine
collection DSpace DC
language Russian
topic Системный анализ
Системный анализ
spellingShingle Системный анализ
Системный анализ
Шило, В.П.
Шило, О.В.
Решение задачи о максимальном разрезе графа методом глобального равновесного поиска
Кибернетика и системный анализ
description Запропоновано підхід до розв’язання задачі про максимальний розріз неорієнтованого графа. Він базується на використанні методу глобального рівноважного пошуку, який на даний час є одним із найефективніших методів дискретного програмування. Досліджено ефективність запропонованого алгоритму.
format Article
author Шило, В.П.
Шило, О.В.
author_facet Шило, В.П.
Шило, О.В.
author_sort Шило, В.П.
title Решение задачи о максимальном разрезе графа методом глобального равновесного поиска
title_short Решение задачи о максимальном разрезе графа методом глобального равновесного поиска
title_full Решение задачи о максимальном разрезе графа методом глобального равновесного поиска
title_fullStr Решение задачи о максимальном разрезе графа методом глобального равновесного поиска
title_full_unstemmed Решение задачи о максимальном разрезе графа методом глобального равновесного поиска
title_sort решение задачи о максимальном разрезе графа методом глобального равновесного поиска
publisher Інститут кібернетики ім. В.М. Глушкова НАН України
publishDate 2010
topic_facet Системный анализ
url http://dspace.nbuv.gov.ua/handle/123456789/45627
citation_txt Решение задачи о максимальном разрезе графа методом глобального равновесного поиска / В.П. Шило, О.В. Шило // Кибернетика и системный анализ. — 2010. — № 5. — С. 68-79. — Бібліогр.: 14 назв. — рос.
series Кибернетика и системный анализ
work_keys_str_mv AT šilovp rešeniezadačiomaksimalʹnomrazrezegrafametodomglobalʹnogoravnovesnogopoiska
AT šiloov rešeniezadačiomaksimalʹnomrazrezegrafametodomglobalʹnogoravnovesnogopoiska
first_indexed 2025-07-04T04:29:37Z
last_indexed 2025-07-04T04:29:37Z
_version_ 1836689299624427520
fulltext ÓÄÊ 519.854 Â.Ï. ØÈËÎ, Î.Â. ØÈËÎ ÐÅØÅÍÈÅ ÇÀÄÀ×È Î ÌÀÊÑÈÌÀËÜÍÎÌ ÐÀÇÐÅÇÅ ÃÐÀÔÀ ÌÅÒÎÄÎÌ ÃËÎÁÀËÜÍÎÃÎ ÐÀÂÍÎÂÅÑÍÎÃÎ ÏÎÈÑÊÀ Êëþ÷åâûå ñëîâà: ðàçðåç ãðàôà, ïðèáëèæåííûå ìåòîäû, ìåòîä ãëîáàëüíîãî ðàâíîâåñíîãî ïîèñêà, âû÷èñëèòåëüíûé ýêñïåðèìåíò, ýôôåêòèâíîñòü àëãîðèòìà. Çàäà÷à î ìàêñèìàëüíîì ðàçðåçå ãðàôà (MAXCUT), âûçûâàþùàÿ â ïîñëåäíèå äâà äåñÿòèëåòèÿ áîëüøîé èíòåðåñ ó èññëåäîâàòåëåé, ÿâëÿåòñÿ êëàññè÷åñêîé ïðîáëå- ìîé äèñêðåòíîé îïòèìèçàöèè ñ ìíîãî÷èñëåííûìè ïðàêòè÷åñêèìè ïðèëîæåíèÿìè [1–3]. Äëÿ åå ðåøåíèÿ â äàííîé ðàáîòå ïðåäëàãàåòñÿ àëãîðèòì, îñíîâàííûé íà èñïîëüçîâàíèè ìåòîäà ãëîáàëüíîãî ðàâíîâåñíîãî ïîèñêà (ÃÐÏ) [4], êîòîðûé íà- øåë ïðèìåíåíèÿ ïðè ðåøåíèè ðàçëè÷íûõ êëàññîâ çàäà÷ äèñêðåòíîé îïòèìèçàöèè ñëîæíîé ïðèðîäû [5–8]. Ïðîâåäåíî ñðàâíèòåëüíîå èññëåäîâàíèå ýôôåêòèâíîñòè ïðåäëîæåííîãî àëãîðèòìà è ëó÷øèõ, èçâåñòíûõ íà äàííûé ìîìåíò, ïðèáëèæåí- íûõ àëãîðèòìîâ ðåøåíèÿ ðàññìàòðèâàåìîé çàäà÷è, ïîäòâåðäèâøåå ïðåèìóùåñòâà àëãîðèòìà ÃÐÏ êàê ïî áûñòðîäåéñòâèþ, òàê è ïî êà÷åñòâó ïîëó÷àåìûõ ðåøåíèé. Ïóñòü çàäàí íåîðèåíòèðîâàííûé ãðàô G G V E� ( , ) ñ ìíîæåñòâîì âåðøèí V, ìíîæåñòâîì ðåáåð E è êàæäîìó ðåáðó ( , )i j E� ãðàôà ïîñòàâëåíî â ñîîòâåòñòâèå ÷èñëî w ij , íàçûâàåìîå âåñîì ðåáðà ( , )i j . Ïðåäïîëîæèì, ÷òî ( , )V V1 2 — ðàçáèåíèå ìíîæåñòâà V âåðøèí ãðàôà G íà äâà íåïåðåñåêàþùèõñÿ ïîäìíîæåñòâà — V1 è V2 . Òîãäà ïîäìíîæåñòâî ðåáåð ( , )i j E� , îáëàäàþùèõ ñâîéñòâîì i V� 1 , j V� 2 , íàçûâà- åòñÿ ðàçðåçîì ( , )V V1 2 ãðàôà G. Î÷åâèäíî, ÷òî ëþáîå òàêîå ðàçáèåíèå ïîðîæäàåò ðàçðåç ãðàôà. Çàäà÷à î ìàêñèìàëüíîì ðàçðåçå íåîðèåíòèðîâàííîãî ãðàôà G ñîñòîèò â îòûñ- êàíèè òàêîãî ðàçáèåíèÿ ìíîæåñòâà V âåðøèí íà íåïåðåñåêàþùèåñÿ ïîäìíîæåñòâà V 1 è V2 , ÷òîáû ñóììà âåñîâ w V V w i V j V i j E ij ( , ) , ,( , ) 1 2 1 2 � � � � � ðåáåð ñîîòâåòñòâóþùåãî ðàçðåçà áûëà ìàêñèìàëüíîé. Îñòàíîâèìñÿ êðàòêî íà àíàëèçå ñîâðåìåííîãî ñîñòîÿíèÿ ìåòîäîâ ðåøåíèÿ ðàñ- ñìàòðèâàåìîé çàäà÷è, êîòîðàÿ ÿâëÿåòñÿ NP-òðóäíîé äàæå â ñëó÷àå, êîãäà âñå ðåáðà èìåþò åäèíè÷íûé âåñ. Ïîýòîìó îáúåì âû÷èñëåíèé â òî÷íûõ àëãîðèòìàõ îáû÷íî ýêñïîíåíöèàëüíî ðàñòåò ñ ðîñòîì ðàçìåðíîñòè çàäà÷è, ÷òî äàåò èì âîçìîæíîñòü ïðàêòè÷åñêè ðåøàòü òîëüêî çàäà÷è ìàëûõ èëè ñðåäíèõ ðàçìåðíîñòåé. Äëÿ çàäà÷ áîëüøèõ ðàçìåðíîñòåé ýôôåêòèâíû ïðèáëèæåííûå ìåòîäû, êîòî- ðûì ïîñâÿùåíî ìíîãî ïóáëèêàöèé, íàïðèìåð [3, 9–11].  ðàáîòå [9] ïðåäëîæåí àë- ãîðèòì CirCut. Ïðîâåäåííûå ñ ýòèì àëãîðèòìîì ýêñïåðèìåíòàëüíûå ðàñ÷åòû ïîêà- çàëè, ÷òî ïî êà÷åñòâó ïîëó÷àåìûõ ðåøåíèé è âðåìåíè èõ íàõîæäåíèÿ îí ïðåâîñõî- äèò âñå èçâåñòíûå íà ìîìåíò åãî ïîÿâëåíèÿ ïðèáëèæåííûå àëãîðèòìû. Ïðåäëîæåííûå â [10] øåñòü àëãîðèòìîâ áàçèðóþòñÿ íà ìåòîäîëîãèè ïîèñêà ðåøåíèÿ ñ ïåðåìåííîé îêðåñòíîñòüþ (VNS), æàäíîé àäàïòèâíîé ïîèñêîâîé ïðîöå- äóðû (GRASP) è ïðîöåäóðû ñîåäèíåíèÿ ïîëó÷åííûõ ðåøåíèé ïóòÿìè (Path Relinking). Ïîêàçàíî, ÷òî ñ ïîìîùüþ àëãîðèòìà VNSPR [10] îòûñêèâàþòñÿ êà÷åñ- òâåííûå ðåøåíèÿ çà ñ÷åò î÷åíü áîëüøèõ âû÷èñëèòåëüíûõ çàòðàò.  ðàáîòå [12] ðàñ- ñìîòðåí ðàíäîìèçèðîâàííûé àëãîðèòì, ãàðàíòèðîâàííàÿ òî÷íîñòü êîòîðîãî ïðè 68 ISSN 0023-1274. Êèáåðíåòèêà è ñèñòåìíûé àíàëèç, 2010, ¹ 5 © Â.Ï. Øèëî, Î.Â. Øèëî, 2010 ïîëîæèòåëüíûõ âåñàõ ñîñòàâëÿåò 0,878 îò îïòèìàëüíîãî çíà÷åíèÿ öåëåâîé ôóíê- öèè. Îäíàêî ýòîò àëãîðèòì òðåáóåò áîëüøîãî îáúåìà âû÷èñëåíèé. Òàê, äëÿ ðåøå- íèÿ çàäà÷è ñ ÷èñëîì âåðøèí n � 200 åìó íåîáõîäèìî îêîëî òðåõ ÷àñîâ ìàøèííîãî âðåìåíè. Äâå ìîäèôèêàöèè, RRT è MST, ìóëüòèñòàðòíîãî àëãîðèòìà òàáó îïèñàíû â [11].  ðàáîòå [13] ïðåäëîæåí àëãîðèòì SS, áàçèðóþùèéñÿ íà èñïîëüçîâàíèè ìå- òîäà ðàçáðîñà. Âñå ýòè àëãîðèòìû íà íàñòîÿùèé ìîìåíò ÿâëÿþòñÿ ëó÷øèìè. Ìíîãî âàæíûõ ðåçóëüòàòîâ, êàñàþùèõñÿ ðåøåíèÿ çàäà÷è î ìàêñèìàëüíîì ðàçðåçå ãðàôà, ïðèâåäåíî â îáçîðå [3]. Ââåäåì ñëåäóþùèå ïåðåìåííûå: x i V i V i n i � � � � � � � 0 1 1 1 2 , , , , , , . åñëè åñëè � Òîãäà çàäà÷ó î ìàêñèìàëüíîì ðàçðåçå ãðàôà ìîæíî ñôîðìóëèðîâàòü êàê çàäà÷ó áóëåâà êâàäðàòè÷íîãî ïðîãðàììèðîâàíèÿ áåç îãðàíè÷åíèé (UBQP): íàéòè max ( ) ( ) , ( , ) x ij i j E i j i f x w x x � � � � � � � � � � { }0 1 2 . (1)  òî æå âðåìÿ çàäà÷à î ìàêñèìàëüíîì ðàçðåçå ãðàôà ñâîäèòñÿ ê âçâåøåííîé çàäà÷å î ìàêñèìàëüíîé âûïîëíèìîñòè WMAX-2-SAT. Äåéñòâèòåëüíî, ïîñòàâèì â ñîîòâåò- ñòâèå êàæäîìó ðåáðó ( , )i j äâå ëîãè÷åñêèå ôîðìóëû: x x i j è x xi j ñ âåñîì wij . Òåïåðü ìîæíî ïîêàçàòü, ÷òî ðàññìàòðèâàåìûé â çàäà÷å MAXCUT ãðàô G èìååò ðàçðåç âåñà w* òîãäà è òîëüêî òîãäà, êîãäà ñîîòâåòñòâóþùàÿ âçâåøåííàÿ çàäà÷à î ìàêñèìàëüíîé âûïîëíèìîñòè èìååò ðåøåíèå ñ ñóììàðíûì âåñîì w wij i j E * ( , ) � � � .  ðàáîòàõ [7, 8] íà îñíîâå îáùåé ñõåìû ìåòîäà ÃÐÏ ïðåäëîæåíû àëãîðèòìû ðåøåíèÿ çàäà÷è áóëåâà êâàäðàòè÷íîãî ïðîãðàììèðîâàíèÿ è âçâåøåííîé çàäà÷è î ìàêñèìàëüíîé âûïîëíèìîñòè (WMAX-SAT), êîòîðûå ïîêàçàëè âûñîêóþ ýôôåê- òèâíîñòü ïðè ðåøåíèè ýòèõ çàäà÷. Ïîëó÷åííûå ðåçóëüòàòû ïîçâîëÿþò íàäåÿòüñÿ íà óñïåõ è ïðè èñïîëüçîâàíèè ìåòîäà ÃÐÏ äëÿ çàäà÷è î ìàêñèìàëüíîì ðàçðåçå íåîðèåíòèðîâàííîãî ãðàôà. Î÷åâèäíî, ÷òî ñâåäåíèå ðàññìàòðèâàåìîé çàäà÷è ê íàçâàííûì äâóì ìîäåëÿì è ïðèìåíåíèå ê íèì èçâåñòíûõ àëãîðèòìîâ ÃÐÏ [7, 8] íå áûëî áû ñòîëü ýôôåêòèâ- íûì, ïîýòîìó äëÿ çàäà÷è î ìàêñèìàëüíîì ðàçðåçå íåîðèåíòèðîâàííîãî ãðàôà ðàçðà- áîòàí ñïåöèàëüíûé àëãîðèòì, îñíîâàííûé íà èñïîëüçîâàíèè ìåòîäà ÃÐÏ è ñïåöèôèêè ýòîé çàäà÷è. Íàèëó÷øåå èç âñåõ äîïóñòèìûõ ðåøåíèé çàäà÷è, ðàññìîòðåííûõ ê äàííîìó øàãó âû÷èñëèòåëüíîãî ïðîöåññà, áóäåì íàçûâàòü ðåêîðäíûì, à ñîîòâåòñòâóþùåå åìó çíà÷åíèå öåëåâîé ôóíêöèè — ðåêîðäîì. Ïîñêîëüêó îáùàÿ ñõåìà ìåòîäà ÃÐÏ (GES) ïîäðîáíî îïèñàíà â [5], ïðåäñòà- âèì áàçèðóþùèéñÿ íà åå èñïîëüçîâàíèè àëãîðèòì ðåøåíèÿ ðàññìàòðèâàåìîé çàäà- ÷è â âèäå ñëåäóþùåé ïðîöåäóðû: procedure GES 1 initialization algorithm s parameters ngen maxnfai_ ' _ ( , l K, , )� , � — vector of temperature values, K — number of temperature stages, maxnfail — restart parameter, ngen — # of solutions generated during each stage, P �� — set of forbidden solutions, xbest � 0 (zero vector) 2 while (stopping criterion = FALSE) do 3 if ( ~ S �� ) then { ~ S — ìíîæåñòâî èçâåñòíûõ ðåøåíèé} 4 x construct random solution� _ _ 5 x xmax � ; ISSN 0023-1274. Êèáåðíåòèêà è ñèñòåìíûé àíàëèç, 2010, ¹ 5 69 6 ~ maxS x� (set of found solutions) 7 end if 8 nfail � 0 9 while (nfail maxnfail� AND f x f xbest( ) ( )max � ��) do 10 x xoldmax � max 11 for k � 0 to K do 12 calculate generation probabilities pr Sk_ _ ( , ~ ) 13 for g � 0 to ngen do 14 x generate solution x pr max distk k� _ ( , , _ )max 15 R search method x� _ ( ) 16 R R P� \ 17 ~ ~ S S R� � 18 x f xgood x S � � arg max ~ ( ) 19 if f x f xgood( ) ( )max� then 20 x xgoodmax � 21 if f x f xbest( ) ( )max � then x xbest � max 22 end if 23 end for 24 end for 25 if ( f old x f x( _ ) ( )max max� ) then nfail nfail� �1 26 else nfail � 0 27 ~ maxS x�{ } 28 end while 29 P P x� � max 30 ~ S �� 31 end while end GES stopping criterion ={ processing time sec� 360 . OR f x record fbest( ) _� } Ðàññìîòðèì áîëåå äåòàëüíî ýòó ïðîöåäóðó. Âíåøíèé öèêë (öèêë èòåðàöèé, ñòðîêè 2–31) îáåñïå÷èâàåò ïîâòîðÿåìîñòü ïîèñêà íàèëó÷øåãî ðåøåíèÿ.  íåì ëèáî ïðîâîäèòñÿ çàäàííîå êîëè÷åñòâî ïîâòîðîâ, ëèáî îí âûïîëíÿåòñÿ äî óñòàíîâëåíèÿ èñòèííîñòè íåêîòîðîãî êðèòåðèÿ îñòàíîâà (íàïðèìåð, íàõîæäåíèÿ ðåêîðäà, íå õóæå èçâåñòíîãî). Îñíîâíûì â ñòðóêòóðå àëãîðèòìà ÃÐÏ ÿâëÿåòñÿ «òåìïåðàòóðíûé» öèêë (ñòðî- êè 11–24), äëÿ êîòîðîãî íåîáõîäèìî çàäàòü çíà÷åíèÿ âåëè÷èí K è «òåìïåðàòóðû» �k , k K� 0, ,� .  ýòîì öèêëå ïðîâîäèòñÿ ñåðèÿ ñòàðòîâ ïîèñêà íàèëó÷øåãî ðåøå- íèÿ äëÿ âîçðàñòàþùèõ çíà÷åíèé «òåìïåðàòóðû». «Òåìïåðàòóðíûé» öèêë è åãî ïî- âòîðåíèÿ ïîçâîëÿþò ãèáêî ÷åðåäîâàòü ðåæèìû ñóæåíèÿ è ðàñøèðåíèÿ îáëàñòè ïîèñêà ðåøåíèÿ, ÷òî â èòîãå ïðèâîäèò ê âûñîêîé ýôôåêòèâíîñòè ìåòîäà ÃÐÏ. Ïóñòü ~ S — ïîäìíîæåñòâî ìíîæåñòâà S äîïóñòèìûõ ðåøåíèé ðàññìàòðèâàå- ìîé çàäà÷è, íàéäåííûõ àëãîðèòìîì ÃÐÏ, ~ | ~ ,S x x S xj j 1 1� � �{ }, ~ | ~ ,S x x S xj j 0 0� � �{ }, j n�1, ,� . Åñëè ìíîæåñòâî ~ S ïóñòî, òî îïåðàòîðû ñòðîê 4–6 ïîçâîëÿþò íàéòè ïåðâîå ðå- øåíèå è èíèöèàëèçèðîâàòü íåîáõîäèìûå äàííûå. Ñëåäóåò îòìåòèòü, ÷òî íàéäåí- íûå àëãîðèòìîì ÃÐÏ ðåøåíèÿ íå çàïîìèíàþòñÿ, à èñïîëüçóþòñÿ äëÿ âû÷èñëåíèÿ òàêèõ âåëè÷èí: ~ ( )exp ( ) exp ( ) ~ ~ E f x f x f xkj l k x S k x S j l j l � � � � � � � { } { } � � , k K� 0, ,� , l � 0 1, , j n�1, ,� . 70 ISSN 0023-1274. Êèáåðíåòèêà è ñèñòåìíûé àíàëèç, 2010, ¹ 5 Ýòè âåëè÷èíû ïîçâîëÿþò îïðåäåëèòü êîìïîíåíòû âåêòîðà âåðîÿòíîñòè ~ ( ~ , , ~ )p p pk k n k� 1 � â ñîîòâåòñòâèè ñî ñëåäóþùåé ôîðìóëîé (ñì., íàïðèìåð, [5]): ~ ~ ~ exp , ( ~ ~ ~ ~ p p p E E E E j k k k ij i j ij i � � � � � � � � � 1 1 1 0 50 0 0 1 0 1 1 1 0 1 1j i k i i)( ) � � �� � � � � � � � � . (2) Î÷åâèäíî, ÷òî âåðîÿòíîñòè ~pk ãåíåðèðîâàíèÿ íà÷àëüíûõ ðåøåíèé (ñòðîêà 12) äëÿ ïðîöåäóðû ãåíåðàöèÿ_ðåøåíèÿ ( )x (ñòðîêà 14) âû÷èñëÿþòñÿ èñõîäÿ èç ïîíÿòèé, çàèìñòâîâàííûõ èç ìåòîäà îòæèãà, è çàâèñÿò îò òåêóùåé «òåìïåðàòóðû» �k è íàé- äåííîãî ðàíåå ìíîæåñòâà ~ S äîïóñòèìûõ ðåøåíèé. Îïðåäåëÿþùèå êðèâóþ îòæèãà çíà÷åíèÿ �k , k K� 0, ,� , îáû÷íî âû÷èñëÿþòñÿ ïî ôîðìóëàì � � �� � � ��0 1, k k , k K� �1 1, ,� . Âåëè÷èíû �1 è � �1ïîäáèðàþòñÿ òàê, ÷òîáû | | ~ | |~maxx pK� � 0 , ãäå xmax — ðåêîðäíîå ðåøåíèå. Êðèâàÿ îòæèãà óíèâåðñàëüíà è íå íàñòðàèâàåòñÿ íà îòäåëüíóþ çàäà÷ó, à èñïîëüçóåòñÿ ïðè ðåøåíèè âñåõ çàäà÷. Ìàñøòà- áèðóþòñÿ òîëüêî êîýôôèöèåíòû öåëåâîé ôóíêöèè òàêèì îáðàçîì, ÷òîáû çíà÷åíèå ðå- êîðäà ðàâíÿëîñü çàäàííîé âåëè÷èíå. Âñå êîìïîíåíòû âåêòîðà ~p0 îäèíàêîâû. Óëó÷øàþùèé öèêë (ñòðîêè 9–28) âûïîëíÿåòñÿ äî òåõ ïîð, ïîêà maxnfail ðàç íå ïðîèçîéäåò óëó÷øåíèÿ ðåøåíèÿ xmax . Ïðîöåäóðà calculate generation probabilities_ _ (ñòðîêà 12) ïîçâîëÿåò âû÷èñëÿòü âåðîÿòíîñòè ñëó÷àéíîãî âîçìóùåíèÿ ðåøåíèÿ xmax ïî ôîðìóëå (2). Öèêë íàõîæäåíèÿ íîâûõ ðåøåíèé (ñòðîêè 13–23) ïîâòîðÿåòñÿ çàäàí- íîå ÷èñëî ngen ðàç. Ñ ïîìîùüþ ïðîöåäóðû ãåíåðàöèÿ_ðåøåíèÿ ñëó÷àéíûì îáðàçîì ãåíåðèðóåòñÿ ðåøåíèå x , êîòîðîå ÿâëÿåòñÿ íà÷àëüíûì äëÿ ïðîöåäóðû ìåòîä_ïîèñêà (ñòðîêà 16). Ïðè ìàëûõ «òåìïåðàòóðàõ» �k âîçìóùåíèå ðåøåíèÿ xmax íîñèò ñëó÷àé- íûé, ðàâíîâåðîÿòíûé õàðàêòåð, ïðè áîëüøèõ «òåìïåðàòóðàõ» çíà÷åíèÿ êîìïîíåíòîâ, îäèíàêîâûõ äëÿ ëó÷øèõ íàéäåííûõ ðåøåíèé, èçìåíÿþòñÿ ìàëî. «Òåìïåðàòóðíûé» öèêë ïîçâîëÿåò îñóùåñòâëÿòü äèâåðñèôèêàöèþ ïîèñêà ðåøåíèÿ (ïðè ìàëûõ «òåìïå- ðàòóðàõ») è åãî èíòåíñèôèêàöèþ (ïðè áîëüøèõ «òåìïåðàòóðàõ»). Òàêèì îáðàçîì, ïî ìåðå ïîâûøåíèÿ «òåìïåðàòóðû» ãåíåðèðóåìûå ðåøåíèÿ ïðèîáðåòàþò ïðèçíàêè, ïðèñóùèå ðåêîðäíûì ðåøåíèÿì, è â èòîãå ñõîäÿòñÿ ê ðåøåíèþ xmax . Ïðèâåäåì ïðîöåäóðó ãåíåðàöèÿ_ðåøåíèÿ: procedure ãåíåpàöèÿ påøåíèÿ x pr max distk k_ ( , , _ )max 1 x x� max ; dist � 0 ; j �1 2 while ( j n� ) 3 if x j �1 then 4 if ( ~ [ , ]p randomj k � 01 ) then 5 x j � 0 ; dist dist� �1 6 g x( ) � ïåðåñ÷åò_âåêòîðà_ gains x( ) 7 end if 8 end if 9 else 10 if ( ~ [ , ]p randomj k � 01 ) then 11 x j �1; dist dist� �1 12 g x( ) � ïåðåñ÷åò_âåêòîðà_ gains x( ) 13 end if 14 end else 15 j j� �1 16 if (dist max dist k� _ ) then break 17 ånd while ISSN 0023-1274. Êèáåðíåòèêà è ñèñòåìíûé àíàëèç, 2010, ¹ 5 71  ñòðîêå 1 ýòîé ïðîöåäóðû ïðîèñõîäèò ïðèñâîåíèå íà÷àëüíûõ çíà÷åíèé âåêòî- ðó x è ïåðåìåííûì dist è j , â öèêëå ñòðîê 2–17 — âîçìóùåíèå âåêòîðà xmax . Ñëó- ÷àéíàÿ, ðàâíîìåðíî ðàñïðåäåëåííàÿ íà îòðåçêå [0,1] âåëè÷èíà random[ , ]01 (ñòðîêè 4 è 10) èñïîëüçóåòñÿ äëÿ ìîäåëèðîâàíèÿ ñëó÷àéíûõ ñîáûòèé, âåäóùèõ ê èçìåíåíèþ ðåøåíèÿ xmax . Åñëè ðàññòîÿíèå ïî Õýììèíãó ìåæäó xmax è âîçìóùåííûì ðåøåíè- åì x ñòàíîâèòñÿ ðàâíûì çàäàííîìó ïàðàìåòðó max dist k_ (ñòðîêà 16), öèêë âîçìó- ùåíèÿ (ñòðîêè 2–17) çàêàí÷èâàåòñÿ. Ïàðàìåòð max dist k_ ìîæåò çàäàâàòüñÿ äèíàìè- ÷åñêè è çàâèñåòü îò «òåìïåðàòóðíîãî» èíäåêñà k . Ïðè âûáîðå àëãîðèòìà äëÿ ïðîöåäóðû ìåòîä_ïîèñêà ó÷èòûâàåòñÿ ñïåöèôèêà ðåøàåìîé çàäà÷è. Èñïîëüçóåòñÿ àëãîðèòì, ïîçâîëÿþùèé èíòåíñèôèöèðîâàòü ïîèñê è ýôôåêòèâíî èññëåäîâàòü îêðåñòíîñòè íà÷àëüíîãî ðåøåíèÿ â öåëÿõ åãî óëó÷øå- íèÿ.  ïðîöåäóðå ìåòîä_ïîèñêà èñïîëüçîâàëèñü ðàíäîìèçèðîâàííûå àëãîðèòìû òàáó è ëîêàëüíîãî ïîèñêà LocS. Ñ ïîìîùüþ ýòîé ïðîöåäóðû íàõîäèòñÿ ìíîæåñòâî ëîêàëüíûõ (â îêðåñòíîñòè îïðåäåëåííîãî ðàäèóñà) ðåøåíèé, êîòîðûå ôîðìèðóþò ìíîæåñòâî R. Ïðè ðåàëèçàöèè ðàññìàòðèâàåìîãî àëãîðèòìà ïîèñê çàïðåùåííûõ ðå- øåíèé áëîêèðóåòñÿ, à ïåðåñ÷åò îñóùåñòâëÿåòñÿ ïî ìåðå íàõîæäåíèÿ íîâûõ ðåøå- íèé x R� .  ñòðîêå 20 îïðåäåëÿåòñÿ ðåøåíèå xmax , â ñòðîêå 21 — ëó÷øåå ðåøåíèå xbest , íàéäåííîå àëãîðèòìîì ÃÐÏ. Ïîñëå îêîí÷àíèÿ óëó÷øàþùåãî öèêëà (ñòðî- êè 9–28) ê ìíîæåñòâó P çàïðåùåííûõ òî÷åê äîáàâëÿåòñÿ òî÷êà xmax (ñòðîêà 29). Ðàññìîòðèì àëãîðèòìû, èñïîëüçóåìûå â ïðîöåäóðå ìåòîä_ïîèñêà. Ðåàëèçîâàíû è èññëåäîâàíû äâå âåðñèè ìåòîäà ëîêàëüíîãî ïîèñêà. Îíè îñíîâàíû íà èñïîëüçîâàíèè îïåðàòîðà èíâåðñèè, êîòîðûé èçìåíÿåò çíà÷åíèå îòäåëüíîé áóëåâîé ïåðåìåííîé xi íà åå îòðèöàíèå �xi , ò.å. xi íà 1�xi äëÿ i n�{ }1, ,� . Òàêèì îáðàçîì, â ýòèõ àëãîðèòìàõ èñïîëüçîâàëàñü îêðåñòíîñòü åäèíè÷íîãî (ïî Õýììèíãó) ðàäèóñà. Ñëåäóåò îòìåòèòü, ÷òî ïîñëå êàæäîãî èçìåíåíèÿ âåêòîðà x ïåðåñ÷èòûâàåòñÿ n -ìåð- íûé âåêòîð g x( ) , îïðåäåëåííûé â îêðåñòíîñòè åäèíè÷íîãî ðàäèóñà ñ öåíòðîì â òî÷êå x : g x f x x x x x f x x xj j j j n j n( ) ( , , , , , , ) ( , , , , )� � �� �1 1 1 11� � � � . Ïåðåñ- ÷åò ýòîãî âåêòîðà ñîîòâåòñòâóåò èäåîëîãèè ìåòîäà âåêòîðà ñïàäà [5] è ïîçâîëÿåò äëÿ ìíîãèõ çàäà÷ ýêîíîìèòü çíà÷èòåëüíûå âû÷èñëèòåëüíûå ðåñóðñû. Òàê, äëÿ çàäà÷è áóëå- âà êâàäðàòè÷íîãî ïðîãðàììèðîâàíèÿ áåç îãðàíè÷åíèé âèäà (1) âû÷èñëåíèå öåëåâîé ôóíêöèè òðåáóåò O n( )2 àðèôìåòè÷åñêèõ îïåðàöèé, à ïåðåñ÷åò âåêòîðà g x( ) — òîëüêî O n( ) òàêèõ îïåðàöèé. Ñàìûé ïðîñòîé àëãîðèòì ëîêàëüíîãî òèïà, èñïîëüçóåìûé â ïðîâåäåííûõ èññëå- äîâàíèÿõ, — ëîêàëüíûé ïîèñê LocS. Ïðåäñòàâèì åãî â âèäå ñëåäóþùåé ïðîöåäóðû: procedure LocS(x g x, ( )) 1 repeat 2 Generate random permutation RP of the set {1,…,n } 3 � � 0 4 for k �1 to n do 5 j RP k� [ ] 6 if g xj ( ) � 0 then 7 � �� � g xj ( ) 8 x xj j� �1 9 g x x( ) ( )� recalculate gains 10 end if 11 end for 12 until � � 0 OR � � � �j j n g xj, : ( )1 0 13 return x Èç ñòðîê 2, 5 äàííîé ïðîöåäóðû âûòåêàåò, ÷òî êîìïîíåíòû âåêòîðà x âûáèðà- þòñÿ ñëó÷àéíûì îáðàçîì, à èç ñòðîêè 6 ñëåäóåò, ÷òî ïåðåõîä îñóùåñòâëÿåòñÿ è â òî÷êè, íå óëó÷øàþùèå çíà÷åíèå öåëåâîé ôóíêöèè. 72 ISSN 0023-1274. Êèáåðíåòèêà è ñèñòåìíûé àíàëèç, 2010, ¹ 5 Âòîðûì àëãîðèòìîì ïîèñêà, èññëåäîâàííûì â ðàáîòå, ÿâëÿåòñÿ àëãîðèòì òàáó [8], êîòîðûé ìîæíî ïðåäñòàâèòü â âèäå ñëåäóþùåé ïðîöåäóðû: procedure Tabu(x g x n tabubad, ( ), , ) 1 x xmax � ; step � 0 ; nfail � 0 ; 2 while (( ( ) ( ))maxnfail f x f x nfailbest� � �9 3AND OR ) do 3 �max � 0 ; �cur � 0 ; step stepimpr � 4 M n�{ }1, ,� ; last used j_ ( ) � ��, j M� 5 repeat 6 repeat 7 � � 0 8 Generate random permutation RP of the set M 9 for k �1 to | |M do 10 j RP k� [ ] 11 if (step last used j tabu f x g x f xj� � � �_ ( ) ( ) ( ) ( )maxOR ) then 12 if g xj ( ) � 0 then 13 � �� � g xj ( ) ; last used j step_ ( ) � ; x xj j� �1 14 g x( ) � recalculate gains(x); step step� �1 15 end if 16 end if 17 end for 18 � � �cur cur� � 19 until � � 0 20 if � �cur � max then 21 x xmax � 22 if � �cur � max then 23 � �max � cur ; step stepimpr � ; nfail � 0 ; break; 24 end if 25 end if 26 � � �� 27 for k �1 to | |M do 28 j RP k� [ ] 29 if (step last used j tabu f x g x f xj� � � �_ ( ) ( ) ( ) ( )maxOR ) then 30 if g xj ( ) � � then 31 � � g xj ( ) ; ind jbest � 32 end if 33 end if 34 end for 35 � � �cur cur� � ; last used ind stepbest_ ( ) � ; x xind indbest best � �1 36 g x( ) � recalculate gains(x); step step� �1 37 if � �cur � max then 38 x xmax � 39 end if 40 until step step nimpr bad� � 41 if (step step nimpr bad� � ) then 42 x x� max ; g x( ) � recalculate gains (x) 43 nfail nfail� �1 44 end if 45 end while 46 return xmax end Tabu Îñíîâíîé îñîáåííîñòüþ ýòîãî âàðèàíòà àëãîðèòìà òàáó ÿâëÿåòñÿ öèêë ðåñòàð- òîâ èç íàèëó÷øåãî íàéäåííîãî ðåøåíèÿ (ñòðîêè 2–45), ÷òî ïîçâîëÿåò èíòåíñèôèöè- ISSN 0023-1274. Êèáåðíåòèêà è ñèñòåìíûé àíàëèç, 2010, ¹ 5 73 ðîâàòü ïîèñê.  ñòðîêå 2 xbest — ëó÷øåå íàéäåííîå ðåøåíèå. Øàãè àëãîðèòìà òàáó âûïîëíÿþòñÿ äî òåõ ïîð, ïîêà íå áóäåò íèêàêîãî óëó÷øåíèÿ çíà÷åíèÿ öåëåâîé ôóíêöèè íà ïîñëåäíèõ nbad èòåðàöèÿõ (ñòðîêè 5–40). Ïåðåéäåì òåïåðü ê îïèñàíèþ âû÷èñëèòåëüíûõ ýêñïåðèìåíòîâ, ïðîâåäåííûõ â öåëÿõ èññëåäîâàíèÿ ýôôåêòèâíîñòè ðàçëè÷íûõ ïðèáëèæåííûõ àëãîðèòìîâ. Àëãîðèòì ÃÐÏ ðåàëèçîâàí íà ÿçûêå Ñ++, âñå ðàñ÷åòû ïðîâîäèëèñü ñ èñïîëüçîâàíè- åì PC ñ Intel® Core QUAD CPU Q9550 2.83GHz è 3.0GB îïåðàòèâíîé ïàìÿòè. Ïà- ðàìåòðû àëãîðèòìà ÃÐÏ áûëè îäèíàêîâûìè âî âñåõ âû÷èñëèòåëüíûõ ýêñïåðèìåí- òàõ: K � 21 , � � 4, max dist k_ : max dist n_ ,0 0 5� , max dist i_ � max dist_ 0 + � � � � � � � � i max dist K 10 1 0_ , i K� �1 2, ,� , max distK_ � �1 20 ; ngen � 81 (äëÿ àëãîðèòìà LocS ngen � 243), maxnfail �1.  íà÷àëå êàæäîãî «òåìïåðàòóðíîãî» öèêëà âñå êîì- ïîíåíòû âåêòîðà ~p0 ðàâíû 0,5. Äëÿ «òåìïåðàòóðíîãî» ðàñïèñàíèÿ èñïîëüçîâàëèñü ñëåäóþùèå çíà÷åíèÿ: �0 0� , �1 63 10� ! � , � � � k k� � �1 110 48 log log äëÿ k � 2 20, ,� , à äëÿ àëãîðèòìà òàáó — n nbad � / 10 ; tabu � 21. Ýêñïåðèìåíòàëüíûå ðàñ÷åòû ïðîâîäèëèñü äëÿ äâóõ ìíîæåñòâ òåñòîâûõ çàäà÷: 24 çàäà÷è G1, G2, G3, G11, … , G16, G22, G23, G24, G32, … , G37, G43, G44, G45, G48, G49 è G50, ïðèâåäåííûå â ðàáîòå [14], à òàêæå 20 çàäà÷ sg3dl101000, … ... , sg3dl1010000, sg3dl141000, … , sg3dl1410000 èç [9]. Ýòè çàäà÷è èñïîëüçîâàëèñü ðàíåå àâòîðàìè ðàáîò [9–13] äëÿ ïðîâåðêè ýôôåêòèâíîñòè èõ àëãîðèòìîâ, ÷òî ïî- çâîëèëî ìàêñèìàëüíî ðàñøèðèòü ìíîæåñòâî ñðàâíèâàåìûõ àëãîðèòìîâ. Ýêñïåðèìåíòàëüíûå ðàñ÷åòû áûëè âûïîëíåíû â äâà ýòàïà. Íà ïåðâîì ýòàïå ñðàâíèâàëèñü äâà âàðèàíòà ìåòîäà ÃÐÏ — GES LocS è GES Òabu. Ðåçóëüòàòû ýòîãî èññëåäîâàíèÿ ïðåäñòàâëåíû â òàáë. 1.  íåé (è â òàáë. 2–4) ïðèíÿòû ñëåäóþùèå îáîçíà÷åíèÿ: BKS — èçâåñòíûé èç ëèòåðàòóðû ðåêîðä äëÿ çàäà÷è, BFS — ðåêîðä, íàéäåííûé ñîîòâåòñòâóþùèì àëãîðèòìîì.  êîëîíêå BFS GES òàáë. 1 ñîäåðæàòñÿ ëó÷øèå ðåêîðäû, ïîëó÷åííûå ìåòîäîì ÃÐÏ (äâóìÿ âàðèàíòàìè). Ïîëóæèðíûì øðèôòîì âûäåëåíû ëó÷øèå ðåçóëüòàòû. Åñëè GES óëó÷øèë ðåêîðä, èçâåñòíûé â ëèòåðàòóðå, îí âûäåëåí ïîëóæèðíûì êóðñèâîì. Value â äàííîé òàáëèöå îáîçíà÷à- åò ñðåäíåå çíà÷åíèå ðåêîðäà, íàéäåííîå â ðåçóëüòàòå äåñÿòèêðàòíîãî ðåøåíèÿ êàæ- äîé çàäà÷è ïðè ðàçëè÷íûõ íà÷àëüíûõ ïàðàìåòðàõ àëãîðèòìà.  äâóõ ñòðîêàõ òàáë. 1 ñî çíàêîì � äëÿ êàæäîãî ìíîæåñòâà òåñòîâûõ çàäà÷ ïðèâåäåíû ñóììàðíûå çíà÷åíèÿ óêàçàííûõ â ñîîòâåòñòâóþùèõ êîëîíêàõ âåëè÷èí. Àíàëèç ïðåäñòàâëåííûõ â òàáë. 1 ðåçóëüòàòîâ ïîêàçàë, ÷òî êàæäûé âàðèàíò ìå- òîäà ÃÐÏ èìååò ñâîè äîñòîèíñòâà. Ñ ïîìîùüþ ïåðâîãî âàðèàíòà (GES LocS) óñïåøíî ðåøåíû çàäà÷è ïåðâîãî ìíîæåñòâà — ïðàêòè÷åñêè çà îäèíàêîâîå âðåìÿ ñî âòîðûì âàðèàíòîì (GES Tabu) îí íàõîäèë áîëåå êà÷åñòâåííûå ðåøåíèÿ. Îäíàêî äëÿ òåñòîâûõ çàäà÷ âòîðîãî ìíîæåñòâà âàðèàíò GES Tabu ïðåâçîøåë ïåðâûé âàðè- àíò êàê ïî áûñòðîäåéñòâèþ, òàê è ïî êà÷åñòâó íàéäåííûõ ðåøåíèé. Ïðîâåäåííûå íà âòîðîì ýòàïå ýêñïåðèìåíòàëüíûå èññëåäîâàíèÿ ñîñòîÿò èç äâóõ ÷àñòåé. Èõ ðåçóëüòàòû îòîáðàæåíû â òàáë. 2–4.  ïåðâîé ÷àñòè àëãîðèòì ÃÐÏ ñðàâíèâàëñÿ ñ àëãîðèòìàìè SS [13], CirCut [9], VNSPR [10], à âî âòîðîé — ñ àëãîðèòìàìè RRT è MST [11]. Ïðè ïðîâåäåíèè âû÷èñëèòåëüíûõ ýêñïåðèìåíòîâ ñ àëãîðèòìàìè RRT è MST [11] êàæäàÿ òåñòîâàÿ çàäà÷à ïåðâîãî ìíîæåñòâà ðåøàëàñü äåñÿòü ðàç, ïðè÷åì âðåìÿ ðå- øåíèÿ áûëî îãðàíè÷åíî 1800 ñåêóíäàìè äëÿ ãðàôîâ ñ ÷èñëîì âåðøèí n � 800 è 3600 ñåêóíäàìè — äëÿ ãðàôîâ ñ n �1000. Êàæäàÿ èç çàäà÷ âòîðîãî ìíîæåñòâà ðå- øàëàñü ïÿòü ðàç, ïðè ýòîì âðåìÿ ðåøåíèÿ îãðàíè÷èâàëîñü 3600 ñåêóíäàìè äëÿ çà- äà÷ ìàëûõ ðàçìåðíîñòåé è 7200 ñåêóíäàìè äëÿ çàäà÷ áîëüøèõ ðàçìåðíîñòåé. Àëãîðèòìû ðåàëèçîâàíû íà ÿçûêå Ñ ñ èñïîëüçîâàíèåì PC Pentium III 800. 74 ISSN 0023-1274. Êèáåðíåòèêà è ñèñòåìíûé àíàëèç, 2010, ¹ 5 ISSN 0023-1274. Êèáåðíåòèêà è ñèñòåìíûé àíàëèç, 2010, ¹ 5 75 Ò à á ë è ö à 1 Çàäà÷à Ðàç- ìåð- íîñòü BKS BFS Âðåìÿ, c Value GES GES Tabu GES LocS GES Tabu GES LocS GES Tabu GES LocS G1 800 11624 11624 11624 11624 2.91 4.80 11624.0 11624.0 G2 800 11620 11620 11620 11620 5.46 8.03 11620.0 11620.0 G3 800 11622 11622 11622 11622 2.33 3.51 11622.0 11622.0 G11 800 564 564 564 564 0.53 3.42 564.0 564.0 G12 800 556 556 556 556 1.12 1.73 556.0 556.0 G13 800 582 582 582 582 1.99 4.98 582.0 582.0 G14 800 3063 3064 3064 3064 155.25 164.34 3063.3 3063.5 G15 800 3050 3050 3050 3050 15.86 9.36 3050.0 3050.0 G16 800 3052 3052 3052 3052 32.82 27.58 3052.0 3052.0 G22 2000 13358 13359 13359 13359 86.60 98.61 13359.0 13358.5 G23 2000 13354 13342 13342 13342 97.67 40.77 13341.6 13342.0 G24 2000 13331 13337 13337 13337 212.57 174.36 13333.8 13335.6 G32 2000 1402 1410 1410 1410 56.46 158.86 1410.0 1409.2 G33 2000 1376 1382 1382 1382 88.67 104.54 1381.2 1379.6 G34 2000 1372 1384 1384 1384 60.93 164.65 1384.0 1383.6 G35 2000 7672 7684 7684 7684 152.25 216.61 7680.3 7681.1 G36 2000 7670 7676 7676 7677 166.75 139.63 7670.8 7672.6 G37 2000 7681 7689 7689 7689 159.22 180.38 7683.6 7684.6 G43 1000 6660 6660 6660 6660 15.11 17.34 6660.0 6660 G44 1000 6650 6650 6650 6650 10.42 3.61 6650.0 6650 G45 1000 6654 6654 6654 6654 49.98 42.64 6654.0 6654 G48 3000 6000 6000 6000 6000 0.04 0.38 6000.0 6000 G49 3000 6000 6000 6000 6000 0.17 0.32 6000.0 6000 G50 3000 5880 5880 5880 5880 0.08 13.53 5880.0 5880 � 150793 150841 150841 150842 1375.1 1583.98 150821.6 150824.3 sg3dl101000 1000 896 896 896 896 6.56 110.40 896.0 895.6 sg3dl102000 1000 900 900 900 900 1.11 2.87 900.0 900.0 sg3dl103000 1000 892 892 892 892 5.87 37.73 892.0 892.0 sg3dl104000 1000 898 898 898 898 2.59 6.78 898.0 898.0 sg3dl105000 1000 886 886 886 886 20.72 54.50 886.0 886.0 sg3dl106000 1000 888 888 888 888 3.42 8.58 888.0 888.0 sg3dl107000 1000 900 900 900 900 19.53 145.07 900.0 899.8 sg3dl108000 1000 882 882 882 882 27.99 101.77 882.0 881.8 sg3dl109000 1000 902 902 902 902 9.17 18.06 902.0 902.0 sg3dl1010000 1000 894 894 894 894 5.63 17.75 894.0 894.0 sg3dl141000 2744 2446 2446 2446 2444 174.01 160.00 2443.8 2438.8 sg3dl142000 2744 2458 2458 2458 2456 152.90 204.03 2457.8 2454.8 sg3dl143000 2744 2442 2440 2440 2438 196.93 163.01 2439.2 2437.0 sg3dl144000 2744 2450 2450 2450 2444 129.74 99.80 2447.6 2443.4 sg3dl145000 2744 2446 2446 2446 2446 131.22 91.24 2445.8 2443.2 sg3dl146000 2744 2450 2450 2450 2448 133.66 175.91 2450.0 2446.4 sg3dl147000 2744 2444 2444 2444 2442 141.64 207.36 2442.2 2439.0 sg3dl148000 2744 2446 2448 2448 2444 121.17 112.46 2445.4 2442.6 sg3dl149000 2744 2424 2426 2426 2422 62.90 163.57 2424.4 2421.2 sg3dl1410000 2744 2458 2458 2458 2456 169.34 161.38 2456.0 2453.0 � 33402 33404 33404 33378 1516.10 2042.27 33390.2 33356.6 Äëÿ ñðàâíåíèÿ ñ ìîäèôèöèðîâàííûì àëãîðèòìîì ðàçáðîñà SS èñïîëüçîâàëèñü ïðîãðàììíûå ðåàëèçàöèè àëãîðèòìîâ CirCut è VNSPR. Âñå àëãîðèòìû èìåëè íà- ñòðîéêè, ðåêîìåíäîâàííûå àâòîðàìè. Ñ èõ ïîìîùüþ ðåøàëàñü êàæäàÿ òåñòîâàÿ çà- äà÷à îáîèõ ìíîæåñòâ áåç îãðàíè÷åíèÿ íà ëèìèò âðåìåíè. Èñïîëüçîâàëñÿ PC 3.2 GHz Intel Xenon processor ñ 2.0 GB îïåðàòèâíîé ïàìÿòè. Ñâîäíûå ðåçóëüòàòû âòîðîãî ýòàïà ýêñïåðèìåíòàëüíûõ ðàñ÷åòîâ ïî ðåøåíèþ óêàçàííûõ òåñòîâûõ çàäà÷ ðàçëè÷íûìè ïðèáëèæåííûìè àëãîðèòìàìè ïðåäñòàâëå- íû â òàáë. 2. 76 ISSN 0023-1274. Êèáåðíåòèêà è ñèñòåìíûé àíàëèç, 2010, ¹ 5 Ò à á ë è ö à 2 Çàäà÷à Ðàçìåð- íîñòü BKS BFS GES SS CirCut VNSPR RRT MST G1 800 11624 11624 11624 11624 11621 11624 11624 G2 800 11620 11620 11620 11617 11615 11620 11620 G3 800 11622 11622 11622 11622 11622 11622 11622 G11 800 564 564 562 560 564 564 562 G12 800 556 556 552 552 556 556 552 G13 800 582 582 578 574 580 580 576 G14 800 3063 3064 3060 3058 3055 3042 3063 G15 800 3050 3050 3049 3049 3043 3024 3050 G16 800 3052 3052 3045 3045 3043 3026 3052 G22 2000 13358 13359 13346 13346 13295 13235 13358 G23 2000 13354 13342 13317 13317 13290 13246 13329 G24 2000 13331 13337 13303 13314 13276 13241 13327 G32 2000 1402 1410 1398 1390 1396 1384 1392 G33 2000 1376 1382 1362 1360 1376 1358 1368 G34 2000 1376 1384 1364 1368 1372 1362 1368 G35 2000 7672 7685 7668 7670 7635 7590 7672 G36 2000 7670 7677 7660 7660 7632 7577 7669 G37 2000 7681 7689 7664 7666 7643 7589 7675 G43 1000 6660 6660 6656 6656 6659 6660 6660 G44 1000 6650 6650 6648 6643 6642 6650 6650 G45 1000 6654 6654 6642 6652 6646 6654 6650 G48 3000 6000 6000 6000 6000 6000 G49 3000 6000 6000 6000 6000 6000 G50 3000 5880 5880 5880 5880 5880 sg3dl101000 1000 896 896 882 880 892 892 896 sg3dl102000 1000 900 900 894 892 900 898 900 sg3dl103000 1000 892 892 884 882 884 886 888 sg3dl104000 1000 898 898 892 894 896 896 896 sg3dl105000 1000 886 886 880 882 882 884 884 sg3dl106000 1000 888 888 870 886 880 884 888 sg3dl107000 1000 900 900 890 894 896 898 898 sg3dl108000 1000 882 882 880 874 880 880 880 sg3dl109000 1000 902 902 888 890 898 900 902 sg3dl1010000 2744 894 894 886 886 890 890 892 sg3dl141000 2744 2446 2446 2428 2410 2416 2378 2438 sg3dl142000 2744 2458 2458 2418 2416 2416 2394 2448 sg3dl143000 2744 2442 2442 2410 2408 2406 2394 2434 sg3dl144000 2744 2450 2450 2422 2414 2418 2390 2436 sg3dl145000 2744 2446 2446 2416 2406 2416 2380 2432 sg3dl146000 2744 2450 2450 2424 2412 2420 2394 2440 sg3dl147000 2744 2444 2444 2404 2410 2404 2384 2434 sg3dl148000 2744 2446 2448 2416 2418 2418 2386 2434 sg3dl149000 2744 2424 2426 2412 2388 2384 2362 2416 sg3dl1410000 2744 2458 2458 2430 2420 2422 2402 2450 Àíàëèç ðåçóëüòàòîâ òàáë. 2 ïîêàçûâàåò, ÷òî ïî êà÷åñòâó íàéäåííûõ äëÿ çàäà÷ ïåðâîãî ìíîæåñòâà ðåøåíèé àëãîðèòì ÃÐÏ ïðåâîñõîäèò îñòàëüíûå, âûáðàííûå äëÿ ñðàâíåíèÿ àëãîðèòìû. Êðîìå òîãî, äëÿ òåñòîâûõ çàäà÷ G13, G14, G22, G24, G32–G37 ñ ïîìîùüþ àëãîðèòìà ÃÐÏ ïîëó÷åíû íîâûå ðåêîðäû. ISSN 0023-1274. Êèáåðíåòèêà è ñèñòåìíûé àíàëèç, 2010, ¹ 5 77 Ò à á ë è ö à 3 Çàäà÷à BFS Âðåìÿ, c SS CirCut VNSPR GES G1 11624 139 352 22732 2.17 G2 11620 167.2 283 22719 2.79 G3 11622 180.1 330 23890 3.26 G11 564 171.8 74 10084 2.39 G12 556 241.5 58 10852 3.23 G13 580 227.5 62 10749 1.9 G14 3060 186.5 128 16734 10.16 G15 3049 142.8 155 17184 8.93 G16 3045 161.9 142 16562 3.77 G22 13346 1335.8 493 197654 51.03 G23 13317 1021.7 457 193707 5 G24 13314 1191 521 195749 12.31 G32 1398 900.6 221 82345 7.94 G33 1376 925.6 198 76282 9.3 G34 1372 950.2 237 79406 2.8 G35 7670 1257.5 440 167221 25.4 G36 7660 1391.9 400 167203 40.4 G37 7666 1386.8 382 170786 18.25 G43 6659 405.8 213 35324 6.8 G44 6648 355.9 192 34519 4.7 G45 6652 354.3 210 34179 22.41 G48 6000 20.1 119 64713 0.24 G49 6000 35.1 134 64749 0.27 G50 5880 26.8 231 147132 2.1 sg3dl101000 892 406.1 106.0 20409.0 3.03 sg3dl102000 900 302.4 116.0 20873.0 7.65 sg3dl103000 884 410.4 112.0 20574.0 0.75 sg3dl104000 896 485.9 103.0 19786.0 1.66 sg3dl105000 882 400.9 106.0 19160.0 1.82 sg3dl106000 886 461.8 119.0 17872.0 5.83 sg3dl107000 896 386.2 115.0 21044.0 2.28 sg3dl108000 880 466.9 104.0 19760.0 11.44 sg3dl109000 898 493.6 121.0 20930.0 4.35 sg3dl1010000 890 352.8 111.0 20028.0 2.87 sg3dl141000 2428 1320.6 382.0 188390.0 35.28 sg3dl142000 2418 1121.1 351.0 187502.0 2.51 sg3dl143000 2410 1215.8 377.0 190028.0 3.06 sg3dl144000 2422 1237.2 356.0 198809.0 4.95 sg3dl145000 2416 1122.5 388.0 196725.0 3.55 sg3dl146000 2424 1213.9 331.0 189366.0 3.69 sg3dl147000 2410 1230.6 381.0 187902.0 2.94 sg3dl148000 2418 1132.0 332.0 194838.0 3.41 sg3dl149000 2412 1213.9 333.0 193627.0 20.47 sg3dl1410000 2430 1125.8 391.0 196454.0 5.86 � 29277.8 10767.0 3986552.0 374.95 Ðåøåíèå òåñòîâûõ çàäà÷ âòîðîãî ìíîæåñòâà ñâÿçàíî ñî çíà÷èòåëüíûìè òðóä- íîñòÿìè, ÷òî îáúÿñíÿåòñÿ ñïåöèôèêîé ýòèõ çàäà÷. Ãðàôû äëÿ çàäà÷ ñêîíñòðóèðîâà- íû íà îñíîâå êóáè÷åñêèõ ðåøåòîê, ìîäåëèðóþùèõ èçèíãîâñêèå ñïèíû â ñëþäå, à ðåøåíèÿ â êîëîíêå BKS ïîëó÷åíû àëãîðèòìîì H2 [9], êîòîðûé ñïåöèàëüíî ðàçðà- áîòàí äëÿ ïîäîáíûõ ñòðóêòóð è ïðèìåíèì òîëüêî ê íèì. Êðîìå òîãî, òàêîå õîðî- øåå êà÷åñòâî ðåøåíèé îáåñïå÷èâàåòñÿ î÷åíü áîëüøèì âðåìåíåì ñ÷åòà (íàïðèìåð, äëÿ ðåøåíèÿ êàæäîé èç ïîñëåäíèõ äåñÿòè çàäà÷ ïîòðåáîâàëîñü îêîëî 33000 ñåêóíä âðåìåíè ðàáîòû ÝÂÌ SGI Origin 2000 [9]). Íåñìîòðÿ íà ýòî, ìåòîäîì ÃÐÏ äëÿ çà- äà÷ sg3dl148000, sg3dl149000 íàéäåíû íîâûå ðåêîðäû. 78 ISSN 0023-1274. Êèáåðíåòèêà è ñèñòåìíûé àíàëèç, 2010, ¹ 5 Çàäà÷à BFS Âðåìÿ, c fñð GES to BFS RRT MST RRT MST G1 11624 2.91 15 147 11624 11610 G2 11620 5.46 180 195 11620 11607 G3 11622 2.33 54 278 11622 11611 G11 564 0.53 819 213 564 558 G12 556 1.12 736 181 554 547 G13 580 0.49 640 414 579 571 G14 3063 117.20 785 787 3037 3059 G15 3050 15.86 581 1109 3018 3047 G16 3052 32.82 683 916 3022 3048 G22 13358 73.14 2039 1519 13221 13306 G23 13329 22.84 2162 1634 13224 13302 G24 13327 157.47 1381 1824 13223 13308 G32 1392 1.21 1498 1290 1380 1385 G33 1368 1.71 1054 812 1355 1357 G34 1368 1.34 1803 1324 1359 1359 G35 7672 27.95 1200 2863 7582 7668 G36 7669 98.19 2557 2578 7571 7661 G37 7675 36.54 1974 2384 7582 7669 G43 6660 15.11 845 733 6660 6648 G44 6650 10.42 1484 478 6650 6639 G45 6654 49.98 800 596 6653 6640 sg3dl101000 896 6.56 961 1755 888.4 889.6 sg3dl102000 900 1.11 1438 2208 896.8 896.8 sg3dl103000 888 1.84 578 1616 884.4 883.2 sg3dl104000 896 0.57 1677 913 894.4 892.4 sg3dl105000 884 1.96 2163 1722 881.6 881.2 sg3dl106000 888 3.42 1735 1808 882.4 883.6 sg3dl107000 898 1.17 1619 2203 896 894.8 sg3dl108000 880 3.37 511 712 877.2 878.4 sg3dl109000 902 9.17 1472 1391 896.4 890.8 sg3dl1010000 892 2.14 1311 297 888.4 888 sg3dl141000 2438 39.46 4833 5265 2377.6 2425.2 sg3dl142000 2448 3.78 3035 4645 2392 2436.4 sg3dl143000 2434 19.76 4286 3878 2382 2422.4 sg3dl144000 2436 8.36 3279 3665 2384.8 2430.4 sg3dl145000 2432 5.13 3701 5871 2376.4 2424.4 sg3dl146000 2440 13.46 3614 2760 2388.4 2429.6 sg3dl147000 2434 13.26 2146 5405 2377.2 2420.4 sg3dl148000 2434 5.24 2864 5726 2382 2424.8 sg3dl149000 2416 24.16 4258 4784 2360.8 2406.4 sg3dl1410000 2450 29.88 3869 5099 2392.8 2433.2 � 868.4 72640 83998 Ò à á ë è ö à 4 Òàáë. 3 îòîáðàæàåò ðåçóëüòàòû ïåðâîé ÷àñòè ýêñïåðèìåíòàëüíûõ ðàñ÷åòîâ — ñêîðîñòü ïîëó÷åíèÿ ëó÷øèõ ðåøåíèé àëãîðèòìàìè SS, CirCut, VNSPR è GES. Âî âòîðîé êîëîíêå ñîäåðæàòñÿ íàèëó÷øèå ðåêîðäû, íàéäåííûå óêàçàííûìè àëãîðèò- ìàìè.  ñëåäóþùèõ òðåõ êîëîíêàõ ïðèâåäåíî âðåìÿ, ïîíàäîáèâøååñÿ ñîîòâåòñòâó- þùèì àëãîðèòìàì äëÿ ïîëó÷åíèÿ èõ ðåêîðäíûõ ðåøåíèé (îíî íå ïåðåñ÷èòûâàëîñü è ïðèâîäèòñÿ äëÿ ñîîòâåòñòâóþùèõ ìàøèí). Ñ ïîìîùüþ àëãîðèòìà ÃÐÏ êàæäàÿ çà- äà÷à ðåøàëàñü äåñÿòü ðàç.  êîëîíêå GES ïðèâåäåíî ñðåäíåå âðåìÿ, çàòðà÷åííîå íà ïîëó÷åíèå ðåøåíèé ñ ðåêîðäîì, íå õóæå ðåêîðäà èç êîëîíêè BFS, ò.å. ðåøåíèé, êî- òîðûå ïî çíà÷åíèþ öåëåâîé ôóíêöèè íå óñòóïàþò ðåøåíèÿì, ñîâìåñòíî ïîëó÷åí- íûì îñòàëüíûìè àëãîðèòìàìè. Òàêèì îáðàçîì, àíàëèç ðåçóëüòàòîâ òàáë. 3 ïîäòâåð- æäàåò ïðåèìóùåñòâà àëãîðèòìà ÃÐÏ íàä àëãîðèòìàìè SS, CirCut, VNSPR è ïî ñêî- ðîñòè ïîëó÷åíèÿ õîðîøèõ ðåøåíèé. Ïåðåéäåì ê ðàññìîòðåíèþ âòîðîé ÷àñòè âû÷èñëèòåëüíûõ ýêñïåðèìåíòîâ.  ñî- îòâåòñòâèè ñ ïëàíîì ýêñïåðèìåíòîâ, îïèñàííûõ â [11], ñ ïîìîùüþ àëãîðèòìà ÃÐÏ äåñÿòü ðàç ðåøàëàñü êàæäàÿ çàäà÷à èç îáîèõ ìíîæåñòâ. Òàêæå ðåøàëèñü ïî äåñÿòü ðàç ýòè çàäà÷è ñ èñïîëüçîâàíèåì àëãîðèòìîâ RRT è MST.  òàáë. 4 ïðèâåäåíû ïî- ëó÷åííûå äàííûå.  êîëîíêàõ 3–5 äëÿ êàæäîé çàäà÷è óêàçàíî ñðåäíåå âðåìÿ åå ðå- øåíèÿ ñîîòâåòñòâóþùèì àëãîðèòìîì, à â êîëîíêàõ 6, 7 — ñðåäíåå çíà÷åíèå ðåêîð- äà ( fcp ). Êàê âèäíî, è â ýòîì ñëó÷àå àëãîðèòì ÃÐÏ ïðåâîñõîäèò àëãîðèòìû RRT è MST êàê ïî êà÷åñòâó ïîëó÷àåìûõ ðåøåíèé, òàê è ïî âðåìåíè èõ íàõîæäåíèÿ. Àíàëèç ïðèâåäåííûõ ðåçóëüòàòîâ âû÷èñëèòåëüíûõ ýêñïåðèìåíòîâ ñâèäåòåëüñòâó- åò î âûñîêîé ýôôåêòèâíîñòè è êîíêóðåíòîñïîñîáíîñòè ìåòîäà ÃÐÏ ïðè ðåøåíèè çàäà- ÷è î ìàêñèìàëüíîì ðàçðåçå íåîðèåíòèðîâàííîãî ãðàôà. Áîëåå òîãî, îïûò, íàêîïëåííûé ïðè ðåøåíèè äðóãèõ çàäà÷ [5–8], ïîçâîëÿåò íàäåÿòüñÿ, ÷òî äëÿ çàäà÷ áîëüøåé ðàçìåð- íîñòè ïðåèìóùåñòâà àëãîðèòìîâ ÃÐÏ áóäóò òîëüêî âîçðàñòàòü. ÑÏÈÑÎÊ ËÈÒÅÐÀÒÓÐÛ 1. B a r a h o n a F . , G r o t s c h e l M . , J u n g e r M . , R e i n e l t G . An application of combinatorial op- timization to statistical physics and circuit layout design // Oper. Res. — 1988. — 36. — P. 493–513. 2. C h a n g K . C . , D u D . H . - C . Efficient algorithms for layer assignment problem // IEEE Trans. Com- puter — Aided Design of Integrated Circuits and Systems. — 1987. — 6. — P. 67–78. 3. P o l j a k S . , T u z a Z . Maximum cuts and large bipartite subgraphs // DIMACS Series in Discrete Mathematics and Theoretical Computer Science. — 1995. — 20. — P. 181–244. 4. Ø è ë î  . Ï . Ìåòîä ãëîáàëüíîãî ðàâíîâåñíîãî ïîèñêà // Êèáåðíåòèêà è ñèñòåìíûé àíàëèç. — 1999. — ¹ 1. — Ñ. 74–81. 5. Ñ å ð ã è å í ê î È .  . , Ø è ë î  . Ï . Çàäà÷è äèñêðåòíîé îïòèìèçàöèè: ïðîáëåìû, ìåòîäû ðåøåíèÿ, èññëåäîâàíèÿ. — Êèåâ: Íàóê. äóìêà, 2003. — 264 ñ. 6. Ñ å ð ã è å í ê î È .  . , Ø è ë î  . Ï . Ïðîáëåìû äèñêðåòíîé îïòèìèçàöèè: ñëîæíûå çàäà÷è, îñíîâíûå ïîäõîäû ê èõ ðåøåíèþ // Êèáåðíåòèêà è ñèñòåìíûé àíàëèç. — 2006. — ¹ 4. — Ñ. 3–25. 7. P a r d a l o s P . , P r o k o p y e v O . , S h y l o O . , S h y l o V . Global equilibrium search applied to the unconstrained binary quadratic optimization problem // Optim. Methods and Software. — 2008. — 23. — P. 129–140. 8. P r o k o p y e v O . , S h y l o O . , S h y l o V . Solving weighted MAX-SAT via global equilibrium search // Oper. Res. Lett. — 2008. — 36, N 4. — P. 434-438. 9. B u r e r S . , M o n t e i r o R . D . C . , Z h a n g Y . Rank-two relaxation heuristics for MAX-CUT and other binary quadratic programs // SIAM J. Optim. — 2002. — 12. — P. 503–521. 10. F e s t a P . , P a r d a l o s P . M . , R e s e n d e M . G . C . , R i b e i r o C . C . Randomized heuristics for the maxcut problem // Optim. Methods and Software. — 2002. — 17. — P. 1033–1058. 11. P a l u b e c k i s G . , K r i v i c k i e n e V . Application of multistart tabu search to the Max-Cut problem // Information Technology and Control. — Kaunas: Technologija, 2004. — 2(31). — P. 29–35. 12. G o e m a n s M . X . , W i l l i a m s o n D . P . Improved approximation algorithms for maximum cut and satisfiability problems using semidefinite programming // J. ACM. — 1995. — 42. — P. 1115–1145. 13. M a r t i R . , D u a r t e A . , L a g u n a M . Advanced scatter search for the Max-Cut problem // INFORMS J. Computing. — 2009. — 21, N 1. — P. 26–38. 14. H e l m b e r g C . , R e n d l F . A spectral bundle method for semidefinite programming // SIAM J. Optim. — 2000. — 10. — P. 673–696. Ïîñòóïèëà 25.04.2010 ISSN 0023-1274. Êèáåðíåòèêà è ñèñòåìíûé àíàëèç, 2010, ¹ 5 79