Professional Documents
Culture Documents
σ {v 1 , v 2 , … . v n }={σ v 1 ,σ v 2 , … .. σ v n } (1.45)
Përkufizim: Bashkësia e të gjitha vargjeve me n simbole ku bën pjesë dhe vargu 0={0, 0, 0,….0}
quhet hapësirë vektoriale dhe shënohet me v n.
Përkufizim. Një bashkësi vektorësh thuhet se është linearisht e varur atëherë dhe vetëm atëherë
kur ekzistojnë skalarët C1, C2,…Cn jo të gjithë zero, të tillë që:
C1 V1 + C2 V2 + ….. Cn Vn = 0 Ci = 0, 1. (1.47)
Përkufizim: Një bashkësi vektorësh përcakton një hapësirë vektoriale në qoftë se çdo vektor në
hapësirën vektoriale është i barabartë me një kombinim linear të vektorëve të bashkësisë.
Shembull: Bashkësia e mëposhtme e vektorëve:
V 1 = (1 0 0 )
V 2= (0 1 0 )
V 3 = (0 0 1 )
Është linearisht e pavarur. Çdo vektor i hapësirës V 3 është një kombinim linear i këtyre
vektorëve. Kështu V 1 , V 2 ,V 3 përcaktojnë hapësirën vektoriale V 3.
Në një hapësirë vektoriale apo nënhapësirë ekziston të paktën një bashkësi vektorësh linearisht të
pavarur që përcakton hapësirën. Kjo bashkësi quhet baza e hapësirës vektoriale. Numri i
vektorëve bazë quhet përmasë e hapësirës vektoriale.Hapësira vektoriale V σ është hapësirë e
përmasës σ që përcaktohet nga një bazë prej σ vektorësh linearisht të pavarur.
Në qoftë se σ < n dhe V 1 , V 2 ,V 3 jane k vektorë linearisht të pavarur atëherë të gjitha kombinimet
lineare të V 1 , V 2 ,V 3 ….Vk të formulës:
U= C1 V1 +C2 V2 +… Ck Vk
2. Matricat
[ ]
σ 11 ⋯ σ 1 n
G= ⋮ ⋱ ⋮ (1.48)
σk 1 ⋯ σkn
ku elementi gij është σ ose k. Çdo rradhë është një varg me n – bit. Në qoftë se k rradhët (k ≤ n)
janë k vargje linearisht të pavarura të Vn atëherë të gjithë kombinimet lineare të G formojnë një
hapësire përmasore të Vn që quhet hapësirë ndërradhore të G.
Produkti i dy vektorëve V = (v1, v2, …. vn) dhe U = (u1, u2, ……un) do të kryhet si më poshtë:
Ku shuma dhe shumëzimi janë operacione modulare. Kur V · U= 0 vektorët V dhe U quhen
ortogonalë.
3. Kodet lineare me grupe
Përkufizim: Kod me grupe do të quajmë kodin e formuar nga 2 k fjalë koduese me n bit sipas
skemës së mëposhtme:
Fig 1.12
Ku koduesi i kodon çdo mesazh me një fjalë koduese me k bit të cilat quhen simbole të
informacionit. Koduesi II çdo fjalë koduese me k bit i vë në korrespondencë një fjalë koduese me
n bit (n > k) që do ta quajmë dhe vektor të kodit.
Në qoftë se kodi me grupe nuk ka një fare strukture të veçantë, koduesi i II do të ishte mjaft
kompleks për k të mëdha, meqenëse do të duhej të memorizonte 2k fjalë koduese. Për këtë arsye
duhet të shikohet për kode të tilla që të mund të memorizohen më lehtë. Ne do të trajtojmë kode
me një strukturë të tillë që 2k vektorët e kodit të formojnë një hapësirë k përmasore të hapësirës
Vn. Me këtë strukturë të kodit kompleksiteti i koduesit reduktohet shumë.
Përkufizim: Një bashkësi prej 2k vargjesh me n bit quhet kod linear atëherë dhe vetëm atëherë
kur ajo është një nënhapësirë e hapësirës vektoriale Vn.
Shembull: Shqyrtojmë një kodues II që vendos marrëdhënien e mëposhtme ndërmjet fjalëve
koduese me k bit dhe atyre me n bit.
Meqenëse k =3 kemi 23=8 mesazhe të ndryshme të mundshme. Të gjitha fjalët koduese me n bit
janë të ndryshme. Shikohet lehtë se bashkësia e fjalëve koduese me n bit formon një nënhapësirë
3 përmasore të hapësirës vektoriale V6. Si rrjedhim ai është një kod linear.
4. Matricat gjeneruese
Për një hapësirë ρ k– përmasore të Vn është e mundur të gjendet një bashkësi me k vargje të
pavarur me n bit V1, V2,….Vk të tillë që çdo varg n – bitesh i ρ të jetë një kombinim linear i V 1,
V2,….Vk si më poshtë:
Duke u nisur nga ky fakt ne mund të përshkruajmë nje kod linear prej 2k fjalësh koduese me n-
bit me anë të një bashkësie prej k fjalësh koduese linearisht të pavarura. Organizojmë këto k
fjalë koduese të pavarura në një matricë ku çdo fjalë përbën një rresht.
[ ][ ]
V 1 v 11 v 12 ⋯ v 1 σ
G = V 2 = v 21 v 22 ⋮ ⋱ v 2 σ (1.51)
V K v k 1 vk 2 ⋯ vkσ
ku Vi = (vi1, vi2…..vin) për i= 1,2,….k. Le të jetë m =(m1, m2,….mk) një fjalë koduese me k bit.
Atëherë fjala korresponduese me m- bit jepet si më poshtë:
[]
V1
U = m · G = ( m1, m2,…..mk) · V 2 = m1 V1 + m2 V2 +….+mk Vk (1.52)
VK
Dmth fjala koduese me m – bit që i korrespondon asaj me k – bit është një kombinim linear i
rradhëve të G. Kështu rradhët e matricës G gjenerojnë një kod linear. Matricën G do ta quajmë
matricë gjeneruese të kodit. Kodi i gjeneruar më sipër quhet kod (n, k) dmth një grup prej k –
bitesh informative ndodhet në një fjalë koduese me n – bit për tu transmetuar në kanalin me
zhurma. Meqenëse kodi linear specifikohet plotësisht nga matrica gjeneruese e tij G atëherë
kapaciteti i nevojshëm i memorjes te koduesi II reduktohet shumë. Koduesi II ka vetëm k –
rradhët e G në vend të 2k fjalëve koduese me n bit. Përveç memorjes koduesi II duhet të ketë një
element logjik për të kryer kombinimet lineare të rradhëve të G.
Shembull. Kodi i dhënë në shembullin e mësipërm është një kod (6.3) me matricë gjeneruese:
[ ][ ]
V 1 100 110
G = V 2 ¿ 010 011
V3 001101
[]
V1
U = (101) V 2 = 1 V 1 + 0 V 2 + 1 V 3 = 1 (100 110 ¿ + 0 (010 011 ¿+1(001 101)=101011
V3
5. Kodet sistematike
Është e mundur që çdo fjalë koduese me k – bit (çdo grup mesazhi ) ta kodojmë në një fjalë
koduese me m – bit në mënyrë të tillë që k – bitet e para të jenë tamam ato të mesazhit dhe n- k
bitet e fundit të jenë bitet e tepërta që janë në funksion të biteve informative siç tregohet në
figurën 1.13.
k bit k n-k
Një kod i kësaj forme quhet sistematik. Bitet shtesë duhet të jenë të tilla që të japin mundësinë e
zbulimit dhe të korrigjimit të gabimeve të futura gjatë transmetimit në një kanal me zhurma. Tani
problem i kodimit është formimi i këtyre biteve të tepërta. Një kod linear sistematik (m, k) mund
të përcaktohet nga një matricë gjeneruese g (k, n) të formës së mëposhtme:
[ ]
1000 0 p 11 p 12 p 1 , n−k
0100 0 p 21 p 22 p 2 , n−k
G= ku pij= 0,1 (1.53)
0010 0 p 31 p 32 p 3 , n−k
0000 1 pk 1 pk 2 pk , n−k
Le të jetë I = (k, k) matrica njësi, P = (k, n-k) matrica e p ij. Matrica e kodit sistematik shkruhet
kështu:
G = (I ·P) (1.54)
Shqyrtojmë një grup mesazhi m= (m1, m2 …. mk). Duke përdorur matricën e mësipërme
gjeneruese fjala korresponduese koduese jepet:
ku ui= mi per i= 1, 2, ….k dhe UK+i= p1j m1 + p2j m2+….. +pkj mk për j= 1, 2, …..n-k
Pra k bitet e para të fjalës koduese U janë pikërisht bitet informative që duhet të transmetohen,
(n - k) bitet e fundit janë funksione lineare të biteve informative. Bitet e tepërta do ti quajmë bite
të kontrollit të çiftësisë së kodit. Ekuacionet (1.56) quhet ekuacionet e kontrollit të çiftësisë së
kodit.
Kështu që:
u5 = m1 + m2, u6 = m2 + m3
Për një kod linear në formë sistematike shkalla e ndërlikimit të koduesit mund të reduktohet
ende, meqenëse ai duhet të memorizojë vetëm k(n – k ) bit të matricës p ij në vend të k – n biteve
të matricës G.
6. Matrica e çiftësisë
[ ]
p11 p 12 p1 n−k
p
n+ k
k = p21 p 22 p2 , n−k … matricën që realizon rregullat e çiftësisë
pk 1 pk 2 pk , n−k
n−k
U I = [Uk+1, Uk+2……..U n] bitet e kontrollit
k
U I = [u1, u2…..uk]= ( m1, m2, mk) bitet e informacionit
U nI = (U kI , U n−k
I ) bitet e transmetuara
Shënojmë:
T
[ ]
n−k
n−k pk
H n =¿ n−k
¿
l n−k
Atëherë
Në këtë mënyrë mund të themi që U nI është një fjalë koduese e kodit të gjeneruar nga G, atëherë
dhe vetëm atëherë kur U nI HT= 0.
Matrica H quhet matrica e çiftësisë së kodit. Ekuacionet e çiftësisë (1.56) mund të merren
gjithashtu nga H. Me të vërtetë le të jetë U = (u1, u2, ….un) fjala koduese që i korrespondon
mesazhit m = ( m1, m2, …..mk) ku u1 = m1.
Meqenëse
U· HT = 0
= p1 i m1 + p2 i m2 +….. pki mk
për j = 1, 2, …. n-k që është po e njëjta bashkësi ekuacionesh si 1.56. Pra një kod linear mund
të specifikohet në mënyrë të vetme me anë të matricës gjeneruese ose me anë të matricës së
çiftësisë. Në projektimin e një kodi linear matrica P duhet të zgjidhet në mënyrë të tillë që kodi të
ketë aftësitë e dëshiruara korrigjuese.
Shqyrtojmë një kod linear (n, k) me matricë gjeneruese G dhe matricë çiftësie H. Le të jetë U një
fjalë koduese e transmetuar në një kanal me zhurma. Në marrje merret një fjalë koduese r që
është shuma e fjalës koduese origjinale U me vektorin (fjalën) e gabimit ε, dmth:
r=U+ε (1.63)
S= r ·HT (1.64)
quhet sindromë e r. Nga ekuacioni (1.62) sindroma është zero, në qoftë se r është fjalë koduese
dhe nuk është zero, në qoftë se nuk është fjalë koduese. Sindroma do të përdoret për zbulimin
dhe korrigjimin e gabimit. Nocionet e matricës së çiftësisë do i sqarojmë me një shembull.
[ ]
100110
G = 010011
001101
[ ]
101100
H= 110010
011001
[]
110
011
101
S = U· HT= (111000)· = (000)
100
010
011
Vargu (111001) nuk është fjalë koduese. Sindroma e këtij vektori është
[ ]
110
S = (111001)∙ 011 = (001)
101
7. Kodet e Hamingut
Shqyrtojmë një matricë çiftësie H me k – rradhë dhe 2k −1 kolona. Si kolona merren të gjitha
vargjet e mundshme me k – bit përveç vargut me të gjitha zero. Çdo dy kolona të matricës H janë
të ndryshme ndërmjet tyre. Meqenëse skalari i vetëm i ndryshëm nga 0 është 1 atëherë çdo
bashkësi prej 2 kolonash ështe linearisht e pavarur. Kodi që fitohet nga kjo matricë ka largësi 3
pra është i aftë të korrigjojë të gjitha gabimet njëfish. Fjalët e kodit kanë gjatësi 2 k-1 me k
simbole kontrolli, si rrjedhim2k -1 – k simbole informacioni.
Le të jetë U fjala koduese e transmetuar dhe U+ ajo e marrë ku e është vektori i gabimit njëfish.
Atëherë sindroma është:
(U + e) ∙ H T = U∙ H T + e∙ H T = e∙ H T
Meqenëse ε është një vektor me njësh të vetëm në pozicionin ``j`` që i përgjigjet gabimit,
sindroma e HT është tamam radha e itë e HT. në këtë mënyrë duke krahasuar sindromën me
matricën HT, gjejmë pozicionin e itë që i përgjigjet gabimit.. Korrigjimi bëhet duke
komplementuar bitin e itë. Në qoftë se si kolonë e i të të H përdorim paraqitjen binare të i–së
atëherë sindroma jep për çdo gabim njëfish, paraqitjen binare të pozicionit të gabimit. Kjo u
propozua nga Hamingu.
[ ]
0 0 0 1 1 1 1
H= 0 1 1 0 0 1 1
1 0 1 0 1 0 1
Në qoftë se bite kontrolli marrim të parin, të dytin dhe të katërtin, kodimi i mesazhit është i lehtë,
meqenëse secili prej tyre bën pjesë në njërin prej relacioneve të çiftësisë të përshkruar nga H. Për
të koduar simbolet e informacionit 1100 futen tri simbole kontrolli p1, p2 e p3 si më poshtë:
V = p1 p2 p3 100
të cilat përcaktohen nga relacionet (1.62)` e çiftësisë që gjenden duke u nisur nga:
V· HT = 0
[]
0 0 1
0 1 0
0 1 1
1
¿ ¿ p2 p3 100)· 1 0 0 =0
1 0 1
1 1 0
1 1 1
p3 + 1 = 0
p2 + 1 = 0
p1 + 1 + 1 = 0