Stanisław Jerzy Niepostyn Instytut Informatyki, Wydział Elektroniki i Technik Informacyjnych,
Politechnika Łódzka Wydział Elektrotechniki, Elektroniki ... · Wydział Elektrotechniki,...
Transcript of Politechnika Łódzka Wydział Elektrotechniki, Elektroniki ... · Wydział Elektrotechniki,...
Politechnika Łódzka
Wydział Elektrotechniki, Elektroniki, Informatyki i Automatyki
Instytut Informatyki Stosowanej
STRESZCZENIE
Algorytmy przetwarzania danych w rozproszonych środowiskach heterogenicznych dla potrzeb tomografii
mgr inż. Michał Majchrowicz
Promotor pracy:
dr hab. inż. Lidia Jackowska - Strumiłło, prof. PŁ
Łódź, styczeń, 2014
2
1 Wstęp
Tomografia przemysłowa jest techniką pomiarową, która umożliwia badanie
procesów zachodzących wewnątrz obiektów bez fizycznej potrzeby ingerowania w ich
wnętrze. Technika ta pozwala na wizualizację trudno dostępnych procesów oraz ich kontrolę
przy wykorzystaniu systemów z pętlą sprzężenia zwrotnego. Rekonstruowane obrazy mogą
być poddane wnikliwej analizie z użyciem algorytmów rozpoznawania obrazu. Na tej
podstawie podejmowana jest decyzja wpływająca na dalszy przebieg procesu. Jednym z
ważniejszych rodzajów tomografii przemysłowej jest elektryczna tomografia pojemnościowa
ECT (ang. Electrical Capacitance Tomography).
Elektryczna Tomografia Pojemnościowa jest relatywnie nową metodą obrazowania,
która może być wykorzystana do bezinwazyjnej wizualizacji procesów przemysłowych w
dwóch, trzech, oraz czterech wymiarach, w których czwartym wiarem jest czas, (2D, 3D i
4D) (Soleimani i inni, 2009; Banasiak i inni, 2009; Wajman i inni, 2006; Banasiak i inni,
2013). W porównaniu z innymi metodami obrazowania tomografię tę charakteryzuje
możliwość szybszego pozyskiwania danych pomiarowych niż w przypadku rezonansu
magnetycznego (MRI - ang. Magnetic Resonance Imaging), czy tomografii rentgenowskiej
(CT - ang. X-ray Computed Tomography).
Elektryczna Tomografia Pojemnościowa jest stosowana do monitorowania procesów
przemysłowych (Soleimani i Lionheart, 2005). Niektóre z takich zastosowań obejmują na
przykład pomiary przepływu płynów w rurociągach (Jaworski i Dyakowski, 2001; Isaksen i
inni, 1994) jak również określenie koncentracji jednego płynu w drugim (Wajman i inni,
2006; Banasiak i inni, 2009), rozproszenie ciał stałych w płynach, czy monitorowanie
przepływu materiałów sypkich w silosach (Chaniecki i inni, 2006; Romanowski i inni, 2006;
Grudzień i Romanowski, 2004). Pomimo, iż technologia ta została po raz pierwszy
zaprezentowana już wiele lat temu (Huang i inni, 1988), to niemniej jednak jej wyraźny
rozwój nastąpił dopiero w czasie ostatniej dekady.
Pomimo licznych zalet i potencjalnych obszarów aplikacyjnych Elektryczna
Tomografia Pojemnościowa nie jest jeszcze powszechnie stosowana do monitorowania
rzeczywistych procesów przemysłowych. Jednym z głównych problemów utrudniającym
możliwość zastosowania ECT w przemyśle jest konieczność wykonania znacznej ilości
3
obliczeń w celu uzyskania obrazu o wystarczającej jakości. Wynika to z faktu, iż w procesie
rekonstrukcji konieczne jest wykonanie obliczeń na danych o strukturze macierzowej, których
zapis na nośniku trwałym wymaga pamięci o pojemności nawet 250 MiB*.
Cel, teza i zakres pracy
Celem niniejszej rozprawy jest opracowanie i zastosowanie technik obliczeń
rozproszonych do przyspieszenia rekonstrukcji obrazu w Elektrycznej Tomografii
Pojemnościowej.
Istotnym aspektem technik obliczeniowych wykorzystywanych w ECT jest jakość
zrekonstruowanego obrazu (określana zarówno poprzez rozdzielczość obrazu, jak i
dokładność rekonstrukcji), która zależy od ilości wykonywanych obliczeń. Duża złożoność
obliczeniowa przekłada się wprost na czas rekonstrukcji, co w rezultacie często uniemożliwia
zastosowanie Elektrycznej Tomografii Pojemnościowej do monitorowania procesów
przemysłowych w czasie rzeczywistym
W Instytucie Informatyki Stosowanej Politechniki Łódzkiej od wielu lat prowadzone
są badania nad zwiększeniem dokładności procesu rekonstrukcji obrazu w Elektrycznej
Tomografii Pojemnościowej, co jest możliwe do osiągnięcia na dwa sposoby:
1. Zwiększenie liczby pomiarów (zmiana konstrukcji czujników i układów
elektronicznych, co pozwoli na zwiększenie rozdzielczości obrazu)
2. Zwiększenie szybkości wykonywanych obliczeń, co pozwoli na wykonanie
większej liczby iteracji algorytmu rekonstrukcji obrazu w określonym czasie
oraz na wykorzystanie danych o większych rozmiarach (co zwiększy
rozdzielczość obrazu).
__________________________________________________________________
* MiB – 220 B jednostka z zgodna z normą IEC 60027-2 (IEC 60027-2, 2005-08)
oraz ISO/IEC 80000-13 (ISO/IEC 80000-13, 2008))
4
Zwiększenie szybkości wykonywanych obliczeń było realizowane między innymi
przez wykorzystanie procesorów graficznych (Matusiak, 2013; Kapusta i inni, 2010). W tej
rozprawie rozważona jest koncepcja zwiększania dokładności procesu rekonstrukcji obrazu
poprzez przyspieszenie wykonywanych obliczeń z wykorzystaniem systemów rozproszonych.
Tezę rozprawy sformułowano następująco:
Możliwe jest przyspieszenie rekonstrukcji trójwymiarowych obrazów pozyskiwanych w
Elektrycznej Tomografii Pojemnościowej poprzez wykorzystanie rozproszonego,
heterogenicznego systemu wieloprocesorowego.
W celu realizacji tego zadania w ramach pracy zostały opracowane dwa systemy
rozproszone:
1. System rozproszony wykorzystujący platformę Xgrid jako medium transmisji
2. Autorski system do obliczeń rozproszonych – KISDC (KIS Distributed
Computing)
Oba systemy do obliczeń rozproszonych w ECT zostały opracowane wspólnie z mgr inż.
Pawłem Kapustą. Każdy ze współautorów odpowiedzialny był za realizację odrębnych, ściśle
określonych zadań. Uproszony schemat podziału tych zadań pokazano na rysunku 1.1.
W przypadku analizy środowisk rozproszonych bardzo ważna jest specyfika danych
wykorzystywanych w procesie rekonstrukcji obrazu w ECT. W Elektrycznej Tomografii
Pojemnościowej do uzyskania rekonstrukcji obrazu o zadowalającej jakości i rozdzielczości
przestrzennej konieczne jest stosowanie danych pomiarowych, których rozmiar wynosi nawet
kilkaset megabajtów (MiB). W rezultacie rozmiar ten ma znaczny wpływ na czas transmisji
danych w systemie rozproszonym.
Michał Majchrowicz� 1.10.2014 09:06Usunięto: 1.1
5
Dlatego też w celu opracowania założeń projektowych do budowy systemów
rozproszonych konieczna jest analiza danych tomograficznych pod kątem możliwości ich
podziału i dystrybucji w takim środowisku i zaprojektowanie odpowiednich algorytmów.
Zaprojektowano dwa środowiska rozproszone wykorzystujące jako medium transmisji
odpowiednio platformę Xgrid (Apple, 2007) oraz protokół HTTP (Fielding i inni, 1999).
Przeprowadzone zostały również szczegółowe badania rozwiązań sieciowych w celu
wybrania najlepszego (pod kątem przesyłu danych tomograficznych) medium transmisji.
Rysunek 1.1 - Uproszczony schemat podziału zadań przy budowie systemów do obliczeń
rozproszonych w ECT
W związku z postawioną tezą oraz podziałem zadań projektowych pomiędzy
współautorami obu systemów rozproszonych cele szczegółowe niniejszej rozprawy są
następujące:
1. Opracowanie autorskich algorytmów pozwalających na rozpraszanie zarówno danych,
jak i obliczeń wykorzystywanych w procesie rekonstrukcji obrazu w Elektrycznej
Tomografii Pojemnościowej. Niezbędnym aspektem sytemu jest również
6
wykorzystanie do obliczeń zarówno procesorów (CPU -ang. Central Processing
Unit), jak i coraz częściej wykorzystanych do obliczeń procesorów graficznych (GPU
– ang. Graphical Processing Unit).
2. Opracowanie odpowiedniej platformy zapewniającej duży poziom elastyczności
pozwalający na znaczne przyspieszenie rekonstrukcji obrazu w Elektrycznej
Tomografii Pojemnościowej, jak również opracowanie środowiska programistycznego
(ang. framework) z warstwą programową, która umożliwiłaby dostęp do wielu
połączonych ze sobą komputerów wyposażonych w szybkie procesory graficzne
(GPU) i klasyczne (CPU) (Kapusta i Majchrowicz, 2010a).
3. Zaprojektowanie i opracowanie warstwy pośredniczącej pomiędzy system
rozproszonym, a urządzeniami wykorzystywanymi w ramach konkretnego węzła do
przeprowadzania obliczeń. Warstwa ta również jest odpowiedzialna za podział i
dystrybucję danych. Warstwa ta ma charakter częściowo rzeczywisty, a częściowo
abstrakcyjny, co pozwola na ujednolicenie dostępu zarówno do urządzeń lokalnych,
jak i sieciowych wykorzystywanych w systemie.
4. Opracowanie algorytmów do podziału i dystrybucji danych pomiędzy węzłami oraz
urządzeniami (rdzeniami procesora oraz kartami graficznymi) w ramach
pojedynczego węzła.
5. Przeprowadzenie testów wydajności opracowanych rozwiązań pod kątem różnych
algorytmów wykorzystywanych w Elektrycznej Tomografii Pojemnościowej do
rekonstrukcji obrazu. Badania te obejmują między innymi analizę porównawczą obu
opracowanych środowisk rozproszonych, w celu dobrania najbardziej wydajnego
rozwiązania dla konkretnych parametrów (ilość węzłów, moc obliczeniowa
poszczególnych jednostek, wykorzystywany algorytm rekonstrukcji obrazu, itp.).
W rezultacie w ramach pracy został opracowany autorski system do obliczeń
rozproszonych – KISDC oraz algorytmy rekonstrukcji obrazu w Elektrycznej Tomografii
Pojemnościowej w rozproszonych systemach heterogenicznych.
2 Stan wiedzy
Opracowanie rozwiązań umożliwiających przyspieszenie procesu rekonstrukcji obrazu
w Elektrycznej Tomografii Pojemnościowej poprzez zastosowanie rozproszonego systemu
7
heterogenicznego wymagało od Autora zgłębienia wiedzy z dwóch dziedzin. Konieczne było
przeanalizowanie algorytmów rekonstrukcji obrazu w ETC pod kątem możliwości ich
rozproszenia, jak również samych systemów rozproszonych z punktu widzenia możliwości
ich zastosowania i optymalizacji do jak najwydajniejszego transferu danych tomograficznych.
2.1 Tomografia i obliczenia równoległe
Elektryczna Tomografia Pojemnościowa jest nieinwazyjną metodą diagnozowania
procesów przemysłowych, w której obraz - rozkład stałej dielektrycznej wewnątrz czujnika
jest wyznaczany na podstawie pomiaru pojemności pomiędzy elektrodami. ECT jest
stosowana w wielu gałęziach przemysłu, takich jak: przemysł wydobywczy, farmaceutyczny,
chemiczny, budowalny czy spożywczy.
W ECT 3D obraz jest rekonstruowany w wyniku wykonywania operacji na dużych
ilościach danych uzyskanych z czujników [Rysunek 2.1.1] (zarówno tradycyjnych (Banasiak i
inni, 2008; Banasiak i inni, 2010) jak i obrotowych (Zhijian i inni, 2010)). Technika ta jest
bardzo dobrym narzędziem do wizualizacji w czasie rzeczywistym szybko zmiennych
procesów przemysłowych. Niemniej jednak moc obliczeniowa współczesnych procesorów
drastycznie zmniejsza ilość jej potencjalnych zastosowań. Powodem tego jest długi czas
rekonstrukcji obrazów 3D o zadowalającej jakości. Wynika to ze stosunkowo dużych
rozmiarów macierzy, na których obliczenia są wykonywane (gęste macierze o wymiarze
60896 x 496 lub więcej elementów, które zajmują około 250 MiB (w pamięci).
Przykładem zastosowania 3D ECT, które jest obecnie ograniczone przez czas
rekonstrukcji obrazu jest: kontrola procesów przemysłowych, w tym monitorowanie
przepływu ropy oraz gazu w rurociągach (Jaworski i Dyakowski, 2005; Li i inni, 2013),
przepływów materiałów sypkich w instalacjach pneumatycznych (Grudzień i inni, 2006), jak
również przepływów grawitacyjnych w silosach (Romanowski i inni, 2006).
Michał Majchrowicz� 1.10.2014 09:06Usunięto: Rysunek 2.1
8
Opracowanie nowych metod wykonywania obliczeń niezbędnych do rekonstrukcji
obrazu w Elektrycznej Tomografii Pojemnościowej 3D (3D ECT) jest więc niezwykle
ważnym dla nuki i techniki zagadnieniem. Przyspieszenie tych obliczeń można uzyskać
stosując obliczenia równoległe i rozproszone przy wykorzystaniu rozproszonego,
heterogenicznego systemu wielowęzłowego. W celu realizacji tego zadania konieczne jest
opracowanie nowych algorytmów do wykonywania rekonstrukcji obrazu, które będą brały
pod uwagę charakter obliczeń równoległych i rozproszonych oraz zaprojektowanie
wielowęzłowego, rozproszonego, heterogenicznego systemu dla potrzeb Elektrycznej
Tomografii Pojemnościowej. We wcześniejszych pracach były już badania nad
przyspieszeniem obliczeń tomograficznych poprzez wykorzystanie procesorów graficznych
(Matusiak, 2013), ale dotyczyły one jedynie ECT 2D i nie wykorzystywały środowisk
rozproszonych. Schemat przykładowego układu pomiarowego stosowanego w ECT
pokazano na rysunku 2.1.1.
Rysunek 2.1.1 - Schemat układu pomiarowego w Elektrycznej Tomografii Pojemnościowej:
a) ideowy – konstrukcyjny, b) blokowy – funkcjonalny.
Michał Majchrowicz� 1.10.2014 09:06Usunięto: 2.1
9
W Elektrycznej Tomografii Pojemnościowej mierzoną wielkością jest wartość
pojemności pomiędzy kolejnymi parami elektrod czujnika, które są rozmieszczone
równomiernie wokół badanego obiektu. W większości przypadków czujnik
elektropojemnościowy ma kształt walca. Do rekonstrukcji obrazu wykorzystywane są wyniki
pomiarów pomiędzy wszystkimi niezależnymi parami elektrod, przy przyłożonym potencjale
V0 do jednej z elektrod [Rysunek 2.1.2]. Uzyskiwany obraz jest najczęściej przekrojem
poprzecznym (dla tomografii 2D (Yang i Peng, 2003))[Rysunek 2.1.2] lub trójwymiarowym
obrazem (dla tomografii 3D) fragmentu badanego procesu [Rysunek 2.1.3].
Rysunek 2.1.2 - Schemat pomiaru w tomografie ECT 2D z 8-ma elektrodami
(Romanowski i Grudzień, 2004), gdzie: φ – potencjał elektryczny, V0 – wartość potencjału
przyłożonego do elektrody pomiarowej, Cij – pojemność pomiędzy elektrodami i oraz j, ε1, ε2
– przenikalność elektryczna materiałów umieszczonych wewnątrz tomografu
Konstruowane są czujniki tomograficzne z różną ilością elektrod. W tomografii 2D
najczęściej stosowane są te składające się z ośmiu, dwunastu, czy szesnastu elektrod. W
tomografii 3D liczba elektrod jest większa, a czujnik zbudowany jest z kilku poziomów
elektrod [Rysunek 2.1.1]. Ilość elektrod ma bezpośrednie przełożenie na liczbę niezależnych
pomiarów i wyraża się wzorem (Romanowski i Grudzień, 2004) :
Michał Majchrowicz� 1.10.2014 09:06Usunięto: Rysunek 2.2Michał Majchrowicz� 1.10.2014 09:06Usunięto: Rysunek 2.2Michał Majchrowicz� 1.10.2014 09:06Usunięto: Rysunek 2.3
Michał Majchrowicz� 1.10.2014 09:06Usunięto: Rysunek 2.1
10
𝑝! =!(!!!)
! (2.1.1)
gdzie:
pn – liczba niezależnych pomiarów,
H – liczba elektrod.
Mechanizm rekonstrukcji obrazu w Elektrycznej Tomografii Pojemnościowej
(Olszewski i inni, 2006) polega na wyliczeniu tak zwanego problemu odwrotnego. Pod tym
pojęciem rozumie się aproksymację przestrzennego rozkładu przenikalności dielektrycznej ε
na podstawie otrzymanych danych pomiarowych C (Wajman i inni, 2006; Banasiak i inni,
2008; Banasiak i inni, 2009), czyli macierzy pojemności zmierzonych pomiędzy elektrodami
czujnika. Rekonstrukcja obrazu przy wykorzystaniu metod deterministycznych wymaga
wykonania wielu podstawowych operacji algebry liniowej. Takich, jak transpozycja,
mnożenie, dodawanie, odejmowanie. Operacje macierzowe charakteryzuje fakt, iż ich
złożoność obliczeniowa jest wielomianowa. Problem ten staje się więc jeszcze bardziej
znaczący przy dużej liczbie elementów macierzy, gdyż czas potrzebny do wykonania operacji
wzrasta szybko wraz ze wzrostem liczby elementów. Przykładowo w przypadku mnożenia
macierzy 2D, które jest operacją klasy O(n3), można przyjąć, iż n-krotny wzrost rozmiarów
macierzy spowoduje n3-krotny wzrost czasu przeprowadzania obliczeń.
Przykładami algorytmów rekonstrukcji obrazu, w których wykorzystywane są głównie
podstawowe działania algebry liniowej są algorytmy LBP (wzór 2.1.2) i Landwebera (wzór
2.1.3) (Yang i Peng, 2003). W algorytmie LBP rozkład przenikalności elektrycznej wewnątrz
czujnika obliczany jest ze wzoru:
(2.1.2)
gdzie:
ɛ – rozkład przenikalności dielektrycznej – wektor obrazu (m x
1 elementów),
S – macierz czułości (n x m elementów),
C – wektor danych pomiarowych (n x 1 elementów), macierz
pojemności zmierzonych pomiędzy elektrodami czujnika.
n, m – liczby całkowite.
C*Sε =
Michał Majchrowicz� 1.10.2014 09:06Usunięto: 2.2Michał Majchrowicz� 1.10.2014 09:06Usunięto: 2.3
11
Algorytm Landwebera pozwala na uzyskanie obrazu o lepszej jakości, ale wymaga on
przeprowadzenia większej ilości obliczeń. Jest to algorytm iteracyjny w którym rozkład
przenikalności dielektrycznej wewnątrz czujnika obliczany jest ze wzoru (2.1.3):
(2.1.3)
gdzie:
ԑk+1 – obraz uzyskany w obecnej iteracji (n x 1 elementów)
ԑk – obraz uzyskany w poprzedniej iteracji (n x 1 elementów)
α – współczynnik zbieżności (skalar)
S T – transponowana macierz czułości (n x m elementów)
S – macierz czułości (n x m elementów)
C m – wektor danych pomiarowych (m x 1 elementów), macierz
pojemności zmierzonych pomiędzy elektrodami czujnika.
W procesie rekonstrukcji rozkładu stałej dielektrycznej przy zastosowaniu obecnych
algorytmów i mocy obliczeniowych współczesnych procesorów CPU zastosowanie
tomografii ECT, w szczególności dla problemu 3D, jest ograniczone przez zbyt długi czas
rekonstrukcji obrazu, przy zachowaniu satysfakcjonującej jakości uzyskiwanych obrazów.
)Cε*(S*S*εε mkT
k1k −−=+ α
Michał Majchrowicz� 1.10.2014 09:06Usunięto: 2.3
12
Rysunek 2.1.3 - Przykład obrazu 3D uzyskanego przy zastosowaniu ECT (źródło: (Zhijian i
inni, 2010))
W celu osiągnięcia rekonstrukcji obrazu 3D w ECT w czasie rzeczywistym podsystem
odpowiedzialny za obliczenia musi być w stanie przekształcić dane w czasie ułamków
sekund, co jest trudne do osiągnięcia, ponieważ zazwyczaj obraz 3D uzyskiwany za pomocą
ECT może składać się z wielu pikseli. W związku z tym wykorzystanie techniki 3D ECT
wiążę się z dużą złożonością obliczeniową, a rekonstrukcja obrazów 3D w ECT w czasie
rzeczywistym nie jest możliwa za pomocą klasycznego systemu z jednym procesorem. Czas
obliczeń może osiągnąć w tym przypadku kilka minut, godzin lub, w niektórych przypadkach,
nawet dni.
Przez wiele lat do rekonstrukcji obrazu wykorzystywano jedynie klasyczne procesory
– CPU. Niemniej jednak dynamiczny rozwój mocy obliczeniowych procesorów graficznych
[Rysunek 2.1.4] umożliwił ich zastosowanie w różnych dziedzinach nauki (Majchrowicz,
Kapusta i inni, 2012a), w tym do przyspieszenia rekonstrukcji obrazu w ECT. Badania
przeprowadzone podczas analizy algorytmów wykorzystywanych w ECT (Kapusta,
Majchrowicz i inni, 2010; Majchrowicz, Kapusta i inni, 2010b; Kapusta i inni, 2010)
wykazały jednak, iż obliczenia z wykorzystaniem współczesnych procesorów GPU są
obarczone wieloma ograniczeniami. Jedną z wad architektury wykorzystywanej w
dzisiejszych kartach graficznych jest słabe wsparcie, a czasami nawet jego brak, do
możliwości wykonywania niezależnych małych fragmentów kodu (tak zwanych „kerneli”) w
Michał Majchrowicz� 1.10.2014 09:06Usunięto: Rysunek 2.4
13
tym samym momencie (Majchrowicz, Kapusta i inni, 2010c; Majchrowicz, Kapusta i inni,
2010b). W efekcie, by uzyskać znaczne przyśpieszenie niezbędnym staje się wykorzystanie
wielu kart graficznych (Majchrowicz i Kapusta, 2011a; Kapusta, Majchrowicz i inni, 2011;
Kapusta, Majchrowicz i inni, 2013a).
Rysunek 2.1.4 - Porówanie architektury CPU i GPU (źródło www.nvidia.com).
Podejście to jednak wymaga częściowej (w niektórych sytuacjach nawet pełnej)
reimplementacji istniejących algorytmów (Majchrowicz, Kapusta i inni, 2012b). Wynika to z
tego, iż w takiej konfiguracji pamięć nie jest współdzielona pomiędzy urządzeniami, a w
rezultacie wszystkie obliczenia muszą być wykonywane w środowisku pamięci rozproszonej.
Co więcej moc obliczeniowa pojedynczego komputera (wyposażonego w wiele kart
graficznych) jest również ograniczona. W konsekwencji niezbędne stało się zastosowanie
systemu, w którym dane i obliczenia zostają rozdzielone na większą liczbę komputerów i
wykorzystywane jest medium transmisji danych. Architektura o takim charakterze określana
jest mianem systemu rozproszonego (Fitzgerald i inni, 1997; Avery i inni, 2001; Foster i
Kesselman, 1999).
Koncepcja budowy specjalistycznego systemu obliczeniowego, dedykowanego dla
ECT jest nowatorskim rozwiązaniem, które na etapie projektu wymagało przeprowadzenia
wielu badań i testów. Opracowane w ramach rozprawy dwa systemy rozproszone były
testowane w Laboratorium Tomografii Procesowej Instytutu Informatyki Stosowanej im.
prof. Tomasza Dyakowskiego na rzeczywistych danych pomiarowych.
14
2.2 Systemy rozproszone
Systemy rozproszone są jednym z ważniejszych osiągnięć technologicznych ostatnich
lat (Cugola i inni, 1998), które miało znaczących wpływ na rozwój współczesnej informatyki.
Zakres zastosowań systemów rozproszonych w życiu codziennym jest bardzo szeroki
(Czajkowski i inni, 2001; Czajkowski i inni, 2002), od systemów lokalnych, jakie można
spotkać na przykład w samochodach, statkach, samolotach, do systemów w skali globalnej
obejmujących miliony węzłów, opartych na usługach przetwarzania danych; od prostych
systemów wbudowanych składających się z bardzo małych i prostych czujników do tych
zawierających potężne obliczeniowe podzespoły; od systemów wbudowanych do tych, które
obsługują zaawansowane interaktywne interfejsy użytkownika, i tak dalej.
Możemy zdefiniować system rozproszony jako taki, w którym komponenty sprzętowe
lub oprogramowanie na komputerach w sieci komunikują się ze sobą i koordynują swoje
działania tylko poprzez przekazywanie wiadomości (Carzaniga i inni, 1999a; Carzaniga i inni,
1999b). Ta prosta definicja obejmuje całą gamę systemów, w których komputery sieciowe
mogą być z powodzeniem wykorzystywane do wykonywania zadań szybciej lub dokładniej
niżeli pojedyncza jednostka.
Główną motywacją do budowy i użytkowania systemów rozproszonych jest
chęć rozdzielenia zasobów (Casanova i inni, 2000; Chen i inni, 2002; Chervenak i inni, 2000).
Pojęcie "zasobów", które mogą być skutecznie udostępnione w sieci komputerowej obejmuje
zarówno komponenty sprzętowe, takie jak dyski i drukarki, jak i oprogramowanie, takie jak
pliki, bazy danych i inne obiekty, jak np. strumień klatek wideo, które są przesyłane z
cyfrowej kamery wideo, czy też sygnął dźwięku przesyłany pomiędzy operatorami, a
telefonami komórkowymi.
Systemy rozproszone są również powszechnie wykorzystywane w systemach
pomiarowych, w których to komunikacja odbywa się za pomocą różnych interfejsów, takich
jak: magistrala USB, magistrala IEEE-1394, interfejs RS-232, interfejs CAN, sieć lokalna
(Ethernet), czy sieć bezprzewodowa (GSM/UMTS) (Nawrocki, 2006). W tomografii pojawiły
również się już pierwsze zastosowania systemów rozproszonych do przyspieszenia obliczeń.
Jednym z nich było wykorzystanie rozproszonego systemu do przyspieszenia wizualizacji
tomografii ultradźwiękowej (Müller i inni, 2005). Systemy rozproszone wykorzystywano
15
również do rozpraszania obliczeń i pomiarów wykorzystywanych w tomografii sejsmicznej
(Kamath i inni, 2013), co pozwoliło na zarówno na przyspieszenie procesu wizualizacji, jak i
uzyskanie obrazów o wyższej rozdzielczości.
Niemniej jednak do tej pory nie stosowano rozproszonych systemów, a tym
bardziej rozproszonych systemów heterogenicznych multi-GPU do przyspieszenia procesu
rekonstrukcji obrazu w Elektrycznej Tomografii Pojemnościowej, a tym bardziej ETC 3D.
3 System do obliczeń rozproszonych wykorzystujący platformę Xgrid
W celu najbardziej efektywnego wykorzystania platformy Xgrid do przyspieszenia
procesu rekonstrukcji obrazu w elektrycznej tomografii pojemnościowej w projektowanym
systemie konieczne jest opracowanie dodatkowej warstwy pośredniczącej pomiędzy
systemem Xgrid a algorytmami ECT. Warstwowa architektura zaprojektowanet systemu
została przestawiona na rysunku 3.1 .
Rysunek 3.1 – Koncepcyjny schemat wartw w rozproszonym środowisku wykorzystującym platformę Xgrid.
Przedstawiony schemat algorytmu Landwebera z wykorzystaniem systemu
rozproszonego [Rysunek 3.2] ukazuje jego podział na algorytmy wykorzystywane w procesie
rekonstrukcji obrazu w elektrycznej tomografii pojemnościowej. Opracowana została wersja
algorytmu Landwebera, którą zoptymalizowano pod kątem jej wykorzystania w
komputerowym systemie pomiarowym w Instytucie Informatyki Stosowanej. Między innymi
Michał Majchrowicz� 1.10.2014 09:06Usunięto: 3.1
Michał Majchrowicz� 1.10.2014 09:06Usunięto: Rysunek 3.2
16
zastosowano specjalny bufor dla danych pomiarowych oraz opracowano algorytmy
zapewniające jego obsługę. Niemniej jednak nie we wszystkich algorytmach bufor ten będzie
wykorzystywany, na przykład nie będzie używany dla algorytmu LBP.
Rysunek 3.2 - Implementacja algorytmu Landwebera w systemie rozproszonym.
17
Przeprowadzone badania nad algorytmem LBP wykazały, iż może on być znacznie
przyspieszony poprzez wykorzystanie systemu rozproszonego. Pomiary czasu obliczeń dla
algorytmu LBP wykonano dla czterech przypadków:
• Obliczenia wykonywane na jednym lokalnym komputerze - 1
• Obliczenia przeprowadzone w środowisku rozproszonym, w którego skład wchodzą
dwa identyczne komputery - 2
• Obliczenia wykonywane na procesorach klasycznych (CPU) z wykorzystaniem
czterech maszyn - 3
• Obliczenia wykonane z wykorzystaniem kart graficznych na czterech komputerach
podłączonych do system Xgrid – 4
Na rysunku 3.3 przedstawiono wyniki przeprowadzonych testów.
Rysunek 3.3 - Czas obliczeń dla algorytmu LBP wykonywanego na czterech różnych
systemach komputerowych.
Pomiary czasu obliczeń dla algorytmu LBP przeprowadzone z wykorzystaniem
opracowanego systemu wykorzystującego środowisko Xgrid wykazały znaczący wzrost
wydajności, jaki może być uzyskany dzięki zastosowaniu opisywanej architektury [Rysunek
3.3]. Jak można zauważyć przeprowadzenie obliczeń w środowisku rozproszonym, a
szczególnie wykorzystanie do tego celu komputerów wyposażonych w karty graficzne,
Michał Majchrowicz� 1.10.2014 09:06Usunięto: 3.3
Michał Majchrowicz� 1.10.2014 09:06Usunięto: Rysunek 3.3
18
znacząco przyspieszyło czas rekonstrukcji obrazu w elektrycznej tomografii pojemnościowej
(Majchrowicz, Kapusta i inni, 2010a). Niemniej jednak uzyskane wyniki wskazywały na
potrzebę opracowania autorskiego systemu, który nie wykorzystywałby platformy Xgrid jako
medium transmisji.
4 System KISDC
Architektura projektowanego systemu zapewni bardzo dużą elastyczność w wyborze
sposobu wykonywania obliczeń, który będzie mógł być zmodyfikowany w dowolnym
momencie. Aby to osiągnąć niezbędne jest zastosowanie w systemie struktury warstwowej
[Rysunek 4.1]. Ważnym aspektem projektowanego systemu jest duży poziom abstrakcji
poszczególnych jego części. Najniższa warstwa systemu składa się z wielu niezależnych
wtyczek (ang. plugins), które mogą być przygotowane przez osoby, które nie muszą mieć ze
sobą kontaktu.
Rysunek 4.1 - Schemat warstwowy systemu KISDC
Najwyższą warstwą systemu jest warstwa sieciowa KISDC-NET. Jest ona zbudowana
całkowicie niezależnie od pozostałych warstw. Dzięki takiemu podejściu w systemie możliwe
jest wykorzystanie zarówno platformy Xgrid (jedynie jako warstwy sieciowej) jak i
Michał Majchrowicz� 1.10.2014 09:06Usunięto: Rysunek 4.1
19
autorskiego rozwiązania opartego o protokół HTTP. Zapewnia to dużą elastyczność i
uniwersalność systemu.
Przy projektowaniu systemu rozproszonego można skorzystać z istniejącego protokołu
sieciowego lub też opracować własny. W drugim przypadku do momentu opracowania całego
protokołu i jego przetestowania nie jest możliwe określenie, czy jego wydajność będzie
lepsza od „wzorca”, czy gorsza. Jest to więc podejście raczej inżynierskie, niż naukowe. W
przypadku wykorzystania istniejących protokołów możliwe jest ich wcześniejsze
przetestowanie i wybranie optymalnego rozwiązania. Takie też podejście zostało wybrane
jako docelowe przy projektowaniu opracowywanego systemu.
W celu opracowania warstwy KISDC-NET konieczne było opracowanie swego
rodzaju charakterystyki sieciowej opracowanego wcześniej rozwiązania i porównanie go z
innymi protokołami dystrybucji danych: HTTP (ang. Hypertext Transfer Protocol), FTP (ang.
File Transfer Protocol) i SMB (ang. Server Message Block).
Rysunek 4.2 - Porównanie średnich czasów transmisji danych dla różnych protokołów sieciowych
Z uzyskanych wyników [Rysunek 4.2] wyraźnie widać, że wykorzystanie każdego ze
sprawdzanych protokołów pozwala na uzyskanie krótszego czasu transmisji danych niż w
rozwiązaniu opartym o środowisko Xgrid. Choć wyniki uzyskane przy zastosowaniu
Michał Majchrowicz� 1.10.2014 09:06Usunięto: Rysunek 4.2
20
protokołu FTP okazały się bardzo dobre, to niemniej jednak najlepsze rezultaty można
osiągnąć wykorzystując jako medium transmisji protokół HTTP.
W rezultacie zaprojektowany została wersja KISDC-NET, w której jako medium
transmisji wykorzystywany jest protokół HTTP (Fielding i inni, 1999). W systemie
wykorzystana została również bezstanowość tego protokołu. Pozwoliła ona na
uniezależnienie procesu rekonstrukcji obrazu w elektrycznej tomografii pojemnościowej 3D
od ilości węzłów w systemie. W zaprojektowanym systemie do serwera wykonywane są dwa
rodzaje zapytań: GET [Rysunek 4.3] i POST [Rysunek 4.4].
Rysunek 4.3 - Schemat komunikacji sieciowej z wykorzystaniem warstwy KISDC-NET
wykorzystującej protokół HTTP w momencie rozpoczęcia procesu rekonstrukcji czterech
kolejnych klatek obrazu w Elektrycznej Tomografii Pojemnościowej
Gdy rozpoczyna się proces rekonstrukcji klienci wysyłają zapytanie GET do serwera,
który każdemu z nich przesyła odpowiedni wektor danych pomiarowych C [Rysunek 4.3].
Niemniej jednak jeśli proces rekonstrukcji obrazu jest już realizowany przez określoną liczbę
klientów, a kolejny węzeł podłącza się do systemu to klient ten wykonuje zapytanie GET i w
ten sposób informuje serwer o możliwości przetworzenia przez niego porcji danych. W
odpowiedzi przesyłany jest wektor pojemności C, który zostanie wykorzystany do
Michał Majchrowicz� 1.10.2014 09:06Usunięto: Rysunek 4.3Michał Majchrowicz� 1.10.2014 09:06Usunięto: Rysunek 4.4
Michał Majchrowicz� 1.10.2014 09:06Usunięto: Rysunek 4.3
21
rekonstrukcji ramki obrazu. Po jej zakończeniu węzły przesyłają wyniki do serwera za
pomocą zapytania POST, a w odpowiedzi serwer przesyła kolejną porcję danych [Rysunek
4.4]. Dzięki takiej konfiguracji możliwa jest dwukierunkowa komunikacja (zarówno
odebranie zrekonstruowanej ramki, jak i przesłanie kolejnych wyników pomiaru C)
wykorzystując jedno zapytanie HTTP.
Rysunek 4.4 - Schemat komunikacji sieciowej z wykorzystaniem warstwy KISDC-
NET wykorzystującej protokół HTTP w momencie rozpoczęcia procesu rekonstrukcji
czterech kolejnych klatek obrazu w Elektrycznej Tomografii Pojemnościowej
W przedstawionym na rysunku 4.4 cztery wykorzystywane w systemie węzły zakończyły
rekonstrukcję klatek o kolejnych indeksach (i, j, k i l). Po ich odebraniu serwer przesyła do
rekonstrukcji wektory danych pomiarowych C indeksach (l+1, l+2, l+3 i l+4). Niemniej
jednak nie ma żadnej pewności, iż ich kolejność będzie taka sama, jak przesłanych przez
klientów klatek obrazu (i, j, k i l). Serwer dokonuje dynamicznie oceny wydajności węzłów i
dobiera numery kolejnych wektorów pomiarowych w zależności od szybkości rekonstrukcji
poprzednich. W rezultacie wiadomo tylko, że węzeł dostanie jeden z czterech kolejnych
wektorów pomiarowych. Dlatego też, by nie sugerować, iż wektory danych pomiarowych
przesyłane są w takiej samej kolejności, co zrekonstruowane klatki na rysunku 4.4 zamiast
kolejnych liter alfabetu użyte zostały indeksy ilustrujące, iż system wysyła jedynie cztery
Michał Majchrowicz� 1.10.2014 09:06Usunięto: Rysunek 4.4
Michał Majchrowicz� 1.10.2014 09:06Usunięto: 4.4
Michał Majchrowicz� 1.10.2014 09:06Usunięto: 4.4
22
kolejne wektory danych pomiarowych o nie ustalonej z góry kolejności indeksowania (stąd
indeksy l+a, l+b, l+c i l+d). Przedstawione rozwiązanie zostało wykorzystane
w rozproszonym, iteracyjnym algorytmie Landwebera wykorzystującym buforowanie ramek
[Rysunek 4.5].
Rysunek 4.5. Schemat rozproszonego, iteracyjnego algorytmu Landwebera wykorzystującego
buforowanie ramek.
Michał Majchrowicz� 1.10.2014 09:06Usunięto: Rysunek 4.5
23
Rysunek 4.6. Porównanie czasu rekonstrukcji obrazu w systemach Xgrid i KISDC
dla konfiguracji z dwoma komputerami.
Dla tak opracowanego środowiska przeprowadzone zostały szczegółowe badania
wydajności platformy Xgrid w stosunku do systemu KISDC. Przeprowadzone zostały testy
dla konfiguracji z dwoma węzłami o dużej mocy obliczeniowej, a wyniki zostały
przedstawione na rysunku 4.6. Kolorem żółtym oznaczony został czas obliczeń (taki sam dla
obu systemów), niebieskim czas przesyłania danych w systemie KISDC, a pomarańczowym
czas przesyłania danych w systemie Xgrid. Dla każdej z badanych konfiguracji uzyskano
zwiększenie prędkości rekonstrukcji obrazu wyrażonej w liczbie rekonstruowanych klatek na
sekundę. Najbardziej znaczące przyspieszenie uzyskano dla wektora obrazu o rozmiarze
48 KiB i 96 KiB.
W celu sprawdzenia wydajności środowiska KISDC opracowana została również
wersja rozproszonego algorytmu iteracyjnego Landwebera nie wymagająca buforowania
ramek [Rysunek 4.7]. Michał Majchrowicz� 1.10.2014 09:06Usunięto: Rysunek 4.7
24
Rysunek 4.7. Schemat rozproszonego algorytmu Landwebera
W tej wersji algorytmu Landwebera dane tomograficzne przesyłane są pomiędzy
węzłami w każdej iteracji. Taki algorytm ma pewne wady (np. konieczność wymiany ramek
w każdej iteracji) i w przypadku infrastruktury sieciowej dostępnej w Instytucie Informatyki
Stosowanej nie pozwala na osiągnięcie tak dobrych wyników, jak wersja tego algorytmu
wykorzystująca buforowanie. Niemniej jednak są już na rynku dostępne rozwiązania
sieciowe, w których czas opóźnień zostały znacznie zredukowane, a prędkość przesyłania
danych jest wielokrotnie większa niż wykorzystywana na stanowisku badawczym. W
rezultacie w niektórych konfiguracjach algorytm ten może pozwolić na uzyskanie lepszych
rezultatów. Kluczowym aspektem rozproszonego algorytmu Landwebera jest algorytm
rozpraszania danych i obliczeń [Rysunek 4.8]. Michał Majchrowicz� 1.10.2014 09:06Usunięto: Rysunek 4.8
26
Algorytm rozpraszania danych i obliczeń dokonuje podziału danych i zlecenia
wykonania obliczeń pomiędzy węzły. Podział ten dokonuje się w oparciu o tablice
współczynników, która ustawiana jest na etapie konfigurowania środowiska przez algorytm
generowa współczynników podziału [Rysunek 4.9].
Rysunek 4.9. Schemat algorytmu generowania współczynników podziału
Michał Majchrowicz� 1.10.2014 09:06Usunięto: Rysunek 4.9
27
Przeprowadzone zostały również badania wydajności rozproszonego iteracyjnego
algorytmu Landwebera bez buforowania ramek przy wykorzystaniu systemu Xgrid oraz
systemu KISDC [Rysunek 4.10].
Rysunek 4.10. Porównanie czasu rekonstrukcji obrazu przy wykorzystaniu rozproszonego
iteracyjnego algorytmu Landwebera bez buforowania ramek
w systemach Xgrid i KISDC
W przypadku rozproszonego iteracyjnego algorytmu Landwebera zysk wynikający z
zastępienia systemu Xgrid system KISDC jet wielokrotnie większy niż w przypadku
algorytmu iteracyjnego Landwebera wykorzystującego buforowanie ramek. Co więcej zysk
ten rośnie wraz z ze wzrostem rozmiaru wektora obrazu.
5 Podsumowanie Celem pracy było opracowanie rozwiązań umożliwiających przyspieszenie
rekonstrukcji obrazu w Elektrycznej Tomografii Pojemnościowej poprzez wykorzystanie
Michał Majchrowicz� 1.10.2014 09:06Usunięto: Rysunek 4.10
28
heterogenicznych systemów rozproszonych. Powyższy cel osiągnięto poprzez opracowanie
dwóch systemów rozproszonych:
1. Systemu rozproszonego wykorzystującego platformę Xgrid jako medium
transmisji
2. Autorskiego systemu do obliczeń rozproszonych – KISDC (KIS Distributed
Computing)
W rozprawie przeprowadzono szczegółową analizę wydajności obu systemów.
Wykazany został również znaczący wzrost szybkości procesu rekonstrukcji obrazów w ECT
mierzony w liczbie rekonstruowanych klatek na sekundę. Opracowane algorytmy zostały
przetestowane i zweryfikowane z wykorzystaniem danych pomiarowych uzyskanych w
Laboratorium Tomografii Procesowej Instytutu Informatyki Stosowanej im. prof.
Tomasza Dyakowskiego.
Pierwszym etapem prowadzonych prac była analiza środowiska Xgrid pod kątem
możliwości jego wykorzystania do przyspieszenia rekonstrukcji obrazu w Elektrycznej
Tomografii Pojemnościowej. Pozwoliło to na dobranie optymalnych ustawień
wykorzystywanego medium transmisji do najwydajniejszego przesyłania danych w systemie i
wykorzystania ich do przyspieszenia rekonstrukcji obrazu w ECT.
W oparciu o uzyskane wyniki badań opracowane zostały założenia projektowe do
budowy rozproszonego środowiska obliczeń heterogenicznych, które wykorzystuje platformę
Xgrid jako medium transmisji. System ten zaprojektowano pod kątem wykorzystania go do
przyspieszenia rekonstrukcji obrazu w Elektrycznej Tomografii Pojemnościowej, co zostało
opisane w rozdziale 3. Badania prowadzone były w następujących konfiguracjach: z jednym,
dwoma, czterema i ośmioma komputerami dla algorytmu LBP oraz dla algorytmu
Landwebera.
W oparciu o wyniki badań opisanych we wcześniejszych rodziałach i analizę
wydajności systemu opartego o platformę Xgrid stwierdzono, iż możliwe jest dalsze
przyspieszenie rekonstrukcji obrazu w Elektrycznej Tomografii Pojemnościowej, ale będzie
to wymagało opracowania autorskiego środowiska rozproszonego, które nie będzie
wykorzystywało platformy Xgrid jako medium transmisji. W rezultacie opracowano
założenia projektowe do budowy autorskiego systemu, w którym zastosowano autorskie
protokoły komunikacji sieciowej i inne rozwiązania sieciowe, które pozwoliły na
29
zoptymalizowanie rozproszonego środowiska pod kątem przetwarzania danych
tomograficznych.
Opracowano autorskie środowisko do obliczeń rozproszonych, które nie wykorzystuje
platformy Xgrid, co zostało opisane w rozdziale 4. Rozwiązanie to umożliwiło dalsze
przyspieszenie procesu rekonstrukcji obrazu w Elektrycznej Tomografii Pojemnościowej.
Badania systemu KISDC przeprowadzono dla konfiguracji z dwoma, czterema i ośmioma
komputerami i wektora danych pomiarowych C (2 KiB) oraz dziesięciu różnych wielkości
wektora obrazu ԑk (48 KiB, 96 KiB, 192 KiB, 288 KiB, 384 KiB, 480 KiB, 576 KiB,
672 KiB, 768 KiB i 3072 KiB). W każdej z badanych konfiguracji uzyskano wzrost ilości
rekonstruowanych klatek w ciągu sekundy. Przykładowo dla konfiguracji z dwoma
komputerami o dużej mocy obliczeniowej i wektora obrazu o rozmiarze 48 KiB uzyskano
wzrost ilości rekonstruowanych klatek na sekundę z 4 do niecałych 10, co jest prawie 2,5
krotnym wzrostem prędkości rekonstrukcji obrazu w Elektrycznej Tomografii
Pojemnościowej względem wyników uzyskanych z w wykorzystaniem systemu
rozproszonego wykorzystującego platformę Xgrid.
W pracy wykazano iż opracowanie obu wersji systemu rozproszonego pozwoliło
na przyspieszenie procesu rekonstrukcji obrazu w Elektrycznej Tomografii Procesowej,
co stanowi potwierdzenie postawionej na wstępie tezy.
Część opisanych w tej rozprawie prac została przeprowadzona w ramach grantu pod
kierownictwem dr inż. Roberta Banasiaka. W grancie tym dane pomiarowe były pozyskiwane
z półprzemysłowej instalacji badawczej w Laboratorium Tomografii Procesowej Instytutu
Informatyki Stosowanej. Opracowany w ramach grantu „System trójwymiarowej elektrycznej
tomografii pojemnościowej dla potrzeb wyznaczania udziału faz oraz identyfikacji struktur w
przepływach typu gaz – ciecz w rurociągach poziomych i pionowych” został nagrodzony
licznymi nagrodami i wyróżnieniami, w tym między innymi:
• Złoty medal z wyróżnieniem na International Warsaw Invention Show IWIS 2012
• Nagroda za „międzynarodowe osiągnięcie wynalazcze” na XX Giełdzie Wynalazków w Warszawie 5-7 luty 2013
• Dyplom Ministra Nauki i Szkolnictwa Wyższego, Warszawa, luty 2013
30
Wyniki przedstawionych prac autor rozprawy publikował m.in. w czasopismach Przegląd
Elektrotechniczny, Image Processing & Communications, AUTOMATYKA oraz w książce
wydawnictwa Springer z serii Advances in Intelligent Systems and Computing. Postępy w
rozprawie były również regularne prezentowane na konferencjach naukowych o zasięgu
krajowym i międzynarodowym, m.in.: International Interdisciplinary PhD Workshop,
International Interdisciplinary Technical Conference of Young Scientists, XVII International
Conference on Information Technology Systems oraz Przetwarzanie i analiza sygnałów w
systemach wizji i sterowania.
6 Literatura
1. (Apple, 2007) Apple (2007): Xgrid OS X Manual Page. (dokument elektroniczny). https://developer.apple.com/library/mac/#documentation/Darwin/Reference/ManPages/man1/xgrid.1.html.
2. (Avery i inni, 2001) Avery, P., Foster, I., Gardner, R., Newman, H., Szalay, A. (2001): An International Virtual-Data Grid Laboratory for Data Intensive Science. (dokument elektroniczny). http://www.griphyn.org.
3. (Banasiak i inni, 2009) Banasiak, R., Wajman, R., Betiuk, J., Soleimani, M. (2009): Feasibility study of dielectric permittivity inspection using a 3D capacitance CT method. NDT&E International, 42(4), Amsterdam, 2009, Elsevier, s. 316-322.
4. (Banasiak i inni, 2013) Banasiak, R., Wajman, R., Fidos, H., Jaworski, T., Fiderek, P., Kapusta, P., Majchrowicz, M., Sankowski, D. (2013): Fusion of three-dimensional electrical capacitance tomography and fuzzy logic inference for phases fraction and flow structures identification in horizontal and vertical gas-liquid flow pipelines. 7th World Congress on Industrial Process Tomography, Kraków, 2013, s. 818-827.
5. (Banasiak i inni, 2010) Banasiak, R., Wajman, R., Sankowski, D., Soleimani, M. (2010): Three-dimensional nonlinear inversion of electrical capacitance tomography data using a complete sensor model. Progress In Electromagnetics Research PIER, 100, Hong Kong, 2010, EMW Publishing, s. 219-234.
6. (Banasiak i inni, 2008) Banasiak, R., Wajman, R., Soleimani, M. (2008): System tomografu pojemnościowego do nieinwazyjnej trójwymiarowej wizualizacji czasu rzeczywistego. Zeszyty Naukowe AGH - Automatyka, Tom 12, Zeszyt 3, Kraków, 2008, Wydawnictwa AGH, s. 871 - 878.
7. (Carzaniga i inni, 1999a) Carzaniga, A., Rosenblum, D., Wolf, A. (1999a): Challenges for Distributed Event Services: Scalability vs. Expressiveness. Proceedings of the ICSE’99 Workshop on Engineering Distributed Objects (EDO’99), Los Angeles, CA, 1999a.
8. (Carzaniga i inni, 1999b) Carzaniga, A., Rosenblum, D., Wolf, A. (1999b): Interfaces and Algorithms for a Wide-Area Event Notification Service. Technical Report CU-CS-888-99, Department of Computer Science, University of Colorado.
9. (Casanova i inni, 2000) Casanova, H., Legrand, A., Zagorodnov, D., Berman, F. (2000): Heuristics for Scheduling Parameter Sweep Applications in Grid Environments.
31
Proceedings of the 9th Heterogeneous Computing Workshop (HCW’00), Waszyngton, 2000, IEEE Computer Society, s. 349–363.
10. (Chaniecki i inni, 2006) Chaniecki, Z., Dyakowski, T., Niedostatkiewicz, M., Dominik, S. (2006): Application of Electrical Capacitance Tomography for Bulk Solids Flow Analysis in Silos. Particle & Particle Systems Characterization, 23, 2006, s. 3-4.
11. (Chen i inni, 2002) Chen, Y., Katz, R., Kubiatowicz, J. (2002): Dynamic Replica Placement for Scalable Content Delivery. Proceedings of the First International Workshop on Peer-to-Peer Systems (IPTPS '01), Londyn, 2002, Springer-Verlag, s. 306-318.
12. (Chervenak i inni, 2000) Chervenak, A., Foster, I., Kesselman, C., Salisbury, C., Tuecke, S. (2000): The Data Grid: Towards and Architecture for the Distributed Management and Analysis of Large Scientific Data Sets. Journal of Network and Computer Applications, 23(3), Amsterdam, 2000, Elsevier Ltd, s. 187–200.
13. (Cugola i inni, 1998) Cugola, G., Di Nitto, E., Fuggetta, A. (1998): Exploiting an Event-Based Infrastructure to Develop Complex Distributed Systems. Proceedings of the 20th International Conference on Software Engineering (ICSE’98), Waszyngton, DC, 1998, IEEE Computer Society, s. 261-270.
14. (Czajkowski i inni, 2001) Czajkowski, K., Fitzgerald, S., Foster, I., Kesselman, C. (2001): Grid Information Services for Distributed Resource Sharing. Proceedings of the 10th IEEE International Symposium on High Performance Distributed Computing (HPDC-10), San Francisco, CA, 2001, IEEE Computer Society, s. 181-194.
15. (Czajkowski i inni, 2002) Czajkowski, K., Foster, I., Kesselman, C., Sanger, V., Tuecke, S. (2002): SNAP: A Protocol for Negociating Service Level Agreements and Coordinating Resource Management in Distributed Systems. Proceedings of the 8th Workshop on Job scheduling Strategies for Parallel Processing, 2537, Londyn, 2002, Springer-Verlag, s. 153-183.
16. (Fielding i inni, 1999) Fielding, R., Gettys, J., Mogul, J., Frystyk, H., Masinter, L., Leach, P., Berners-Lee, T. (1999): Hypertext Transfer Protocol -- HTTP/1.1. Request For Comments (RFC), 1999, RFC Editor.
17. (Fitzgerald i inni, 1997) Fitzgerald, S., Foster, I., Kesselman, C., Laszewski, G.v., Smith, W., Tuecke, S.,. (1997): A Directory Service for Configuring High–Performance Distributed Computations. Proceedings of the 6th IEEE International Symposium on High Performance Distributed Computing (HPDC-6), Waszyngton, DC, 1997, IEEE Computer Society, s. 365-375.
18. (Foster i Kesselman, 1999) Foster, I., Kesselman, C. (1999): The Grid: Blueprint for a New Computing Infrastructur. San Francisco, USA: Morgan Kaufmann Publishers, Inc.
19. (Grudzień i Romanowski, 2004) Grudzień, K., Romanowski, A. (2004): Wizualizacja i parametryzacja przepływu materiałów sypkich w hopperach. Zeszyty Naukowe AGH, 2004,.
20. (Grudzień i inni, 2006) Grudzień, K., Romanowski, A., Aykroyd, R.G., Williams, R.A. (2006): Advanced Statistical Analysis as a Novel Tool to Pneumatic Conveying Monitoring and Control Strategy Development. Particle & Particle Systems Characterization, 23, 2006, s. 289-296.
32
21. (Huang i inni, 1988) Huang, S.M., Plaskowski, A., Xie, C.G., Beck, M.S. (1988): Capacitance-based tomographic flow imaging system. Electronics Letters, 24 (7), 1988, s. 418–419.
22. (IEC 60027-2, 2005-08) IEC 60027-2 (2005-08): International Electrotechnical Commission, Letter symbols to be used in electrical technology. Part 2 Telecommunications and electronics, 2005-08, s. 1-141.
23. (Isaksen i inni, 1994) Isaksen, O., Dico, A.S., Hammer, E. (1994): A capacitance-based tomography system for interface measurement in separation vessels. Measurement Science and Technology, 1994, IOP Publishing Ltd, s. 1262-1271.
24. (ISO/IEC 80000-13, 2008) ISO/IEC 80000-13 (2008): International Organization for Standardization, International Electrotechnical Commission,Standards and projects under the direct responsibility of ISO/TC 12 Secretariat. Quantities and units -- Part 13: Information science and technology, 2008, s. 1-34.
25. (Jaworski i Dyakowski, 2001) Jaworski, A.J., Dyakowski, T. (2001): Application of electrical capacitance tomography for measurement of gas–solid flow characteristics in a pneumatic conveying system. Measurement Science and Technology, 12, 2001, IOP Publishing Ltd, s. 1109–1119.
26. (Jaworski i Dyakowski, 2005) Jaworski, A.J., Dyakowski, T. (2005): Measurement of oil-water separation dynamics in primary separation systems using distributed capacitance sensors. Flow Measurement and Instrumentation, 16, 2005, Elsevier, s. 113-127.
27. (Kamath i inni, 2013) Kamath, G., Lei, S., Wen-Zhan, S. (2013): Component-Average Based Distributed Seismic Tomography in Sensor Networks. Distributed Computing in Sensor Systems (DCOSS), 2013 IEEE International Conference on Distributed Computing in Sensor Systems, 2013, s. 88 - 95.
28. (Kapusta i inni, 2010) Kapusta, P., Banasiak, R., Sankowski, D. (2010): Efficient computation of linearized inverse problem for 3D electrical capacitance tomography using GPU and CUDA technology. XVII International Conference on Information Technology Systems, (dokument elektroniczny). Łódź, 2010, s. 1-18.
29. (Kapusta, Majchrowicz i inni, 2010) Kapusta, P., Majchrowicz , M., Banasiak, R. (2010): Trudności w rekonstrukcji obrazu w czasie rzeczywistym na podstawie danych uzyskanych z pomocą elektrycznej tomografii pojemnościowej w systemach równoległych i rozproszonych. Metody wytwarzania i zastosowania systemów czasu rzeczywistego, Warszawa, Wydawnictwo Komunikacji i Łączności Sp. z o.o., s. 309-320.
30. (Kapusta i Majchrowicz, 2010a) Kapusta, P., Majchrowicz, M. (2010a): Combining parallel and distributed computing on heterogeneous systems to accelerate image reconstruction in Electrical Capacitance Tomography. III International Interdisciplinary Technical Conference Of Young Scientists, Poznań, 2010a, Uczelniany Samorząd Doktorantów Politechniki Poznańskiej, s. 199-202.
31. (Kapusta, Majchrowicz i inni, 2011) Kapusta, P., Majchrowicz, M., Sankowski, D. (2011): Heterogeneous Multi-Node, Multi-GPU system for accelerating image reconstruction in 3D Electrical Capacitance Tomography. II Ogólnopolskie Seminarium "Forum Innowacji Młodych Badaczy", (dokument elektroniczny). Łódź, 2011, s. 1-4.
33
32. (Kapusta, Majchrowicz i inni, 2013a) Kapusta, P., Majchrowicz, M., Sankowski, D., Banasiak, R. (2013a): Application of GPU parallel computing for acceleration of Finite Element Method based 3D reconstruction algorithms in Electrical Capacitance Tomography. Image Processing & Communication,
33. (Li i inni, 2013) Li, Y., Yang, W., Xie, C.-g., Huang, S., Wu, Z., Tsamakis, D., Lenn, C. (2013): Gas/oil/water flow measurement by electrical capacitance tomography. Measurement Science and Technology, 12 24, 2013, IOP Publishing Ltd, s. 83 - 88.
34. (Müller i inni, 2005) Müller, T.O., Ruiter, N.V., Stotzka, R., Beller, M., Eppler, W., Gemmeke, H. (2005): Ultrasound Computer Tomography, Distributed Volume Reconstruction and GRID Computing. Bildverarbeitung für die Medizin 2005, 13. – 15., Heidelberg, 2005, Springer Berlin Heidelberg, s. 420-424.
35. (Majchrowicz i Kapusta, 2011a) Majchrowicz, M., Kapusta, P. (2011a): Accelerating Image reconstruction algorithms in Electrical Capacitance Tomography using Multi-GPU system. Advanced Numerical Modelling, International Interdisciplinary PhD Workshop, Warszawa, 2011a, Electrotechnical Institute, s. 47-49.
36. (Majchrowicz, Kapusta i inni, 2010a) Majchrowicz, M., Kapusta, P., Banasiak, R. (2010a): Applying parallel and distributed computing for image reconstruction in 3D Electrical Capacitance Tomography. Zeszyty Naukowe AGH - Automatyka, Tom 14, Zeszyt 3/2, Kraków, 2010a, Wydawnictwa AGH, s. 711-722.
37. (Majchrowicz, Kapusta i inni, 2010b) Majchrowicz, M., Kapusta, P., Sankowski, D. (2010b): Accelerating image reconstruction in Electrical Capacitance Tomography using OpenCL technology in heterogeneous systems. XVII International Conference on Information Technology Systems, (dokument elektroniczny). Polska, 2010b, s. 1-13.
38. (Majchrowicz, Kapusta i inni, 2012a) Majchrowicz, M., Kapusta, P., Wąs, Ł. (2012a): The examination of the speed of the PCA method using graphics cards and GPU Computing implementation of stabilization results factors in the method of principal components. II Wyjazdowa Sesja Naukowa Doktorantów Politechniki Łódzkiej, Rogów, 2012a, Politechnika Łódzka, s. s. 100-104.
39. (Majchrowicz, Kapusta i inni, 2012b) Majchrowicz, M., Kapusta, P., Wąs, Ł. (2012b): Przyspieszanie rekonstrukcji obrazu w elektrycznej tomografii pojemnościowej 3d z wykorzystaniem systemów multi-gpu. ICT Young 2012, Gdańsk, 2012b, Politechnika Gdańska, s. 1-5.
40. (Majchrowicz, Kapusta i inni, 2010c) Majchrowicz, M., Kapusta, P., Wąs, Ł. (2010c): Combining databases and parallel computing in distributed environments to accelerate image reconstruction and algorithm development in Electrical Capacitance Tomography. I Ogólnopolskie Seminarium "Forum Innowacji Młodych Badaczy", (dokument elektroniczny). Łódź, 2010c, s. 1-7.
41. (Matusiak, 2013) Matusiak, B. (2013): Algorytmy obliczeń równoległych z użyciem procesorów graficznych (GPU) do przetwarzania i wizualizacji danych pomiarowych z przemysłowych systemów tomograficznych. Łódź.
42. (Nawrocki, 2006) Nawrocki, W. (2006): Rozproszone Systemy Pomiarowe. Warszawa: Wydawnictwa Komunikacji i Łączności sp. z o.o.
34
43. (Olszewski i inni, 2006) Olszewski, T., Brzeski, P., Mirkowski, J., Plaskowski, A., Smolik, W., Szabatin, R. (2006): Modular Capacitance Tomograph. 4th International Symposium on Process Tomography in Warsaw, Warszawa, 2006, Politechnika Warszawska - Oficyna Wydawnicza, s. 151-156.
44. (Romanowski i Grudzień, 2004) Romanowski, A., Grudzień, K. (2004): Spatial and temporal modeling for electrical capacitance tomography. seminarium, 2004, University of Leeds.
45. (Romanowski i inni, 2006) Romanowski, A., Grudzień, K., Williams, R. (2006): Analysis and Interpretation of Hopper Flow Behaviour Using Electrical Capacitance Tomography. Particle & Particle Systems Characterization, 23, 2006, s. 297-305.
46. (Soleimani i Lionheart, 2005) Soleimani, M., Lionheart, W.R.B. (2005): Nonlinear image reconstruction in electrical capacitance tomography using experimental data. Measurement Science and Technology, 16, 2005, s. 1987–1996.
47. (Soleimani i inni, 2009) Soleimani, M., Mitchell, C.N., Banasiak, R., Wajman, R., Adler, A. (2009): Four-dimensional electrical capacitance tomography imaging using experimental data. Progress In Electromagnetics Research PIER, 90, Hong Kong, 2009, EMW Publishing, s. 171-186.
48. (Wajman i inni, 2006) Wajman, R., Banasiak, R., Mazurkiewicz, Ł., Dyakowski, T., Sankowski, D. (2006): Spatial imaging with 3D capacitance measurement. Measurement Science and Technology, 17, Bristol, 2006, IOP Publishing, s. 2113-2118.
49. (Yang i Peng, 2003) Yang, W., Peng, L. (2003): Image reconstruction algorithms for electrical capacitance tomography. Measurement Science and Technology, 14(1), Bristol, 2003, IOP Publishing, s. R1-R13.
50. (Zhijian i inni, 2010) Zhijian, L., Laurent, B., Banasiak, R., Sankowski, D. (2010): Effectiveness of rotatable sensor to improve image accuracy of ECT system. Flow Measurement And Instrumentation, 21, Amsterdam, 2010, Elsevier, s. 219-227.