2 7 1 7

advertisement
1 7
2
7
ÈÍÔÎÐÌÀÒÈÊÀ
ÓÄÊ 616.65-006
Â. Ñ. Àãàáàáîâ
O âûáîðe îïòèìàëüíîé ñòðóêòóðû äàííûõ äëÿ ïðåäñòàâëåíèÿ îïóõîëè
ïðè ìîäåëèðîâàíèè in vitro ðàêîâûõ çàáîëåâàíèé
(Ïðåäñòàâëåíî àêàäåìèêîì Ñ. À. Àìáàðöóìÿíîì 31/III 2007)
Êëþ÷åâûå ñëîâà: ñòðóêòóðû äàííûõ, àëãîðèòìû, ìîäåëèðîâàíèå, ðàê,
áèîëîãèÿ, áèîèíôîðìàòèêà
1. Ââåäåíèå. Öåëüþ ñòàòüè ÿâëÿåòñÿ âûáîð ñòðóêòóðû äàííûõ, êîòîðàÿ
íàèáîëåå îïòèìàëüíî ïîäîéäåò ê çàäà÷å ìîäåëèðîâàíèÿ ðîñòà, ñæàòèÿ, à
òàêæå ëå÷åíèÿ ðàêîâîé îïóõîëè. Îñîáîå âíèìàíèå óäåëÿåòñÿ ñâîáîäíîìó
ðîñòó îïóõîëè è åå îòâåòíîé ðåàêöèè íà ðàäèîòåðàïèþ, ðàäèîòåðàïèþ
è ãèïåðòåðìèþ, à òàêæå öèòîêèíåòè÷åñêîé ìîäåëè. Ïðè èññëåäîâàíèè
ìîäåëåé in vitro îïóõîëü ðàññìàòðèâàåòñÿ íà óðîâíå îòäåëüíûõ êëåòîê,
à êîãäà îïóõîëü äîñòèãàåò ìàêðîñêîïè÷åñêèõ ðàçìåðîâ, òî ïðèìåíÿåòñÿ
ìîäåëü in vivo, â êîòîðîé ìîäåëèðîâàíèå îïóõîëè íà óðîâíå îòäåëüíûõ
êëåòîê óæå âûõîäèò çà ðàìêè âîçìîæíîñòåé ñîâðåìåííûõ êîìïüþòåðîâ.
Áîëüøèíñòâî àâòîðîâ ðàññìàòðèâàþò âñåãî òðè ñîñòîÿíèÿ êëåòêè: àêòèâíîå,
ñïÿùåå è íåêðîòè÷åñêîå.  íàøåé ðàáîòå ðàçäåëåíèå áîëåå äåòàëüíîå,
äàþùåå âîçìîæíîñòü ìîäåëèðîâàòü ðîñò è ñæàòèå îïóõîëè áîëåå òî÷íî è
ñîîòâåòñòâåííî ïðîöåññàì, ïðîèñõîäÿùèì â îðãàíèçìå, è ïîçâîëÿåò ïîëó÷èòü
áîëåå êîððåêòíûå ðåçóëüòàòû.
2. Êðàòêîå îïèñàíèå êëåòî÷íîé ìîäåëè ðàêîâîé îïóõîëè. Äëÿ ýôôåêòèâíîãî è òî÷íîãî ìîäåëèðîâàíèÿ ðàêîâîé îïóõîëè íåîáõîäèìî èìåòü
ñîîòâåòñòâóþùóþ ìîäåëü îòäåëüíûõ êëåòîê.  ñòàòüå ðàññìàòðèâàåòñÿ öèòîêèíåòè÷åñêàÿ ìîäåëü, îáëàäàþùàÿ ñëåäóþùèìè ñâîéñòâàìè:
1. ìîäåëü ÿâëÿåòñÿ äåòåðìèíèðîâàííîé, ñ òî÷êè çðåíèÿ ïîñëåäîâàòåëüíîñòè ïåðåõîäîâ èç îäíîãî ñîñòîÿíèÿ â äðóãîå;
2. ìîäåëü ÿâëÿåòñÿ íåäåòåðìèíèðîâàííîé (ñëó÷àéíîé), ñ òî÷êè çðåíèÿ
1 5 2
ïðîäîëæèòåëüíîñòè âðåìåíè, êîòîðîå êëåòêà ïðîâîäèò â êàæäîì èç ñîñòîÿíèé. Â äàííîé ðàáîòå ïðèìåíÿåòñÿ íîðìàëüíîå ðàñïðåäåëåíèå. Ñëåäóåò
ó÷åñòü, ÷òî äëÿ ðàçíûõ òèïîâ îïóõîëåé ñðåäíåå âðåìÿ ïðîâîæäåíèÿ êëåòîê
â êàæäîì èç ñîñòîÿíèé ðàçíîå, ÷òî ÿâëÿåòñÿ îäíèì èç ïàðàìåòðîâ ìîäåëèðîâàíèÿ;
3. âûáîð ñëåäóþùåãî ñîñòîÿíèÿ êëåòêè çàâèñèò ïîìèìî ñîñòîÿíèÿ
ñàìîé êëåòêè è ñîñòîÿíèÿ êëåòîê, íàõîäÿùèõñÿ ïî ñîñåäñòâó, òàêæå îò
ãåîìåòðè÷åñêîãî ïîëîæåíèÿ êëåòêè â îïóõîëè.
Êëåòêè, êîòîðûå ìîäåëèðóþòñÿ â ñîîòâåòñòâèè ñ äàííîé ìîäåëüþ, èìåþò
ñëåäóþùèå ôàçû:
1. G0 (Gap 0) - ãèïîêñè÷íîå ñïÿùåå ñîñòîÿíèå. Êëåòêà ïîïàäàåò â
äàííîå ñîñòîÿíèå ïîñëå ìèòîçà, åñëè ïèòàíèÿ íåäîñòàòî÷íî äëÿ ïîñëåäóþùåãî
äåëåíèÿ;
2. G1 (Gap 1) - ñïÿùåå ñîñòîÿíèå, â êîòîðîå êëåòêà ïîïàäàåò ïîñëå ìèòîçà,
åñëè ïèòàíèÿ õâàòàåò äëÿ ñëåäóþùåãî öèêëà äåëåíèÿ;
3. S (Synthesis)- ôàçà ñèíòåçà ÄÍÊ, â ðåçóëüòàòå êîòîðîãî â êàæäîé
õðîìîñîìå ïîÿâëÿþòñÿ äâå èäåíòè÷íûå ìîëåêóëû ÄÍÊ. Ïîâðåæäåíèÿ è
ìóòàöèè â ÄÍÊ îáû÷íî áûâàþò èìåííî âî âðåìÿ ýòîãî ñîñòîÿíèÿ;
4. G2 (Gap 2) - ñïÿùåå ñîñòîÿíèå, â êîòîðîå êëåòêà ïîïàäàåò ïîñëå
ñèíòåçà ÄÍÊ, ïåðåä ìèòîçîì;
5. M (Mitosis) - ìèòîç èëè äåëåíèå êëåòêè;
6. N (Necrosis) - íåêðîç. Ìåðòâîå ñîñòîÿíèå, â êîòîðîå ïîïàäàþò êëåòêè
ïîñëå ëå÷åíèÿ. Îñíîâíîå îòëè÷èå îò àïîïòîçà (À) îïðåäåëÿåòñÿ èíòåðâàëîì
âðåìåíè, êîòîðîå íåîáõîäèìî îðãàíèçìó íà ýëèìèíàöèþ ïîãèáøåé êëåòêè èç
îðãàíèçìà.  ñëó÷àå íåêðîçà ýòî âðåìÿ â íåñêîëüêî ðàç áîëüøå, ÷òî ÿâëÿåòñÿ
îäíèì èç ïàðàìåòðîâ ìîäåëè;
7. A (Apoptosis) - àïîïòîç. Ýòî ñîñòîÿíèå, â êîòîðîå êëåòêè ïîïàäàþò,
êîãäà óìèðàþò â ðåçóëüòàòå ïðîãðàììèðóåìîé ãèáåëè. Îáû÷íî â äàííîì
ñëó÷àå ïðîöåññ ëèçèñà (óäàëåíèÿ êëåòêè èç îðãàíèçìà) ïðîèñõîäèò äîñòàòî÷íî
áûñòðî.
Ñîñòîÿíèÿ G1, S è G2 ïðèíàäëåæàò òàê íàçûâàåìîé èíòåðôàçå è â
áîëüøèíñòâå ðàáîò ðàññìàòðèâàþòñÿ êàê îäíî ñîñòîÿíèå.
Àâòîìàò, îïèñûâàþùèé ñîñòîÿíèÿ êëåòîê è âîçìîæíûå ïåðåõîäû èç
ñîñòîÿíèÿ â ñîñòîÿíèå ïîêàçàí, íà ðèñ. 1. Øòðèõîâàííûìè ëèíèÿìè ïîêàçàíû
ïåðåõîäû â ðåçóëüòàòå ïðèìåíåíèÿ òåðàïèè.
 öèòîêèíåòè÷åñêîé ìîäåëè ìû èñõîäèì èç ñëåäóþùèõ äîïóùåíèé:
1. Äëÿ òîãî, ÷òîáû êëåòêà ïîñëå ìèòîçà ïåðåøëà â î÷åðåäíîé öèêë
äåëåíèÿ, íåîáõîäèìû ïèòàíèå è êèñëîðîä. Äîñòàòî÷íîñòü ïèòàíèÿ è êèñëîðîäà ðàññ÷èòûâàåòñÿ èñõîäÿ èç ðàññòîÿíèÿ îò òî÷êè íàõîæäåíèÿ êëåòêè äî
1 5 3
áëèæàéøåé êðîìêè îïóõîëè. Äëÿ ðàçíûõ òèïîâ îïóõîëåé ýòîò ïàðàìåòð
ÿâëÿåòñÿ ðàçíûì è ïðåäñòàâëÿåòñÿ êàê âõîäíîé ïàðàìåòð ìîäåëè. Ñòîèò
ïîÿñíèòü, ÷òî ïèòàíèå è êèñëîðîä äîñòàâëÿþòñÿ êëåòêàì ïî êðîâåíîñíûì
ñîñóäàì, êîòîðûå, îäíàêî, ñêâîçü îïóõîëè íå ïðîðàñòàþò, èëè èìåþò
õàîòè÷åñêóþ ñòðóêòóðó è èìåþò ìíîæåñòâî òóïèêîâ, èëè ”ïðîòåêàþò”,
âñëåäñòâèå ÷åãî öåíòðàëüíûå ÷àñòè îïóõîëè âñåãäà ”ãîëîäàþò”.
Ðèñ.1.
2. ×óâñòâèòåëüíîñòü êëåòêè ê ðàçëè÷íûì ñïîñîáàì ëå÷åíèÿ çàâèñèò îò
òåêóùåãî ñîñòîÿíèÿ êëåòêè. Íàïðèìåð, ïðè ðàäèîòåðàïèè êëåòêè â ñîñòîÿíèè
G0 ÿâëÿþòñÿ íàèáîëåå ðåçèñòåíòíûìè, â òî âðåìÿ êàê â ñëó÷àå ãèïåðòåðìèè
èìååò ìåñòî îáðàòíûé ýôôåêò.
3.
 ëþáîé çàäàííûé ìîìåíò âðåìåíè êàæäàÿ èç êëåòîê ìîæåò
ïîãèáíóòü ñ îïðåäåëåííîé âåðîÿòíîñòüþ â ðåçóëüòàòå ïðîãðàììèðóåìîé
ñìåðòè, ñòàðåíèÿ è ò.ä.
4. Ìàòåðèíñêàÿ è äî÷åðíÿÿ êëåòêè ïîñëå ìèòîçà ñ÷èòàþòñÿ àáñîëþòíî
èäåíòè÷íûìè.
5. Êàæäàÿ êëåòêà îáëàäàåò ñîáñòâåííûìè ÷àñàìè äëÿ îòñ÷åòà âðåìåíè äî
ñëåäóþùåãî ñîñòîÿíèÿ.
Èñõîäÿ èç âûøå ïåðå÷èñëåííûõ äîïóùåíèé è ïîñòóëàòîâ ìû ìîæåì
ñôîðìóëèðîâàòü ñëåäóþùèå òðåáîâàíèÿ ê ñòðóêòóðå äàííûõ ñ òî÷êè çðåíèÿ
êëåòî÷íîé ìîäåëè:
1. âîçìîæíîñòü ïîñëåäîâàòåëüíîãî äîñòóïà êî âñåì êëåòêàì äëÿ îïpåäeëåíèÿ ñîñòîÿíèÿ êëåòêè;
2. âîçìîæíîñòü óäàëåíèÿ è äîáàâëåíèÿ êëåòêè ê îïóõîëè;
3. âîçìîæíîñòü ðàñ÷åòà ðàññòîÿíèÿ îò òî÷êè íàõîæäåíèÿ êëåòêè äî
áëèæàéøåãî êðàÿ îïóõîëè, ÷òî íåîáõîäèìî äëÿ îïðåäåëåíèÿ ñëåäóþùåãî
ñîñòîÿíèÿ êëåòêè ïîñëå ìèòîçà.
1 5 4
Ïðèìåíåííàÿ òåðàïèÿ â íàøåé ìîäåëè ïðåäñòàâëÿåò èç ñåáÿ âû÷èñëåíèå,
êîòîðîå ïðîèçâîäèòñÿ íà îñíîâå òåêóùåãî ñîñòîÿíèÿ êëåòêè, à òàêæå åå
ãåîìåòðè÷åñêîãî ïîëîæåíèÿ.  ðåçóëüòàòå âû÷èñëåíèÿ èçìåíÿåòñÿ âíóòðåííåå ñîñòîÿíèå êëåòêè. Íàïðèìåð, îíà ïîìå÷àåòñÿ êàê îáëó÷åííàÿ. Äëÿ
ðåàëèçàöèè äàííîãî ïðîöåññà íàì îïÿòü æå íåîáõîäèì ïîñëåäîâàòåëüíûé
äîñòóï ê êëåòêàì.
Äîïîëíèòåëüíûìè òðåáîâàíèÿìè ÿâëÿþòñÿ âîçìîæíîñòü ñîõðàíåíèÿ
ñòðóêòóðû äàííûõ â ïîñòîÿííîé ïàìÿòè äëÿ äàëüíåéøåãî àíàëèçà, à òàêæå
âîçìîæíîñòü èñïîëüçîâàíèÿ ñòðóêòóðû äëÿ âèçóàëèçàöèè äàííûõ.
3. Àíàëèç ðàçëè÷íûõ ñòðóêòóð äàííûõ äëÿ ìîäåëèðîâàíèÿ ðàêîâûõ
îïóõîëåé. Èñõîäÿ èç ïðèâåäåííûõ òðåáîâàíèé âûáîð ñòðóêòóðû äàííûõ îãðàíè÷èâàåòñÿ ñëåäóþùèìè âîçìîæíîñòÿìè:
1. ñâÿçàííûé ñïèñîê;
2. òðåõìåðíûé ñòàòè÷åñêèé ìàññèâ;
3. òðåõìåðíûé äèíàìè÷åñêèé ìàññèâ.
Ðàññìîòðèì ïîñëåäîâàòåëüíî ïîëîæèòåëüíûå è îòðèöàòåëüíûå ñòîðîíû
êàæäîé èç ïåðå÷èñëåííûõ ñòðóêòóð.  àíàëèçå ó÷òåíû ñëåäóþùèå ïàðàìåòðû:
à) íåîáõîäèìàÿ ïàìÿòü, á) ìàêñèìàëüíî âîçìîæíûé ðàçìåð îïóõîëè, â)
ñêîðîñòü àëãîðèòìîâ îáõîäà, ñæàòèÿ è ðàñøèðåíèÿ ã) ñêîðîñòü àëãîðèòìîâ
îöåíêè ãåîìåòðè÷åñêîãî ïîëîæåíèÿ êëåòêè, ä) óäîáñòâî äëÿ ñîõðàíåíèÿ íà
âíåøíèé íîñèòåëü ïàìÿòè è âèçóàëèçàöèè. Äîïóñêàåòñÿ, ÷òî îïóõîëü èìååò
êóáè÷åñêóþ ôîðìó.
3.1. Ñâÿçàííûå ñïèñêè. Ïåðâîé èç âîçìîæíîñòåé ÿâëÿåòñÿ èñïîëüçîâàíèå ìîäèôèöèðîâàííîãî ñâÿçàííîãî ñïèñêà, êîòîðûé èìåë áû 6 óêàçàòåëåé
íà ñâîèõ ñîñåäåé. Ýòà ñòðóêòóðà äàííûõ èìååò òî ïðåèìóùåñòâî, ÷òî
îíà íå èñïîëüçóåò äîïîëíèòåëüíîé ïàìÿòè äëÿ íåñóùåñòâóþùèõ êëåòîê, íî
ïðîáëåìîé ÿâëÿåòñÿ òî, ÷òî ïðè ðîñòå îïóõîëè êîëè÷åñòâî íåîáõîäèìîé
ïàìÿòè äëÿ õðàíåíèÿ ñâÿçåé, à èìåííî ðàñõîä ïàìÿòè íà öåëè, íàïðÿìóþ íå
ñâÿçàííûõ ñ ìîäåëèðîâàíèåì îïóõîëè, òàêæå ðàñòåò ïðîïîðöèîíàëüíî. Íàïðèìåð, â íàøåé ðåàëèçàöèè ïàìÿòü, íåîáõîäèìàÿ äëÿ êëåòêè, ñîñòàâëÿåò
18 áàéò ïàìÿòè (òóò è äàëüøå ïðåäïîëàãàåòñÿ ðåàëèçàöèÿ íà êîìïüþòåðàõ
ñ àðõèòåêòóðîé IA-32). Â òî æå âðåìÿ äëÿ õðàíåíèÿ 6 óêàçàòåëåé íàì
ïîòðåáóåòñÿ 24 áàéòà ïàìÿòè, â ðåçóëüòàòå ïîëó÷àåòñÿ, ÷òî ìû òðàòèì áîëüøå
ïàìÿòè íà óêàçàòåëè, ÷åì íà ôàêòè÷åñêèå äàííûå. Èòàê, íàì ïîíàäîáèòñÿ
42 áàéòà äëÿ õðàíåíèÿ îäíîé êëåòêè â ïàìÿòè. Â òîé æå àðõèòåêòóðå IA32 ìû ìîæåì ïðåäîñòàâèòü 2 ãèãàáàéòà ïàìÿòè ïîä ïðîãðàììó (ïðè óñëîâèè,
÷òî ó íàñ åñòü ñòîëüêî ïàìÿòè), ÷òî ïîçâîëèò íàì îäíîâðåìåííî õðàíèòü â
ïàìÿòè äî 50 ìèëëèîíîâ êëåòîê, ÷òî ïðåäñòàâëÿåò èç ñåáÿ êóá ñ ðåáðîì â 370
êëåòîê. Ó ñâÿçàííûõ ñïèñêîâ åñòü òàêæå îäíî ïðåèìóùåñòâî, êîòîðîå â òî
1 5 5
æå ñàìîå âðåìÿ ÿâëÿåòñÿ ñëàáûì ìåñòîì, - ýòî âîçìîæíîñòü ðàñïðåäåëåíèÿ
êëåòîê ïî íåïîñëåäîâàòåëüíûì àäðåñàì ïàìÿòè. Ïðåèìóùåñòâî çàêëþ÷àåòñÿ
â òîì, ÷òî äëÿ ðàñøèðåíèÿ ñòðóêòóðû íåò íåîáõîäèìîñòè â ïîñëåäîâàòåëüíîì
áîëüøîì êóñêå ïàìÿòè, ÷òî òðåáóeò ìàññèâû, à äîñòàòî÷íî âñåãî ëèøü 42
áàéòà. Îäíàêî âñïîìíèì, ÷òî îïåðàöèîííàÿ ñèñòåìà ïåðèîäè÷åñêè âûãðóæàåò
÷àñòü îïåðàòèâíîé ïàìÿòè íà æåñòêèé äèñê (swapping), â ðåçóëüòàòå ÷åãî
ïîñëå äîñòàòî÷íî äîëãîãî ìîäåëèðîâàíèÿ óêàçàòåëè â óçëàõ ñâÿçàííîãî ñïèñêà
áóäóò óêàçûâàòü íà ðàçíûå îáëàñòè ïàìÿòè, ÷òî ðåçêî ïîâûøàåò âîçìîæíîñòü
òîãî, ÷òî ñòðàíèöà, íà êîòîðîé íàõîäèòñÿ ñîñåäíèé óçåë, íàõîäèòñÿ à)
íà æåñòêîì äèñêå; á) â îñíîâíîé ïàìÿòè, íî îòñóòñòâóåò â êýø-ïàìÿòè
ïðîöåññîðà. Äàííûå ïðîáëåìû ðåçêî çàìåäëÿþò âðåìÿ ðàáîòû àëãîðèòìîâ,
êîòîðûì íåîáõîäèì ïîñëåäîâàòåëüíûé ïðîõîä ïî êëåòêàì îïóõîëè, à òàêæå
òåx, êîòîðûå àíàëèçèðóþò ñîñåäñòâî è ãåîìåòðè÷åñêîå ïîëîæåíèå. Îäíàêî
àëãîðèòìû âñòàâêè è óäàëåíèÿ êëåòîê áóäóò âûïîëíÿòüñÿ çà êîíñòàíòíîå O(1)
âðåìÿ. Àëãîðèòìû ñîõðàíåíèÿ äàííûõ íà âíåøíåì íîñèòåëå ðåàëèçóþòñÿ
áåç îñîáûõ çàòðóäíåíèé â ïðèâeäeííîé ñòðóêòóðå äàííûõ, îäíàêî íå âñå
àëãîðèòìû âèçóàëèçàöèè âîçìîæíî ýôôåêòèâíî ðåàëèçîâàòü â äàííîé ñõåìå
- òå àëãîðèòìû, êîòîðûå òðåáóþò ïðîèçâîëüíîãî äîñòóïà ê ýëåìåíòàì
îïóõîëè (random access), âûïîëíÿþòñÿ íà ñâÿçàííûõ ñïèñêàõ çà âðåìÿ,
ïðîïîðöèîíàëüíîå » O(N1=3 ), à èìåííî äëèíå ðåáðà êóáà. Íåáîëüøèì íåäîñòàòêîì òàêæå ÿâëÿåòñÿ òî, ÷òî ïðîãðàììèðîâàíèå ýòîé ñòðóêòóðû äàííûõ
ÿâëÿåòñÿ íå ñàìûì òðèâèàëüíûì çàäàíèåì è äëÿ êîððåêòíîé ðåàëèçàöèè
òðåáóåòñÿ çàòðàòèòü íåìàëî óñèëèé, ÷òîáû âñå àëãîðèòìû âñòàâêè, óäàëåíèÿ
è òðàíñôîðìàöèè êîððåêòíî èçìåíÿëè óêàçàòåëè. Èñïîëüçîâàíèå ñâÿçàííûõ
ñïèñêîâ òàêæå äåëàåò î÷åíü ñëîæíûì, åñëè íå ñêàçàòü íåâîçìîæíûì,
ïðèìåíåíèå ðàñïðåäåëåííûõ ñèñòåì äëÿ ìîäåëèðîâàíèÿ îïóõîëè. Îïðåäåëåíèå ãåîìåòðè÷åñêîãî ïîëîæåíèÿ êëåòêè äåëàåòñÿ çà âðåìÿ, ïðîïîðöèîíàëüíîå
O(N1=3 ), ãäå N êîëè÷åñòâî êëåòîê.
3.2. Ñòàòè÷åñêèé ìàññèâ äàííûõ. Âòîðîé ñòðóêòóðîé äàííûõ ÿâëÿåòñÿ
ñòàòè÷åñêèé òðåõìåðíûé ìàññèâ. Ïîä ñòàòè÷åñêèì ìàññèâîì ïîäðàçóìåâàåì
ïîñëåäîâàòåëüíóþ åäèíîæäû âûäåëÿåìóþ îáëàñòü ïàìÿòè, â êîòîðîé ðàçìåùàþòñÿ êëåòêè è ñóùåñòâóåò ôèêñèðîâàííûé àëãîðèòì àäðåñàöèè, ïîçâîëÿþùèé ïî èíäåêñó ýëåìåíòà ïîëó÷èòü åãî êîîðäèíàòó â òðåõìåðíîì ïðîñòðàíñòâå. Î÷åâèäíûì íåäîñòàòêîì ñòðóêòóðû ÿâëÿåòñÿ òî, ÷òî íåîáõîäèì
ïîñëåäîâàòåëüíûé áîëüøîé êóñîê ïàìÿòè. ×àñòè÷íûì ðåøåíèåì ïðîáëåìû
ÿâëÿåòñÿ âûäåëåíèå áîëüøîãî ìàññèâà â ñàìîì íà÷àëå ðàáîòû ïðîãðàììû,
ïîêà àäðåñíîå ïðîñòðàíñòâî, îòâåäåííîå ïðîãðàììå, åùå íå ôðàãìåíòèðîâàíî, íî äàííîå ðåøåíèå ñèëüíî óìåíüøàåò ãèáêîñòü ïðîãðàììû, óâåëè÷èâàåò
çàíèìàåìûé îáúåì â ïàìÿòè (footprint), íåðàöèîíàëüíî èñïîëüçóåò ïàìÿòü,
1 5 6
à òàêæå çàðàíåå ëèìèòèðóåò âîçìîæíûé ðàçìåð è ôîðìó îïóõîëè ïî âñåì
íàïðàâëåíèÿì, ÷òî, íàïðèìåð, íå ÿâëÿåòñÿ ïðîáëåìîé â ñëó÷àå ñâÿçàííûõ
ñïèñêîâ, òàê êàê òàì åñòü îãðàíè÷åíèå íà îáùåå êîëè÷åñòâî êëåòîê, íî
íåò íèêàêèõ îãðàíè÷åíèé íà ðàñïðåäåëåíèå ýòèõ êëåòîê ïî íàïðàâëåíèÿì.
Çàìåòíûì ïðåèìóùåñòâîì ïåðåä ñâÿçàííûìè ñïèñêàìè ÿâëÿåòñÿ òî, ÷òî
ïðàêòè÷åñêè íåò äîïîëíèòåëüíûõ çàòðàò ïàìÿòè íà äàííûå, íàïðÿìóþ íå
ñâÿçàííûå ñ ïðîöåññîì ìîäåëèðîâàíèÿ.
Èñõîäÿ èç òåõ æå ïîñûëîê,
÷òî è â ïðåäûäóùåì ñëó÷àå, à òàêæå äåëàÿ äîïóùåíèå, ÷òî ñóùåñòâóåò
ïîñëåäîâàòåëüíàÿ îáëàñòü ïàìÿòè â 2Gb, ïîëó÷àåì, ÷òî ìàêñèìàëüíî âîçìîæíàÿ îïóõîëü ìîæåò ñîñòîÿòü èç ïîðÿäêà 120 ìèëëèîíîâ êëåòîê, ÷òî ñîîòâåòñòâóåò êóáó ñ ðàçìåðîì ðåáðà â 490 êëåòîê. Äàííûé ïîäõîä ïîçâîëÿåò ìîäåëèðîâàòü îïóõîëè íà 135% áîëüøå, ÷åì â ïðåäûäóùåì ñëó÷àå. Äðóãèìè
íåäîñòàòêàìè äàííîãî ïîäõîäà ÿâëÿþòñÿ àëãîðèòìû âñòàâêè è óäàëåíèÿ
êëåòîê. Åñëè â ñëó÷àå ñâÿçàííûõ ñïèñêîâ äàííûå àëãîðèòìû òðåáîâàëè
O(1) êîëè÷åñòâà îïåðàöèé, òî òóò ïîòðåáóåòñÿ O(N1=3 ) îïåðàöèé êîïèðîâàíèÿ,
ãäå N - êîëè÷åñòâî ìîäåëèðóåìûõ êëåòîê. Òàêæå äàííûé ïîäõîä ïîçâîëÿåò
èñïîëüçîâàòü ïàðàëëåëüíîå ìîäåëèðîâàíèå íà ñèñòåìàõ ñ ðàçäåëÿåìîé ïàìÿòüþ (SMP), ãäå êàæäîìó ïðîöåññîðó îòâîäèòñÿ ÷àñòü êóáà îïóõîëè; ïðàâäà,
òðåáóåòñÿ îïðåäåëåííàÿ ñèíõðîíèçàöèÿ íà ãðàíèöàõ êóáîâ. Îïðåäåëåíèå
ðàññòîÿíèÿ äî ãðàíè îïóõîëè, êàê è â ñëó÷àå ñî ñâÿçàííûìè ñïèñêàìè, çàéìåò
âðåìÿ, ïðîïîðöèîíàëüíîå O(N1=3 ). Íàèáîëüøèì ïðåèìóùåñòâîì äàííîãî
ïîäõîäà ÿâëÿåòñÿ òî, ÷òî ïðè àíàëèçå ñîñåäíèõ êëåòîê ìû ìîæåì áûòü
óâåðåíû, ÷òî â áîëüøèíñòâå ñëó÷àåâ îíè áóäóò çàãðóæåíû â êýø-ïàìÿòü
ïðîöåññîðà, ÷òî ìîæåò î÷åíü ñèëüíî ïîâëèÿòü íà âðåìÿ ìîäåëèðîâàíèÿ.
Îòìåòèì, ÷òî â äàííîé ñòðóêòóðå îòñóòñòâóåò ïðîáëåìà ñ ïðîèçâîëüíûì
äîñòóïîì ê êëåòêàì îïóõîëè, òàê êàê äàííàÿ îïåðàöèÿ ðåàëèçóåòñÿ çà
êîíñòàíòíîå âðåìÿ.
3.3. Äèíàìè÷åñêèé ìàññèâ äàííûõ. Òðåòüåé ñòðóêòóðîé äàííûõ ÿâëÿåòñÿ
äèíàìè÷åñêèé òðåõìåðíûé ìàññèâ. Ïîä ýòèì ìû ïîíèìàåì ñòðóêòóðó äàííûõ,
êîòîðàÿ ÿâëÿåòñÿ ñïèñêîì óêàçàòåëåé íà óêàçàòåëè âûñøèõ ðàçìåðíîñòåé;
ãîâîðÿ ÿçûêîì C, ìû èñïîëüçóåì òðîéíûå óêàçàòåëè. Äàííûé ìåòîä òàêæå
ïîçâîëÿåò èñïîëüçîâàòü áîëåå ëîãè÷íûé ìåòîä äëÿ äîñòóïà ê ýëåìåíòàì
ìàññèâà, ÷åðåç ñòàíäàðòíûé îïåðàòîð âçÿòèÿ èíäåêñà â ÿçûêàõ C/C++, â
îòëè÷èå îò ïðåîáðàçóþùåé ôóíêöèè, íåîáõîäèìîé âî âòîðîì ìåòîäå, êîòîðàÿ
èç òðåõ èíäåêñîâ ïîëó÷àëà îäèí èíäåêñ â ëèíåéíîì ìàññèâå.
Èñïîëüçîâàíèå äèíàìè÷åñêèõ ìàññèâîâ ïîçâîëÿåò èçáàâèòüñÿ îò îïðåäåëåííûõ íåäîñòàòêîâ, ïðèñóùèõ ñòàòè÷åñêèì ìàññèâàì, òàêèõ êàê ôèêñèðîâàííûé ðàçìåð îïóõîëè ïî êàæäîìó èç íàïðàâëåíèé.  ýòîì ñëó÷àå ìû
ìîæåì âûáèðàòü ðàçìåð äèíàìè÷åñêè, òàêæå íå òðåáóåòñÿ ðåçåðâèðîâàíèÿ
1 5 7
áîëüøîãî ëèíåéíîãî ìàññèâà. Çà ñ÷åò îïðåäåëåííûõ ïîòåðü â ïàìÿòè ìû
îáõîäèìñÿ íàáîðîì êóäà áîëåå ìåíüøèõ ìàññèâîâ, ÷òî ñ îäíîé ñòîðîíû
ÿâëÿåòñÿ òåõíè÷åñêè áîëåå òðóäíûì çàäàíèåì äëÿ ðåàëèçàöèè, ñ äðóãîé ïîçâîëÿåò èìåòü ôàêòè÷åñêè, à íå òîëüêî òåîðåòè÷åñêè áîëüøèå ðàçìåðû
ìîäåëèðóåìûõ îïóõîëåé.
Äëÿ íà÷àëà ðàññìîòðèì êîëè÷åñòâî äîïîëíèòåëüíîé, íåîáõîäèìîé äëÿ
ïîääåðæàíèÿ ðàññìaòðèâaeìîé ñòðóêòóðû äàííûõ. Íå òåðÿÿ îáùíîñòè, ïðåäïîëîæèì, ÷òî îïóõîëü èìååò êóáè÷åñêóþ ôîðìó, îòêóäà ñëåäóåò, ÷òî íàì
ïîòðåáóåòñÿ
M = 2 £ N 1=3 £ 4 = 8 £ N 1=3
(1 )
áàéòà ïàìÿòè ïîä óêàçàòåëè, ãäå 4 - ðàçìåð óêàçàòåëÿ, 2 -êîëè÷åñòâî
ðàçìåðíîñòåé, ïîä êîòîðûå íåîáõîäèìî îòâåñòè ïàìÿòü. Ýòî ÷èñëî âî ìíîãî
ðàç ìåíüøå, ÷åì â ñëó÷àå ñâÿçàííûõ ñïèñêîâ, ãäå òðåáîâàëîñü ïî 24 áàéòà
äîïîëíèòåëüíîé ïàìÿòè íà êàæäóþ èç êëåòîê. Èñõîäÿ èç ôîðìóëû (1) ìû
ìîæåì íàéòè ìàêñèìàëüíûé ðàçìåð îïóõîëè â äàííîì ñëó÷àå èç ñëåäóþùåãî
óðàâíåíèÿ:
1 8 £ N + 8 £ N 1=3 = M emAvail:
(2 )
18 - íåîáõîäèìàÿ ïàìÿòü äëÿ õðàíåíèÿ â ïàìÿòè îäíîé ìîäåëèðóåìîé
êëåòêè, MemAvail - îáùåå êîëè÷åñòâî äîñòóïíîé ïàìÿòè.  íàøèõ ïðèìåðàõ
ýòî ÷èñëî ðàâíî 2Gb. Ïîñëå ïðåîáðàçîâàíèÿ ïîëó÷àåì êóáè÷åñêîå óðàâíåíèå
4
x3 + x ¡ 1 1 9 3 0 4 6 4 7 = 0 :
9
(3 )
Ðåøàÿ óðàâíåíèå ìåòîäîì Êàðäàíî, ïîëó÷àåì îäèí äåéñòâèòåëüíûé
êîðåíü, ðàâíûé ïîñëå îêðóãëåíèÿ 489, ÷òî íåóäèâèòåëüíî, òàê êàê â
ïðåäûäóùåì ñëó÷àå, êîãäà ó íàñ áûëî 120 ìèëëèîíîâ êëåòîê, çàòðà÷åííàÿ
ëèøíÿÿ ïàìÿòü ñîñòàâëÿëà
1 8 £ N 1=3 = 1 8 £ ( 1 2 0 £ 1 0 6 )
1=3
= 1 8 £ 1 0 0 £ 4 :9 ¼ 4 ÊÁàéò;
(4 )
÷òî, êîíå÷íî, â äàííîì ñëó÷àå ÿâëÿåòñÿ íåñóùåñòâåííîé çàòðàòîé.
Èòàê, òðåòèé ñëó÷àé èìååò âñå ïðåèìóùåñòâà âòîðîãî ìåòîäà, à èìåííî
áûñòðûé äîñòóï ê ýëåìåíòàì ïî èíäåêñàì, ÷òî íåâîçìîæíî â ïåðâîì
ñëó÷àå, áîëüøèå îáúåìû ìîäåëèðóåìûõ îïóõîëåé, îòíîñèòåëüíî ïðîñòóþ
äëÿ ïðîãðàììèðîâàíèÿ è ìàíèïóëÿöèè ñòðóêòóðó äàííûõ, áîëåå áûñòðóþ
èòåðàöèþ ïî âñåì êëåòêàì îïóõîëè (òàê êàê èíêðåìåíò èíäåêñà áûñòðåå
ïåðåõîäà ïî óêàçàòåëþ), à òàêæå íåÿâíûå âûãîäû, âîçíèêàþùèå â ðåçóëüòàòå
âîçìîæíîñòè ëó÷øåé îïòèìèçàöèè ñî ñòîðîíû êîìïèëÿòîðà â âèäå çàãðóçêè
ñîñåäíèõ ýëåìåíòîâ â êýø-ïàìÿòü ïðîöåññîðà è ò.ï. Êðîìå òîãî ìû íå òåðÿåì
âîçìîæíîñòåé äëÿ ðåàëèçàöèè ðàñïðåäåëåííîãî ìîäåëèðîâàíèÿ ñ ïîìîùüþ
1 5 8
ìåòîäà, îïèñàííîãî â 3.2.
4. Âûâîäû. Â íàøåé ïðîãðàììíîé ðåàëèçàöèè èñïîëüçóåòñÿ òðåòèé
ìåòîä, åäèíñòâåííûì ÿâíûì íåäîñòàòêîì êîòîðîãî ÿâëÿþòñÿ ìåäëåííûå
îïåðàöèè âñòàâêè è óäàëåíèÿ íîâûõ/ïîãèáøèõ êëåòîê. Ýòîò íåäîñòàòîê
âî ìíîãèõ ñëó÷àÿõ óäàåòñÿ èñïðàâèòü áëàãîäàðÿ áîëåå èíòåëëåêòóàëüíûì
àëãîðèòìàì âñòàâêè è óäàëåíèÿ, ïðîñòåéøèì ïðèìåðîì êîòîðûõ ÿâëÿåòñÿ
ñëåäóþùàÿ îïòèìèçàöèÿ: åñëè èñ÷åçàþò è äåëÿòñÿ ñîñåäíèå êëåòêè, òî
íîâîðîæäåííàÿ êëåòêà ïîìåùàåòñÿ íà ìåñòî ïîãèáøåé. Êðîìå òîãî ýòîò ìåòîä
ïîçâîëÿåò àíàëèçèðîâàòü è ìîäåëèðîâàòü îïóõîëè, ðàçìåð êîòîðûõ áîëüøå
÷åì â äâà ðàçà ïðåâûøàåò ìàêñèìàëüíûé ðàçìåð, êîòîðîãî ìîæíî äîáèòüñÿ â
ñëó÷àå ñâÿçàííûõ ñïèñêîâ.
Äëÿ áîëåå íàãëÿäíîãî àíàëèçà äàííûõ ìû ñâåëè èõ â òàáëèöó. N - êîëè÷åñòâî ìîäåëèðóåìûõ êëåòîê. Îöåíêè ðàçìåðà ïðèâîäÿòñÿ äëÿ êîëè÷åñòâà
êëåòîê, à òàêæå äëèíû ðåáðà ñîîòâåòñòâóþùåãî êóáà è ðàäèóña ñôåðû ñôåðè÷åñêîé îïóõîëè.
Ñðàâíèòåëüíûå õàðàêòåðèñòèêè ñòðóêòóð äàííûõ
ÑÄ/ïàðàìåòð
Âðåìÿ
Âðåìÿ
âñòàâêè
yäàëåíèÿ
O(1)
O(1)
Ñòàò.
Î(N1/3), â
Î(N1/3), â
ìàññèâ
èäåàëå O(1) èäåàëå O(1)
Äèí.
Î(N1/3), â
ìàññèâ
èäåàëå O(1) èäåàëå O(1)
Ñïèñîê
Î(N1/3), â
Ïåðåáîð Èíäåêñè-
Kýøè-
Max ðàçìåð
ðîâàíèå
ðîâàíèå
îïóõîëè
O(1)
O(N1/3)
íåò
O(1)
O(1)
äà
O(1)
O(1)
äà
» 50*106
» 120*106
»
115*106
370/228
490/305
489/301
Õîòÿ ïåðåáîð äàííûõ âî âñåõ ñëó÷àÿõ àïïðîêñèìèðóåòñÿ êîíñòàíòíîé
ôóíêöèåé, íà ñàìîì äåëå ïåðåáîð âñåõ ýëåìåíòîâ ñ èñïîëüçîâàíèåì ñâÿçàííûõ ñïèñêîâ áóäåò âî ìíîãî ðàç ìåäëåííåå, ÷åì âî âòîðîì è òðåòüåì ñëó÷àå.
Ãîñóäàðñòâåííûé èíæåíåðíûé óíèâåðñèòåò Àðìåíèè
vagababov@gmail.com
ì. ê. ²Õ³µ³µáí
ø³ÕóÏ»ÕÇ in vitro ÙṻɳíáñÙ³Ý Å³Ù³Ý³Ï áõéáõóùÇ Ý»ñϳ۳óÙ³Ý Ñ³Ù³ñ ûåïÇÙ³É
ïíÛ³ÉÝ»ñÇ Ï³éáõóí³ÍùÇ ÁÝïñáõÃÛ³Ý Ù³ëÇÝ
Ðá¹í³ÍáõÙ Ýϳñ³·ñíáõÙ »Ý ï³ñµ»ñ Ùáï»óáõÙÝ»ñ, áñáÝó Ýå³ï³ÏÝ ¿ ÁÝïñ»É
ûåïÇÙ³É ïíÛ³ÉÝ»ñÇ Ï³éáõóí³Íùª ѳٳϳñ·ãÇ ÑÇßáÕáõÃÛ³Ý Ù»ç áõéáõóùÇ Ý»ñϳ۳óÙ³Ý
ѳٳñ: àõëáõÙݳëÇñáõÃÛ³Ý Å³Ù³Ý³Ï áõß³¹ñáõÃÛáõÝ ¿ ¹³ñÓí»É Ñ»ï¨Û³É ѳïϳÝÇßÝ»ñÇÝ.
½µ³Õ»óñ³Í ÑÇßáÕáõÃÛ³Ý Í³í³ÉÁ, ï³ññ»ñÇÝ ¹ÇÙ»Éáõ ųٳݳÏÁ ¨ µ³ñ¹áõÃÛáõÝÁ, ÇÝãå»ë
1 5 9
ݳ¨ ïíÛ³ÉÝ»ñÇ Ï³éáõóí³ÍùÇ Ù³ïã»ÉÇáõÃÛáõÝÁ ÙṻɳíáñáÕ ³É·áñÇÃÙÝ»ñÇ Ñ³Ù³ñ: ²é³ÝÓÇÝ
¹Çï³ñÏíáõÙ ¿ ½áõ·³Ñ»é ϳ٠µ³ßËí³Í ѳٳϳñ·»ñáõÙ áõéáõóùÝ»ñÇ ÙṻɳíáñÙ³Ý Ñ³ñóÁ:
V. S. Agababov
On the Optimal Data Structure Selection for Tumor Representation for in vitro Cancer
Simulation
The article describes different approaches aimed at data structure selection for optimal representation of a tumor in computer memory. During investigation the attention was
paid to the following parameters such as memory consumption, element access complexity
and suitability of the data structure for simulation algorithms. Suitability for parallel and
distributed computing is also considered as one of the parameters.
Ëèòåðàòóðà
1. Stamatakos G., Dionysiou D., Zacharaki E., Uzunoglu N. – Proceedings of the
IEEE. 2002. V. 90. N. 11. P. 525-540.
2. Êîðí Ã., Êîðí T. – Ñïðàâî÷íèê ïî ìàòåìàòèêå. Ì. Íàóêà. 1973.
3. Êîðìåí T., Ëåéçåðñòîí ×., Ðèâåñò P., Øòåéí K. – Àëãîðèòìû: ïîñòðîåíèå è
àíàëèç. Ì. Âèëüÿìñ. 2005.
1 6 0
Download