You are on page 1of 16

ინფორმაციის თეორიის ძირითადი ცნებები

ინფორმაცია არის არამატერიალური ერთეული, რომლის დახმარებით, ნებისმიერი


სიზუსტით, შესაძლებელია რეალური (მატერიალური), ვირტუალური (შესაძლებელი).

სხვანაირად, ინფორმაცია არის ცნობები გარემოს, ობიექტების, მოვლენების და მათი


მდგომარეობის, თვისებების შესახებ, რაც ამცირებს მათ შესახებ გაურკვევლობას, ცოდნის
არასრულყოფილებას.

ინფორმაციის თეორია (კომუნიკაციის, კავშირის მათემატიკური თეორია) არის


გამოყენებითი მათემატიკის ნაწილი, სადაც ინფორმაციის ცნება აქსიომატიურად განსაზღვრა
დადგინდა თანაფარდობები მონაცემთა გადაცემის სისტემებისთვის.

ეს დარგი იყენებს ძირითადად ალბათობის თეორიის მათემატიკურ აპარატს და


მათემატიკურ სტატისტიკას.

ინფორმაციის თეორიის ძირითადი ნაწილებია - კოდირება (შეკუმშული

კოდირება) და არხის (ხმაურისადმი მდგრადი) კოდირება.

ინფორმაციის თეორია მჭიდროდაა დაკავშირებული კრიპტოგრაფიასთან და სხვა


დისციპლინებთან.

საკომუნიკაციო არხი არის ინფორმაციის გადაცემის საშუალება, რომელიც ხასიათდება


პირველ რიგში მისთვის შესაძლებელი მაქსიმალური სიჩქარით ინფორმაციის გადაცემა.

ხმაური არის შეფერხება, დაბრკოლება საკომუნიკაციო არხში ინფორმაციის გადაცემის დროს.

კოდირება არის დისკრეტული ინფორმაციის გარდაქმნა, ტრანსფორმაცია ერთ-ერთი ქვემოთ

გზების საშუალებით: დაშიფვრა, შეკუმშვა, ხმაურისგან დაცვა.

კომპიუტერული მეცნიერება ინფორმაციას განიხილავს, როგორც კონცეპტუალურად


ერთმანეთთან დაკავშირებულ ინფორმაციას, მონაცემებს, ცნებებს, რომლებიც ცვლის ჩვენს
წარმოდგენებს მოვლენისის ან ობიექტის შესახებ.

მონაცემები შეიძლება განიხილებოდეს როგორც თვისებები ან ჩაწერილი დაკვირვებები,


რომლებიც რაღაც მიზეზის გამო არ გამოიყენება, მაგრამ ინახება. მათი გამოჩენის
შემთხვევაში (გაურკვევლობის შესამცირებლად), მონაცემები გადაიქცევა ინფორმაციად.

ამრიგად, ინფორმაცია ახლად განვითარებული სფეროს კონტექსტში განისაზღვრება,


როგორც გაურკვევლობის მოხსნა გარკვეული აზრით. მაგალითად, განვიხილოთ

1
შეტყობინება ხის არსებობის შესახებ. მაგალითად, სურათზე დაფიქსირებულია ხეების
ფორმა, ფერი და შედარებითი ზომაც კი მშვენივრად ჩანს, მაგრამ არის ეს ინფორმაცია
საკმარისად ზუსტი? შედარებით. შეუსაბამობა გამოჩნდება მხოლოდ წერილობით ენაზე
მოწოდებულ დამატებით ინფორმაციასთან შედარებით. შეუზღუდავი ლექსიკური მარაგით,
ენა გვთავაზობს ბევრად უფრო ღრმა აღწერით ინფორმაციას, რომელიც არ ჩანს სურათზე,
მაგალითად, სად გაიზარდა ხე, ვის მიერ და რა ნიადაგზე. კომუნიკაციის სხვადასხვა
მეთოდი გულისხმობს განსხვავებებს გაურკვევლობაში.

ინფორმაციის თეორიის მამამ, MIT-ის მათემატიკოსმა კლოდ შენონმა ბრწყინვალედ


წარმოადგინა ლოგიკური მათემატიკური ხერხი კომუნიკაციის მეთოდებში ამ განსხვავების
გასაზომად: მან იგი განსაზღვრა, როგორც ენტროპია. ენტროპია ავსებს მათემატიკურ ხერხებს
მოუწესრიგებლობისა და გაურკვევლობის პრინციპებს შორის კავშირის გასაზომად.
ენტროპიის მაღალი დონე მიუთითებს ინფორმაციის გაურკვევლობის მაღალ დონეზე. ან
ფუნქციის უფრო მეტი შესაძლო მნიშვნელობებს შორის. სანამ ინფორმაციის გაზომვის
თანამედროვე ფორმულაზე გადავიდოდეთ, შევნიშნოთ, რომ 1920-იან წლებში, რალფ
ჰარტლიმ პირველი ფორმულა გამოიყვანა ამ მიმართულებით.

ადრეული ენტროპია არის გაურკვევლობის საზომი.

ინფორმაცია განისაზღვრება, როგორც გაურკვევლობის პრობლემის გადაჭრა: თუ რაიმეს


მნიშვნელობის დასადგენად კითხვები არ არის საჭირო, მაშინ მოწოდებული ინფორმაცია არ
არსებობს. ენტროპია პირდაპირ კავშირშია სისტემის ინფორმაციასთან. რაც უფრო მაღალია
ენტროპია, მით მეტი გაურკვევლობა ასოცირდება სიმბოლოს (რიცხვი, ასო და ა.შ.)
განმარტებასთან. ენტროპია, ან გაურკვევლობა, მათემატიკურად მაქსიმალურია, როდესაც
სიმბოლოს შეიძლება თანაბრად ჰქონდეს მრავალი მნიშვნელობა (თანაბარი განაწილება).
ენტროპიის უმარტივესი ერთეული არის სიმბოლო, რომელსაც თანაბრად შეუძლია მიიღოს
ორი მნიშვნელობიდან ერთი. მაგალითად, მონეტის აგდებას (დავარდა გერბზე ან
საფასურზე) აქვს ორი შესაძლო ვარიანტი (ორობითი თვისება).

2
გრაფიკზე y-ღერძზე ნაჩვენებია H(x), რაც აჩვენებს ორი შესაძლებლობის მქონე (ორობითი)
სიმბოლოს ენტროპიას. ენტროპია, ანუ გაურკვევლობა, არის მისი მაქსიმალური (1-ის ტოლი)
დიაგრამის შუაში. ამის ახსნა ინტუიციურია: როდესაც ჩვენ ავაგდეთ მონეტა, შედეგის
გაურკვევლობა ყველაზე დიდია მაშინ, როცა მონეტა ჰაერშია. შესაბამისად, ენტროპია
მინიმალურია (0-ის ტოლი) x-ღერძის მოპირდაპირე ბოლოებზე, როცა ზუსტად ვიცით ამ
ორობითი სიმბოლოს მნიშვნელობა. ამის გათვალისწინებით, თამამად შეიძლება ითქვას, რომ
მონეტების აგდება, კითხვები დიახ/არა, ბინარული რიცხვები (0 ან 1) მათემატიკურად
ეკვივალენტურია - ისინი ყველა წარმოდგენილია გრაფიკზე ინფორმაციის თეორიის
თვალსაზრისით.
სიმბოლოს ორობითი თვისებით, რომელსაც ეწოდება "ბიტი", არის ენტროპიის ძირითადი,
საბაზო ერთეული, რომელიც გამოიყენება ინფორმაციის თეორიაში.
თუ დავუბრუნდებით მონეტის აგდებას, შეგვიძლია ვთქვათ, რომ შედეგი მიიღება
პირველივე ცდაზე. ამ პრობლემის ენტროპია უდრის ერთს, რადგან პასუხი განისაზღვრება
ერთ ნაბიჯში.

უფრო რთული პრობლემების განხილვისას, პასუხის დარწმუნებით განსაზღვრისთვის


საჭირო იქნება ლოგიკური ცოდნის დამატებითი რაოდენობა. ახლა ჩვენ ვიცით, რომ ერთი
სიმბოლოს გადაცემისას უმარტივეს სიმბოლოს - ბიტს აქვს ერთის ტოლი ენტროპია.

რა მოხდება, თუ ჩვენ გავაგზავნით სამი სიმბოლოსგან შედგენილ შეტყობინებას? ვთქვათ,


გვინდა გავაგზავნოთ სამ სიმბოლოანი შეტყობინება სამი მონეტის აგდებიდან. შესაძლო
შეტყობინებების საერთო რაოდენობა ახლა არის რვა (2³), მაგრამ ამ შეტყობინების ენტროპია
არის სამი. გახსოვდეთ, რომ ენტროპია არ არის შესაძლო შეტყობინებების რაოდენობა, არამედ
კითხვების მინიმალური რაოდენობა, რომელიც საჭიროა შეტყობინების დასადგენად.

რა მოხდება, თუ ჩვენ გავაგზავნით შეტყობინებას, რომელიც ერთი არაორობითი


სიმბოლოსგან შედგება?

3
მაგალითად, გვინდა ერთი სიმბოლოს გაგზავნა ლათინური ანბანიდან. ეს ნიშნავს, რომ
სიმბოლო შეიძლება იყოს ოცდაექვსი ასოდან რომელიმე (1/26). რა იქნება ენტროპიის
მნიშვნელობა ამჯერად? ანუ რამდენ დიახ/არა კითხვას უნდა ვუპასუხოთ, რომ
განვსაზღვროთ, მაგალითად, ასო M ?

უმარტივესი გზაა, კითხვა დავსვათ ანბანური თანმიმდევრობით „არის X ეს ასო?“.


მაგალითად, „არის ეს ასო A? რაც შეეხება B-ს? ან C?…”. ამ მეთოდით ჩვენ გვჭირდება
საშუალოდ 13 დიახ/არა შეკითხვა (ან 13 ბიტი ენტროპია) ერთი სიმბოლოს დასადგენად.
თუმცა, ინფორმაციის გასაზომად, თქვენ გჭირდებათ უფრო ეფექტური გზა. ზემოაღწერილი
ძიებისგან განსხვავებით, ჩვენ ვისარგებლოთ ბინარული ძიების ალგორითმის კონცეფციით.
ასო M -ს ხელახლა ძიებისას ვკითხულობთ, არის თუ არა ასო, რომელსაც ვეძებთ ანბანის
პირველ ნახევარში? პასუხია- დიახ ან არა. შემდეგ, ჩვენ ვყოფთ დარჩენილ მასივს შუაზე და
ვკითხულობთ, ხვდება თუ არა სასურველი სიმბოლო პირველ 6 ასოში (A-F)? არა. და ასე
შემდეგ, სანამ არ ვიპოვით მას, რომელსაც ვეძებთ - M. გაითვალისწინეთ, რომ მნიშვნელობის
ძიების ეს გზა ბევრად უფრო ეფექტურია. საშუალოდ 13 დიახ/არა კითხვისგან განსხვავებით,
მეორე მეთოდით არასდროს დაგვჭირდება 5 კითხვაზე მეტი (ზოგჯერ მხოლოდ 4).

როგორც ეს დაკვირვება გვიჩვენებს, თეორიულად ენტროპიის რაოდენობა ორმაგდება


შეტყობინებების არეალში ყველა შესაძლო სიმბოლოზე. ამის საკმაოდ მარტივია
გამოთვალოთ ანბანური სიმბოლოების თარგმნის ყველაზე ეფექტური გზა თანაბარი
განაწილებისას:

ზემოთ მოყვანილი ფორმულა იძლევა ენტროპიის (4,7 ბიტი) სავარაუდო რაოდენობას,


რომელიც ასოცირდება ანბანის ერთი შემთხვევითი სიმბოლოს გაგზავნასთან. როგორც რალფ
ჰარტლიმ (1888-1970) დაასკვნა თავის ცნობილ სტატიაში „ინფორმაციის გადაცემა“:
რაც ჩვენ გავაკეთეთ არის ის, რომ ინფორმაციის პრაქტიკულ საზომად ავიღეთ შესაძლო
სიმბოლოების თანმიმდევრობის რაოდენობის ლოგარითმი.

ინფორმაციის ადრეული განმარტება ოდნავ განსხვავდებოდა. მან განსაზღვრა H


(ინფორმაცია), როგორც H = n log (s), სადაც H არის ინფორმაცია, n არის სიმბოლოების
რაოდენობა (ასოები, რიცხვები და ა.შ.) და s არის სხვადასხვა სიმბოლოს რაოდენობა,
რომლებიც ხელმისაწვდომია თითოეულ შერჩევაში (არსებითად, შეტყობინების არის
სიგრძე).
 ინფორმაციის თეორია გვაძლევს მეთოდს კომუნიკაციური მოვლენების
მოულოდნელობის რაოდენობრივად განსაზღვრისთვის.
 ენტროპია ან გაურკვევლობა არის სიმბოლოს მნიშვნელობის დასადგენად საჭირო
დიახ/არა კითხვების მინიმალური რაოდენობის საზომი.
 ბინარულ რიცხვს, ანუ ბიტს, აქვს ენტროპია 1 და, შესაბამისად, არის მათემატიკის ამ
სფეროს ძირითადი ერთეული.
 მიღებულია ადრეული ინფორმაციის ფუნქცია, რომელიც იღებს თანაბრად
განაწილებული სიმბოლოების მნიშვნელობებს.

4
აქამდე ჩვენ ვვარაუდობდით, რომ სიმბოლოთა ნაკრების თითოეული მნიშვნელობა
შემთხვევითია, დისკრეტულია, მაგრამ ეს მიზანშეწონილი გამარტივებაა. როგორც ვიცით,
რეალობა არაა ასეთი და სიმბოლოების მნიშვნელობები არ არის ეკვივალენტური.
მაგალითად, გამოვთვალოთ წინა წინადადებაში ასო "ე"-ების რაოდენობა. არის ეს
განაწილება თანაბარი - 1/33?

როდესაც სიმბოლოები შემთხვევითი არ არის - მარკოვის ჯაჭვები

1948 წელს, თანამედროვე ინფორმაციის თეორიის მამამ, კლოდ შენონმა, თავის ნაშრომში
„კომუნიკაციის მათემატიკური თეორია“, გამოთქვა მოსაზრება, რომ ა კომუნიკაციაში
რსებობს შაბლონები, რომლებიც შეიძლება გამოყენებულ იქნას ერთიდაიგივე შეტყობინების
ან მნიშვნელობის გამოსატანად რამდენიმე საფეხურზე, ანუ ბიტებში. .

წერილობითი ენა გვთავაზობს შაბლონებს, რომლებიც მომდევნო მნიშვნელობას უფრო


პროგნოზირებადს ხდის წინა მნიშვნელობების გამო.

სხვა სიტყვებით რომ ვთქვათ, წინა მნიშვნელობა ხდის შემდეგ მნიშვნელობას ნაკლებად
გაურკვეველს, ანუ ამცირებს ენტროპიას. საუკეთესო მაგალითია ასო "U"-ის
პროგნოზირებადობა "Q"-ს შემდეგ წერილობით ინგლისურ ენაში. თუ "Q"-ს მოჰყვება "U"
90%-ში, ეს ნიშნავს, რომ შემდეგი ასოს პოტენციური გამომავალი აღარ არის დაბალანსებული
მთელ სისტემასთან. ეს ქმნის სისტემას, სადაც შემდეგი მნიშვნელობა დამოკიდებულია
წინაზე. რუსმა მათემატიკოსმა ანდრეი მარკოვმა გააკეთა დასკვნა თავის რევოლუციურ
დამტკიცებაში, რომელსაც მისი სახელი ეწოდა, როგორც "მარკოვის ჯაჭვი". ის აცხადებს,
რომ მომავალი მნიშვნელობების ალბათობა, წინა მნიშვნელობების მიხედვით, ფიქსირდება
მათ ალბათობაში. მან დაამტკიცა, რომ სისტემის უწყვეტი მუშაობისას შედეგები მათ
სტატისტიკურ ალბათობას შეესატყვისება.

5
იმის გათვალისწინებით, რომ დამოკიდებულების „Q“-ს მოსდევს „U“ 9/10 ალბათობით,
ენტროპია, ანუ „U“-ს „Q“-ს შემდეგ გამოჩენის გაურკვევლობა არის H(X) = 0.13 ბიტი.
პირველ საფეხურზე ანბანის შუაზე გაყოფის ნაცვლად, კითხვა, რომელიც წყვეტს
საინფორმაციო მდგომარეობებს, ჩამოყალიბდება ასე: „მნიშვნელობა უდრის „U“-ს?“. 90%
შემთხვევაში ეს იქნება მართალი და ენტროპია იქნება მხოლოდ 1 ბიტი, რაც საშუალებას
გაძლევთ ამოიღოთ არასაჭირო კითხვები და შეამციროთ სისტემის საერთო ენტროპია.
მილიონობით ტექსტის კომპიუტერული ანალიზის წყალობით, მიღებული იქნა ინგლისური
ენის თითოეული ასოს სტანდარტული განაწილება. მარკოვის ჯაჭვის გათვალისწინებით,
ასევე დადგინდა ასოების გამეორების სიხშირეები.

შენონის ფორმულა, რომელიც მარკოვის ჯაჭვების პრინციპს იყენებს, არის თანამედროვე


ინფორმაციის თეორიის საფუძველი:

H(x) აქ არის ენტროპია, გაურკვევლობის საზომი, რომელიც დაკავშირებულია მოცემულ X


ცვლადთან. P(x) არის X ცვლადში x-ს გამოტანის ალბათობა. ხოლო log(1/p(x)) არის ბიტების
რაოდენობა, რაც საჭიროა X ცვლადში x-ს გამოტანისთვის. H(x) განისაზღვრება ბიტებში.

შეგახსენებთ, რომ ჩვენ გამოვთვალეთ ენტროპია H(x) = 4.7 ანბანის ერთი სიმბოლოსთვის,
როდესაც თანაბარი განაწილება გვქონდა. მოდით შევადაროთ H(x)-ს, რომელიც
გამოითვლება შენონის ფორმულით:

6
აქ გამოყენებული მარკოვის % არის მნიშვნელობები ზემოთ მოცემული გრაფიკიდან.

როგორც ქვედა მარჯვენა ჯამიდან ვხედავთ, ენტროპიის საბოლოო მნიშვნელობაა H(x) = 4.18.

აქ შესწავლილი ცნებები, რომლებიც აგებულია მათემატიკურ კონცეფციაზე, ციფრულ


ეპოქაში უმნიშვნელოვანესია. ინფორმაციის თეორიის ალბათ ერთ-ერთი ყველაზე
გავრცელებული გამოყენებაა ინფორმაციის უდანაკარგო შეკუმშვა. შეკუმშვის ეს ფორმა
გამოიყენება მონაცემთა ბაზის ჩანაწერებში, ტექსტურ ფაილებში, სურათებსა და ვიდეო
ფაილებში. ამ ფორმით, მონაცემები შეიძლება მთლიანად აღდგეს პირვანდელ
მდგომარეობაში. შენონის ენტროპიისა და მარკოვის ჯაჭვების პრინციპების გამოყენებით,
შეგიძლიათ მიიღოთ უშეცდომო ინფორმაცია. შეკუმშვის ამ უნარმა საშუალება მისცა
მოწყობილობების მასიური წარმოება, რომლებსაც შეუძლიათ დიდი რაოდენობით
მონაცემების შენახვა. ეს განსაკუთრებით შთამბეჭდავია მუსიკალურ ფაილებში. ადრეულ
წლებში ხმის ჩანაწერი ეყრდნობოდა ვინილის ჩანაწერებს, ინფორმაციის არაკომპრესირებულ
ფორმატს. LP-ზე ჩანაწერი ინახავს ალბომს შეუკუმშვებლად, დანაკარგების გარეშე.
თანამედროვე ტექნოლოგიებით, მუსიკალური ფაილები შეკუმშულია და შეიცავს ბიტებს,
რომლებიც დაკავშირებულია სიმაღლესთან, მოცულობასთან, რეზონანსთან და ა.შ.

შეკუმშვის შენონის ალგორითმი

Shannon-Fano ალგორითმი შეკუმშვის ალბათური ალგორითმია, რომელიც იყენებს ცვლადი


სიგრძის კოდებს: ხშირად წარმოქმნილი სიმბოლო დაშიფრულია უფრო მცირე სიგრძის
კოდით, ხოლო იშვიათად წარმოქმნილი სიმბოლო უფრო გრძელი კოდით.

 პირველადი ანბანის სიმბოლოები იწერება ალბათობის კლებადობით.


 მიღებული ანბანის სიმბოლოები იყოფა ორ ნაწილად, რომელთა სიმბოლოების
საერთო ალბათობა მაქსიმალურად ახლოს არის ერთმანეთთან.
 პრეფიქსის კოდში ორობითი ციფრი „0“ ენიჭება ანბანის პირველ ნაწილს, ხოლო „1“
მეორე ნაწილს.
 შედეგად მიღებული ნაწილები იყოფა რეკურსიულად და მათ ნაწილებს ენიჭებათ
შესაბამისი ბინარული ციფრები პრეფიქსის კოდში.

Shannon-Fano კოდი აგებულია ხის გამოყენებით. ამ ხის აგება ფესვიდან იწყება. დაშიფრული
ელემენტების მთელი ნაკრები შეესაბამება ხის ფესვს. ის იყოფა ორ ქვეჯგუფად, დაახლოებით
იგივე საერთო ალბათობით. ეს ქვესიმრავლეები შეესაბამება ორ მეორე დონის წვეროს,
რომლებიც დაკავშირებულია ფესვთან. გარდა ამისა, თითოეული ეს ქვესიმრავლე იყოფა ორ
ქვეჯგუფად, დაახლოებით იგივე საერთო ალბათობით. ისინი შეესაბამება მესამე დონის
წვეროებს. თუ ქვესიმრავლე შეიცავს ერთ ელემენტს, მაშინ იგი შეესაბამება კოდის ხის ბოლო
წვეროს; ვაგრძელებთ მანამ, სანამ არ მივიღებთ ყველა ბოლო წვეროს. კოდის ხის წიბოებს
აღვნიშნავთ 1 და 0 სიმბოლოებით.

7
მაგალითი.

საწყისი სიმბლოები:

A (შემთხვევის სიხშირე 50)

B (შემთხვევის სიხშირე 39)

C (შემთხვევის სიხშირე 18)

D (შემთხვევის სიხშირე 49)

E (შემთხვევის სიხშირე 35)

F (შემთხვევის სიხშირე 24)

მიღებული კოდები: A — 11, B — 101, C — 100, D — 00, E — 011, F — 010.

ჰაფმენის კოდირების ალგორითმი

ესაა ინფორმატიკასა და ინფორმაციის თეორიაში ინფორმაციის უდანაკარგოდ შეკუმშვის ერთ-


ერთი ყველაზე მარტივი და ძირითადი ალგორითმი. როდესაც წინასწარ მოცემული გვაქვს
სიმბოლოების ყველა შესაძლო ვარიანტი და მათი ალბათობები, მაშინ ჰაფმენის კოდი არის
ყველაზე ოპტიმალური შეკუმშვის მეთოდი.

8
სიმბოლო სიხშირე

'b' 3

'e' 4

'p' 2

'' 2

'o' 2

'r' 1

'!' 1

შევქმნათ ბინარული ხის კვანძები და დავალაგოთ სიშირის მიხედვით:

ახლა ჩვენ ვიღებთ პირველ ორ ელემენტს რიგიდან და ვაკავშირებთ მათ, ვქმნით ახალ ხის
კვანძს, რომელშიც ორივე იქნება შვილი და ახალი კვანძის პრიორიტეტი უდრის მათი
პრიორიტეტების ჯამს. ამის შემდეგ, ჩვენ ვამატებთ მიღებულ ახალ კვანძს რიგში.

გავიმეოროთ იგივე ნაბიჯები:

9
10
ბოლოს დავაკავშიროთ ეს ორი ელემენტი:

სიმბოლოს კოდის მისაღებად უნდა დავიწყოთ მოგზაურობა ფესვიდან ელემენტამდე.


თითოეულ წიბოს 0 ან 1 დავაწეროთ იმის შესაბამისად, მარცხნივაა, თუ მარჯვნივ:

11
ამრიგად, მივიღებთ შემდეგ კოდებს:

სიმბოლო კოდი

"b" 00

"e" 11

'p' 101

"" 011

"o" 010

'r' 1000

'!' 1001

დაშიფრული სტრიქონის გაშიფვრისთვის, შესაბამისად, უბრალოდ უნდა ვიაროთ ხის


გასწვრივ, მივუბრუნდეთ თითოეული ბიტის შესაბამისი მიმართულებით, სანამ არ
მივაღწევთ ფოთოლს. მაგალითად, თუ არის სტრიქონი "101 11 101 11" და ჩვენი ხე, მაშინ
მივიღებთ სტრიქონს "pepe".

მნიშვნელოვანია გვახსოვდეს, რომ თითოეული კოდი არ არის სხვა სიმბოლოს კოდის


პრეფიქსი. ჩვენს მაგალითში, თუ 00 არის 'b'-ის კოდი, მაშინ 000 არ შეიძლება იყოს ვინმეს
კოდი, რადგან წინააღმდეგ შემთხვევაში მივიღებთ კონფლიქტს.

12
პრაქტიკაში, ამ ალგორითმის განხორციელებისას, ხის აგებისთანავე, იგება ჰაფმანის ცხრილი.
ეს ცხრილი არსებითად არის დაკავშირებული სია ან მასივი, რომელიც შეიცავს თითოეულ
სიმბოლოს და მის კოდს, რადგან ეს კოდირებას უფრო ეფექტურს ხდის. ყოველ ჯერზე
სიმბოლოს ძებნა და მისი კოდის ერთდროულად გამოთვლა საკმაოდ ძვირი ჯდება, რადგან
არ ვიცით სად არის და მოგვიწევს მთელი ხის გავლა. როგორც წესი, ჰაფმანის ცხრილი
გამოიყენება კოდირებისთვის, ხოლო ჰაფმანის ხე გამოიყენება დეკოდირებისთვის.

13
14
15
16

You might also like