WO2023175680A1 - 符号化装置、符号化方法、及びプログラム - Google Patents
符号化装置、符号化方法、及びプログラム Download PDFInfo
- Publication number
- WO2023175680A1 WO2023175680A1 PCT/JP2022/011364 JP2022011364W WO2023175680A1 WO 2023175680 A1 WO2023175680 A1 WO 2023175680A1 JP 2022011364 W JP2022011364 W JP 2022011364W WO 2023175680 A1 WO2023175680 A1 WO 2023175680A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- encoding
- message
- encoding device
- messages
- subset
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 44
- 238000004891 communication Methods 0.000 claims abstract description 49
- 238000006243 chemical reaction Methods 0.000 claims description 3
- 238000012545 processing Methods 0.000 description 20
- 238000004364 calculation method Methods 0.000 description 17
- 238000010586 diagram Methods 0.000 description 15
- 238000009826 distribution Methods 0.000 description 13
- 230000006870 function Effects 0.000 description 11
- 230000003595 spectral effect Effects 0.000 description 10
- 230000008569 process Effects 0.000 description 9
- 238000005516 engineering process Methods 0.000 description 7
- 239000013598 vector Substances 0.000 description 6
- 230000002452 interceptive effect Effects 0.000 description 3
- 238000007796 conventional method Methods 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 238000009827 uniform distribution Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/13—Linear codes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
Definitions
- the present invention relates to a technique for correctly communicating with a small probability of decoding error in a noisy environment.
- Non-Patent Document 1 discloses a method for realizing encoding in a communication channel having a large number of input/output terminals.
- a structure that indicates which message among multiple encoders is input and encoded by multiple encoders is called a message access structure.
- the present invention has been made in view of the above points, and it is an object of the present invention to provide a technology that enables efficient encoding of arbitrary access structures in a communication channel with multiple input/output terminals. With the goal.
- an encoding device in a communication system including a set of encoding devices that perform encoding on a communication path having a plurality of input/output terminals, a receiving unit that receives messages; a control unit that generates a code word from the message received by the receiving unit based on a classification result of classifying the plurality of messages by a subset of encoding devices that can access the message; An encoding device is provided.
- FIG. 1 is a diagram showing a configuration example of a communication system in an embodiment of the present invention.
- FIG. 2 is a diagram showing example 1 of an access structure.
- FIG. 7 is a diagram showing example 2 of an access structure. It is a diagram showing Algorithm 1.
- FIG. 3 is a diagram showing the internal processing contents of the encoding device.
- FIG. 3 is a diagram showing the internal processing contents of the decoding device. It is a diagram showing Algorithm 2.
- FIG. 2 is a diagram showing an example of a device configuration. It is a diagram showing an example of the hardware configuration of the device.
- Fig. of [3] In a configuration like 4, in a general access structure corresponding to FIG. 1 and Example 2 described later, stationary memorylessness is assumed for the auxiliary random variable Z n S (in Reference [3] Fig. 4). At times, efficient communication is not possible. In addition, if the communication path W i (as shown in Reference [3] Fig. 4) is configured to have the same dimension as the block length n, the complexity of the system configuration and calculation time will increase.
- a technique for encoding on a communication path having two or more input/output terminals will be described.
- a message is classified by "a set of encoders that can access it", and random numbers are generated for each message in an order sorted according to the inclusion relationship of the set of encoders (for example, in descending order).
- the encoder is assumed to perform the encoding.
- the encoder and decoder are configured using a random number generator and sparse matrix that satisfy the constraint conditions.
- a random number generator that satisfies the constraint condition is only an example, and encoding and decoding can be realized using appropriately determined transformations other than random number generation that satisfies the constraint condition.
- a device that performs encoding will be referred to as an encoding device
- a device that performs decoding will be referred to as a decoding device.
- the encoding device and the decoding device may be called an encoder and a decoder, respectively.
- FIG. 1 shows an example of the overall configuration of a communication system in this embodiment.
- this communication system includes a plurality of encoding devices and a plurality of decoding devices, and has a configuration in which these devices are connected to a communication network (which may also be referred to as a communication path).
- a communication network which may also be referred to as a communication path.
- Figure 1 shows M indicating a message, ⁇ indicating encoding processing, X indicating input information to the communication channel (output information from the encoding device), ⁇ indicating the characteristics of the communication channel, and output information from the communication channel.
- Y indicating input information to the decoding device
- ⁇ indicating decoding processing ⁇ M indicating a message output from the decoding device are shown, the details of which will be described later. Note that " ⁇ M" in the specification text is intended to be a symbol with a hat attached to the beginning of M.
- Each encoding device has a plurality of input interfaces (also referred to as input terminals) as a receiving section, and can input a plurality of messages.
- input interfaces also referred to as input terminals
- inputting a message to the encoding device may be expressed as "the encoding device accesses the message.”
- u V ⁇ ⁇ u v ⁇ u ⁇ V represents a set of u v (series, random variables, functions, etc.) whose index is v belonging to the set V.
- represents the number of elements in the set V.
- ⁇ u v ⁇ v ⁇ V is not a set (duplication is not allowed), but is called an associative array (hash, dictionary) that has a value u v for one v.
- a general communication channel is a sequence of conditional probability distributions.
- X n I ⁇ X n i ⁇ i ⁇ I is a random variable of channel input
- Y n J ⁇ Y n j ⁇ j ⁇ J is a random variable of channel output. That is, X n I indicates information (data, signals) output from (a set of) encoding devices.
- Y n J indicates information (data, signals) input to (a set of) decoding devices.
- XX n i be a set of possible values (hereinafter referred to as an alphabet) of the random variable X n i ⁇ (X i,1 , . . . , X i, n ). Note that a notation such as "XX" in which two capital letters are written side by side corresponds to a single character "X” in cursive in drawings and images.
- n is the block length
- XX n i is the n-dimensional direct product of the set XX i .
- YY n j be an alphabet of random variables Y n j .
- YY n j does not need to be an n-dimensional space.
- the i-th encoding device (hereinafter referred to as encoding device i) inputs the message set M S (i) ⁇ ⁇ M s ⁇ s ⁇ S (i) , performs conversion (encoding), and performs communication.
- S(i) is a set of indexes of messages that can be accessed by encoding device i, and the details will be described later.
- D(j) be the index set of messages played back (decoded) by the j-th decoding device (hereinafter referred to as decoding device j).
- D(j) ⁇ S.
- the decoding device j receives the communication channel output Y n j and reproduces the reproduction message.
- ⁇ M j,s ⁇ MM s is the message s reproduced by the decoding device j.
- Prob( ⁇ ) represents the probability of an event
- the code configured in this embodiment is set by taking a sufficiently large n for any ⁇ >0,
- the lower bar H (U) becomes the entropy H (U)
- V) together become conditional entropy H(U
- the lower bar H(U) is the entropy rate lim n ⁇ H( U n )/n
- V) have a conditional entropy rate lim n ⁇ H(U n
- ZZ n s be an alphabet of random variables Z n s .
- ZZ n s does not need to be an n-dimensional space.
- CC s be a set that is the range of a function f s to be described later.
- c s and m s will be referred to as vectors, where c s ⁇ CC s and m s ⁇ MM s .
- the access structure is information indicating which messages the encoding device receives as input (which messages can be accessed). More details are as follows.
- the access structure A is a subset of S ⁇ I, and (s, i) ⁇ A means that encoding device i can access message s. If we interpret A as a set of directed edges and (s, i) ⁇ A as a directed edge s ⁇ i, then (S, I, A) becomes a bipartite graph. 2 and 3 show that a bipartite graph is constructed between the message and the encoding device.
- I(s) be the set of indices of encoding devices that can access the message s.
- I' be a subset of I.
- S(I') be the index set of messages shared by the encoding device corresponding to the index set I'.
- the classification process of classifying multiple messages by a subset of encoding devices that can access the messages may be performed by each encoding device, or may be performed by an external device.
- the classification process may be performed, and each encoding device may receive the classification results from an external device.
- Example 1 corresponds to FIG.
- Example 1 is an example of an access structure for a two-input multiple access channel code with a shared message or a two-input interfering channel code with a shared message.
- S, I, and A be as follows.
- message 0 is shared by encoding device 1 and encoding device 2, and for each i ⁇ 1, 2 ⁇ , message i is a (private) message that only encoding device i can access. be. In other words, for each i ⁇ 1,2 ⁇ , encoding device i can access message 0 and message i.
- This access structure is similar for two-input interfering channels with shared messages. In the multiple access channel code, one decoding device decodes all of message 0, message 1, and message 2. As for the interference channel code, decoding device i decodes message 0 and message i for each i ⁇ 1, 2 ⁇ . From this access structure and the above definition, we get the following:
- I(0) ⁇ 1,2 ⁇ I(1) ⁇ 1 ⁇ I(2) ⁇ 2 ⁇ S(1) ⁇ 0,1 ⁇ S(2) ⁇ 0,2 ⁇ S( ⁇ 1 ⁇ ) ⁇ 1 ⁇ S( ⁇ 2 ⁇ ) ⁇ 2 ⁇ S( ⁇ 1,2 ⁇ ) ⁇ 0 ⁇ ⁇ I ⁇ 1,2 ⁇ , ⁇ 1 ⁇ , ⁇ 2 ⁇ ⁇ I(1) ⁇ 1,2 ⁇ , ⁇ 1 ⁇ ⁇ I(2) ⁇ 1,2 ⁇ , ⁇ 2 ⁇ ⁇ I ⁇ 1,2 ⁇ , ⁇ 1 ⁇ , ⁇ 2 ⁇ above is a set of subsets of encoders with shared messages.
- the subset of encoders with shared messages includes one encoder that has access to a certain message.
- ⁇ I(1) ⁇ 1,2 ⁇ , ⁇ 1 ⁇ is the set of subsets of encoders with shared messages with respect to encoder 1.
- ⁇ I(2) ⁇ 1,2 ⁇ , ⁇ 2 ⁇ is the set of subsets of encoders with shared messages with respect to encoder 2.
- Example 2 corresponds to FIG.
- Example 2 is an example of an access structure in a three-input multiple access channel (including an interfering channel). Let S, I, and A be as follows.
- message i is a private message of encoder i
- message ij is a private message of encoder i and encoder j
- Message 123 is a message shared by encoding device 1, encoding device 2, and encoding device 3.
- encoding device 1 can access message 1, message 12, message 123
- encoding device 2 can access message 2
- encoding device 3 can access message 2, message 12, message 23, message 123, etc.
- message 3, message 23, and message 123 can be accessed.
- the partially shared message 12 and message 23 do not appear in the two-input multiple access channel. From this access structure, we get the following:
- S°(I') is defined as follows. Note that "S°" is intended to be a letter with ° added to the beginning of S.
- ⁇ S(I′) ⁇ I′ ⁇ ⁇ I is a partition of S (a family of mutually sparse sets whose union is S).
- encoding device i encodes both message sets M S(I') ⁇ M s ⁇ s ⁇ S(I') and M S°(I') ⁇ M s ⁇ s ⁇ S°(I'). is accessible.
- the set of two functions f S ⁇ f s ⁇ s ⁇ S , g S ⁇ g s ⁇ s ⁇ S and the set of vectors c S ⁇ c s ⁇ s ⁇ S are shared by the encoding device and the decoding device. ing. That is, the encoding device and the decoding device each hold a set of the above two functions and a set of vectors in a storage unit such as a memory.
- encoding device i For each i ⁇ I, encoding device i utilizes f S(i) , g S(i) , c S(i) . For each j ⁇ J, decoding device j utilizes f D(j) , g D(j) and c D(j) . Furthermore, both the encoding device and the decoding device use conditional probability distribution.
- a random number generator that satisfies the constraint conditions used by the encoding device i is provided. That is, the encoding device i performs random number generation processing that satisfies the constraint conditions using a control unit that will be described later.
- the "random number generator” may also be referred to as a "random number generation unit.”
- ⁇ For any k, k′ ⁇ 1,2,...,
- ⁇ I(3) ⁇ 1,2,3 ⁇ , ⁇ 2,3 ⁇ , ⁇ 3 ⁇ is any k, k' ⁇ 1,2, .. that satisfies "Equation 22". .,
- the alignment procedure will be explained using Algorithm 2, which will be described later.
- the encoding device i generates random numbers according to the procedure of Algorithm 1 shown in FIG.
- This random number may be called encoded information. That is, as shown in FIG. 4, an input is made and the second row is repeated for each k to obtain an output. Depending on the condition that the arranged ⁇ I(i) ⁇ I i,1 ,...,I i,
- each encoding device Given I′ ⁇ ⁇ I, all encoders that have access to the message set m S(I′) (the index belongs to I′) have the same output of the random number generator z S that satisfies the constraint. Assume that (I') can be obtained. In order to satisfy the assumption, each encoding device generates a random number that satisfies the constraint condition by using, for example, a synchronized pseudo-random number sequence (using the same initial value).
- the function ⁇ i :MM S(i) ⁇ XX n i executed by the encoding device i is defined as follows.
- the encoding device declares (outputs) an error.
- W i is the conditional probability distribution
- W i may be a deterministic function.
- FIG. 5 shows the flow of data related to encoding processing in encoding device i. This is a diagram corresponding to a diagram illustrating the processing contents described above.
- the decoding device j For each j ⁇ J, the decoding device j generates a random number ⁇ D according to the following distribution from the pre-shared vector c D(j) ⁇ c s ⁇ s ⁇ D(j) and the channel output y j ⁇ YY n j (j) ⁇ z j,s ⁇ s ⁇ D(j) is generated using a random number generator that satisfies the constraint conditions.
- the function ⁇ j :YY n j ⁇ MM D_j executed by the decoding device j is defined as follows. That is, the decoding device j performs the following processing to decode the input information and outputs the decoded message.
- ⁇ M j,s ⁇ g( ⁇ z j,s ) for each j ⁇ J, s ⁇ D(j).
- FIG. 6 shows the flow of data related to decoding processing in decoding device j. This is a diagram corresponding to a diagram illustrating the processing contents described above.
- ⁇ (R s , r s ) ⁇ s ⁇ S is any arbitrary set that satisfies I′ ⁇ ⁇ I, empty set ⁇ S′ ⁇ S(I′), j ⁇ J, empty set ⁇ D′ ⁇ D(j) (I', S', j, D')
- the spectral entropy rate lower limit H(U) is defined below.
- a directed acyclic graph (also called a directed acyclic graph)
- it is determined by topological sorting with a computational complexity proportional to the sum of
- ) O(
- the amount of calculation required is
- the average amount of calculation when using the algorithm given in [5] is O(w
- w is the width of the directed acyclic graph.
- the alignment procedure proposed in this embodiment is shown in Algorithm 2 in FIG. Note that the alignment procedure may be executed by the encoding device or by a device external to the encoding device. When executed by a device external to the encoding device, the encoding device receives the execution result and uses it for encoding processing.
- the proposed method uses bucket sorting based on the number of elements in a subset.
- the amount of calculation in the proposed method is O(
- ) in the third line is an operation that adds I' to ⁇ L(
- ⁇ I ⁇ ⁇ L(v) ⁇ ⁇ I on the 6th line is an operation that adds ⁇ L(v) to the beginning of ⁇ I.
- Theorem 2 After executing Algorithm 2, in ⁇ I ⁇ I 1 ,...,I
- FIG. 8 shows a functional configuration diagram of an encoding device 100 and a decoding device 200 that execute the processing described above.
- the encoding device 100 includes a transmitting section 110, a receiving section 120, a control section 130, and a storage section 140, which are connected by a bus.
- the receiving unit 120 receives a message to be encoded.
- the control unit 130 executes the encoding process described above.
- Transmitter 110 transmits the encoded information to a communication network.
- the storage unit 140 stores information necessary for encoding processing.
- the encoding device 100 information necessary for calculation of encoding processing is stored in advance in the storage unit 140.
- the receiving unit 120 collects dynamically changing information and stores it in the storage unit 140. Alternatively, dynamically changing information is obtained from an external device.
- the decoding device 200 includes a transmitting section 210, a receiving section 220, a control section 230, and a storage section 240, which are connected by a bus.
- the receiving unit 220 receives information to be decoded.
- the control unit 230 executes the decoding process described above.
- Transmitter 210 transmits the decoded message.
- the storage unit 240 stores information necessary for decoding processing.
- the decoding device 200 information necessary for calculation of the decoding process is held in advance in the storage unit 240.
- the receiving unit 220 collects dynamically changing information and stores it in the storage unit 240. Alternatively, dynamically changing information is obtained from an external device.
- transmitting section may be respectively referred to as a transmitter, a receiver, a controller (or processor), and a memory.
- Both the encoding device 100 and the decoding device 200 may be realized by a dedicated hardware circuit, or by having a computer execute a program. This computer may be a physical computer or a virtual machine on the cloud.
- the encoding device 100 and the decoding device 200 will be collectively referred to as the device.
- the device can be realized by using hardware resources such as a CPU and memory built into a computer to execute a program corresponding to the processing performed by the device.
- the above program can be recorded on a computer-readable recording medium (such as a portable memory) and can be stored or distributed. It is also possible to provide the above program through a network such as the Internet or e-mail.
- FIG. 9 is a diagram showing an example of the hardware configuration of the computer.
- the computer in FIG. 9 includes a drive device 1000, an auxiliary storage device 1002, a memory device 1003, a CPU 1004, an interface device 1005, a display device 1006, an input device 1007, an output device 1008, etc., which are connected to each other by a bus B.
- a program that realizes processing on the computer is provided, for example, on a recording medium 1001 such as a CD-ROM or a memory card.
- a recording medium 1001 such as a CD-ROM or a memory card.
- the program is installed from the recording medium 1001 to the auxiliary storage device 1002 via the drive device 1000.
- the program does not necessarily need to be installed from the recording medium 1001, and may be downloaded from another computer via a network.
- the auxiliary storage device 1002 stores installed programs as well as necessary files, data, and the like.
- the memory device 1003 reads and stores the program from the auxiliary storage device 1002 when there is an instruction to start the program.
- the CPU 1004 implements functions related to the device according to programs stored in the memory device 1003.
- the interface device 1005 is used as an interface for connecting to a network.
- a display device 1006 displays a GUI (Graphical User Interface) and the like based on a program.
- the input device 1007 is composed of a keyboard, a mouse, buttons, a touch panel, or the like, and is used to input various operation instructions.
- An output device 1008 outputs the calculation result.
- the technology according to the present embodiment makes it possible to efficiently encode any access structure in a communication channel with multiple input/output terminals. More specifically, the system configuration can be simplified compared to the conventional technology, and calculation time can be reduced and communication efficiency can be improved. Further, by setting ⁇ (r s , R s ) ⁇ s ⁇ S so as to satisfy the above-mentioned (3) to (5), an error probability close to 0 can be achieved.
- sorting can be achieved with a small amount of calculation by sorting based on the number of elements in the subset.
- the processor generates random numbers in the order in which the subsets in the subset group are sorted, based on an inclusion relationship between the subsets of the encoding devices in a subset family that is a set of subsets of the encoding devices.
- the encoding device according to Supplementary Note 1. (Additional note 3) The encoding device according to supplementary note 2, wherein the processor executes the sorting by performing bucket sorting based on the number of elements of each subset in the subset group.
- An encoding method comprising: (Additional note 5) A non-transitory storage medium storing a program executable by a computer used as an encoding device to perform an encoding process, The encoding process includes: In a communication system equipped with a set of encoding devices that perform encoding on a communication channel having a plurality of input/output terminals, receive a message, A non-temporary storage medium that generates random numbers from messages received by the receiving unit based on a classification result of classifying a plurality of messages by a subset of encoding devices that can access the messages.
- the processor executes the transformation in the order in which the subsets in the subset family are sorted, based on an inclusion relationship between the subsets of the encoding devices in a subset family that is a set of subsets of the encoding devices.
- the encoding device according to Supplementary Note 1. (Additional note 3) The encoding device according to supplementary note 2, wherein the processor executes the sorting by performing bucket sorting based on the number of elements of each subset in the subset group.
- An encoding method comprising: (Additional note 5) A non-transitory storage medium storing a program executable by a computer used as an encoding device to perform an encoding process, The encoding process includes: In a communication system equipped with a set of encoding devices that perform encoding on a communication channel having a plurality of input/output terminals, receive a message, A non-temporary storage medium that generates codewords from messages received by the receiving unit based on classification results of a plurality of messages classified by a subset of encoding devices that can access the messages.
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
複数の入出力端子を有する通信路において符号化を行う符号化装置の集合が備えられた通信システムにおける符号化装置において、メッセージを受信する受信部と、複数のメッセージを、メッセージにアクセスできる符号化装置の部分集合によって分類した分類結果に基づいて、前記受信部により受信したメッセージから符号語を生成する制御部と、を備える。
Description
本発明は、雑音のある環境で小さい復号誤り確率で正しく通信を行う技術に関連するものである。
雑音のある環境で小さい復号誤り確率で正しく通信を行うための技術として、例えば非特許文献1に開示された技術がある。非特許文献1には、多数の入出力端子がある通信路における符号化を実現する方法が開示されている。
Jun Muramatsu, Shigeki Miyake,"Multi-Terminal Codes Using Constrained-Random-Number Generators", https://arxiv.org/pdf/1801.02875.pdf
複数の入出力端子がある通信路において、複数の符号器が複数のメッセージのうちのどのメッセージを入力して符号化を行うかを示す構造を、メッセージのアクセス構造と呼ぶ。
多数の情報源が存在する近年の通信環境においては、任意のアクセス構造に対する効率的な符号化を実現することが望ましい。しかし、非特許文献1に開示された技術等の従来技術においては、任意のアクセス構造に対して効率的に符号化を行うことができなかった。
本発明は上記の点に鑑みてなされたものであり、複数の入出力端子がある通信路において、任意のアクセス構造に対して効率的に符号化を行うことを可能とする技術を提供することを目的とする。
開示の技術によれば、複数の入出力端子を有する通信路において符号化を行う符号化装置の集合が備えられた通信システムにおける符号化装置であって、
メッセージを受信する受信部と、
複数のメッセージを、メッセージにアクセスできる符号化装置の部分集合によって分類した分類結果に基づいて、前記受信部により受信したメッセージから符号語を生成する制御部と、
を備える符号化装置が提供される。
メッセージを受信する受信部と、
複数のメッセージを、メッセージにアクセスできる符号化装置の部分集合によって分類した分類結果に基づいて、前記受信部により受信したメッセージから符号語を生成する制御部と、
を備える符号化装置が提供される。
開示の技術によれば、複数の入出力端子がある通信路において、任意のアクセス構造に対して効率的に符号化を行うことが可能となる。
以下、図面を参照して本発明の実施の形態(本実施の形態)を説明する。以下で説明する実施の形態は一例に過ぎず、本発明が適用される実施の形態は、以下の実施の形態に限られるわけではない。以下の説明において、参考文献については[1]などのように番号で表し、明細書の最後に番号に対応する文献名を記載した。
(概要)
前述したとおり、多数の情報源が存在する近年の通信環境においては、任意のアクセス構造に対する効率的な符号化を実現することが望ましい。しかし、非特許文献1に開示された技術等の従来技術においては、任意のアクセス構造に対して効率的に符号化を行うことができなかった。
前述したとおり、多数の情報源が存在する近年の通信環境においては、任意のアクセス構造に対する効率的な符号化を実現することが望ましい。しかし、非特許文献1に開示された技術等の従来技術においては、任意のアクセス構造に対して効率的に符号化を行うことができなかった。
より具体的には、[3]のFig.4のような構成では、後述の図1や例2と対応するような一般的なアクセス構造において、(文献[3]Fig.4の)補助確率変数Zn
Sに定常無記憶性を仮定したときは効率のよい通信を行うことができない。またブロック長nと同じ次元の(文献[3]Fig.4の)通信路Wiを構成した場合は、システム構成の複雑度や計算時間が大きくなる。
また、多数の入出力端子がある通信路において、メッセージのアクセス構造が任意の場合の符号化方法を実現する方法に関連して、従来技術では、独立なメッセージ集合と符号器が1対1対応する場合や、文献[4]のFig.8にあるような全ての符号に共通のメッセージ集合がある場合の単純なものしかなく、これに対して効率的な通信を実現するためには複雑な構成をとる必要があった。つまり、従来技術では、任意のアクセス構造に対して効率的に符号化を行うことができなかった。
以下、複雑な構造を用いることなく、任意のアクセス構造に対して効率的に符号化を行うことを可能とする技術を説明する。
本実施の形態では、二つ以上の入出力端子を持つ通信路(多端子通信路)での符号化を行う技術について説明する。特に、本実施の形態では、メッセージを「それをアクセスできる符号器の集合」によって分類し、符号器の集合の包含関係によって(例えば大きい順に)ソートされた順序で乱数生成を行うことによって、各々の符号器が符号化を行うこととしている。
また、拘束条件を満たす乱数生成器と疎行列を用いて、符号器と復号器を構成することとしている。ただし、拘束条件を満たす乱数生成器を使用することは一例であり、拘束条件を満たす乱数生成以外の適切に定めた変換を用いて、符号化及び復号を実現することが可能である。
なお、以下では、符号化を行う装置を符号化装置と呼び、復号を行う装置を復号装置と呼ぶ。符号化装置と復号装置をそれぞれ、符号器、復号器と呼んでもよい。
(通信システムの全体構成例)
図1に、本実施の形態における通信システムの全体構成例を示す。図1に示すように、本通信システムには、複数の符号化装置と複数の復号装置が備えられ、これらが通信ネットワーク(通信路と呼んでもよい)に接続される構成を有する。
図1に、本実施の形態における通信システムの全体構成例を示す。図1に示すように、本通信システムには、複数の符号化装置と複数の復号装置が備えられ、これらが通信ネットワーク(通信路と呼んでもよい)に接続される構成を有する。
図1には、メッセージを示すM、符号化処理を示すΦ、通信路への入力情報(符号化装置からの出力情報)を示すX、通信路の特性を示すμ、通信路からの出力情報(復号装置への入力情報)を示すY、復号処理を示すΨ、復号装置から出力されるメッセージを示す^Mが示されているが、これらの詳細については後述する。なお、明細書テキストにおける「^M」は、Mの頭にハットが付された記号を意図している。
個々の符号化装置は、受信部として、複数の入力インタフェース(入力端と呼んでもよい)を有しており、複数のメッセージを入力可能である。本実施の形態では、符号化装置にメッセージを入力することを、「符号化装置がメッセージにアクセスする」と表現してもよい。
(定義と記法)
ここでは、本実施の形態の説明で使用する定義と記法について説明する。図面又は明細書内の画像で表記される数式やアルゴリズムにおけるドイツ文字のIとLは、それぞれ、明細書テキスト中では、~I、~Lと表記する。その他、画像での表記方法と明細書テキストでの表記方法が異なるものについては、説明を要しないほど明らかな場合を除いて、適宜その内容を説明する。
ここでは、本実施の形態の説明で使用する定義と記法について説明する。図面又は明細書内の画像で表記される数式やアルゴリズムにおけるドイツ文字のIとLは、それぞれ、明細書テキスト中では、~I、~Lと表記する。その他、画像での表記方法と明細書テキストでの表記方法が異なるものについては、説明を要しないほど明らかな場合を除いて、適宜その内容を説明する。
以下では、uV≡{uv}u∈Vという記法が用いられた場合は、集合Vに属するvをインデックスとするuv(系列、確率変数、関数、等)の集合を表すものとする。|V|は集合Vの要素数を表す。なお、{uv}v∈Vは、(重複を許さない)集合ではなく、一つのvに対してuvという値を持つ連想配列(ハッシュ、辞書)と呼ばれるものである。また{un}∞
n=1は数列{un;n=1,2,...}を意味する。
Iを通信路入力と対応する符号化装置のインデックスの集合とする。Jを通信路出力と対応する復号装置のインデックスの集合とする。一般の通信路は条件付き確率分布の列
各i∈Iに対して、XXn
iを確率変数Xn
i≡(Xi,1,...,Xi,n)のとり得る値の集合(以下アルファベットと呼ぶ)とする。なお、「XX」のように、2つの大文字を並べて記載した表記は、図面や画像では、1文字「X」の筆記体に対応する。
ここで、自然数nはブロック長であり、XXn
iは集合XXiのn次元の直積である。各j∈Jに対して,YYn
jを確率変数Yn
jのアルファベットとする。ここでYYn
jはn次元空間である必要はない。
Sをメッセージのインデックス集合とする。各s∈Sに対して、MsをアルファベットMMs上の一様分布に従うs番目のメッセージ(以下メッセージsと呼ぶ)とする。{Ms}s∈Sは互いに独立であると仮定する。なお、一様性や独立性の仮定はないものとしてもよい。
i番目の符号化装置(以下、符号化装置iと呼ぶ)は、メッセージ集合MS(i)≡{Ms}s∈S(i)を入力し、変換(符号化)を行って、通信路入力としてXn
iを送信する。ここでS(i)は符号化装置iがアクセスできるメッセージのインデックス集合であり、詳細は後述する。
各j∈Jに対して、D(j)をj番目の復号装置(以下復号装置jと呼ぶ)が再生(復号)するメッセージのインデックス集合とする。ここで、D(j)⊂Sである。復号装置jは通信路出力Yn
jを受信し再生メッセージ
確率変数列U≡{Un}∞
n=1の分布列
ここで、確率変数列が定常無記憶性(独立同分布性)を持つときは、下バーH(U)はエントロピーH(U)となり、下バーH(U|V)、上バーH(U|V)はともに、条件付きエントロピーH(U|V)となる。また、確率変数列{Un}∞
n=1、{(Un,Vn)}∞
n=1が定常性のみを持つときは下バーH(U)はエントロピーレートlimn→∞H(Un)/nとなり、下バーH(U|V)、上バーH(U|V)はともに条件付きエントロピーレートlimn→∞H(Un|Vn)/nとなる。
各s∈Sに対して、ZZn
sを確率変数Zn
sのアルファベットとする。ここでZZnsはn次元空間である必要はない。各s∈Sに対して、CCsを後述の関数fsの値域となる集合とする。cs∈CCs、ms∈MMsとして、以下cs、msをベクトルと呼ぶことにする。
アクセス構造とは、例として図2、図3に示すように、符号化装置がどのメッセージを入力とするか(どのメッセージにアクセスできるか)を示す情報である。より詳細には下記のとおりである。
アクセス構造AはS×Iの部分集合であり、(s,i)∈Aは符号化装置iがメッセージsへアクセスできることを意味する。Aを有向辺の集合、(s,i)∈Aを有向辺s→iと解釈すると、(S,I,A)は2部グラフとなる。図2、図3には、メッセージと符号化装置との間で2部グラフが構成されていることが示されている。
各s∈Sに対して、I(s)をメッセージsにアクセスできる符号化装置のインデックス集合とする。
I(s)≡{i∈I:(s,i)∈A}
各i∈Iに対して、S(i)を符号化装置iがアクセスできるメッセージのインデックス集合とする。
各i∈Iに対して、S(i)を符号化装置iがアクセスできるメッセージのインデックス集合とする。
S(i)≡{s∈S:(s,i)∈A}
ここで、i∈I(s)とs∈S(i)は同値である。
ここで、i∈I(s)とs∈S(i)は同値である。
I′をIの部分集合とする。各I′に対して、S(I′)をインデックス集合I′と対応する符号化装置で共有しているメッセージのインデックス集合とする。
S(I′)≡{s∈S:I(s)=I′}
~I,~I(i)を次のように定義する。
~I,~I(i)を次のように定義する。
~I≡{I′⊂I:S(I′)≠空集合}
~I(i)≡{I′∈~I:i∈I}
以下、例1、例2を用いて、上記記号を使用した具体例を説明する。なお、例1、例2において例示するような、メッセージにアクセスできる符号化装置の部分集合によって、複数のメッセージを分類する分類処理については、各符号化装置が行ってもよいし、外部装置が分類処理を行って、各符号化装置が外部装置から分類結果を受信してもよい。
~I(i)≡{I′∈~I:i∈I}
以下、例1、例2を用いて、上記記号を使用した具体例を説明する。なお、例1、例2において例示するような、メッセージにアクセスできる符号化装置の部分集合によって、複数のメッセージを分類する分類処理については、各符号化装置が行ってもよいし、外部装置が分類処理を行って、各符号化装置が外部装置から分類結果を受信してもよい。
<アクセス構造:例1>
例1は、図2に対応する。例1は、共有メッセージのある2入力マルチプルアクセス通信路符号や共有メッセージのある2入力干渉通信路符号のアクセス構造の例である。S、I、Aを下記のとおりとする。
例1は、図2に対応する。例1は、共有メッセージのある2入力マルチプルアクセス通信路符号や共有メッセージのある2入力干渉通信路符号のアクセス構造の例である。S、I、Aを下記のとおりとする。
S≡{0,1,2}
I≡{1,2}
A≡{(0,1),(0,2),(1,1),(2,2)}
上記Aに示されるとおり、メッセージ0は符号化装置1と符号化装置2で共有しており、各i∈{1,2}でメッセージiは符号化装置iだけがアクセスできる(プライベート)メッセージである。言い替えれば、各i∈{1,2}で符号化装置iはメッセージ0とメッセージiにアクセス可能である。このアクセス構造は、共有メッセージのある2入力干渉通信路に対しても同様である。マルチプルアクセス通信路符号は、一つの復号装置がメッセージ0、メッセージ1、メッセージ2の全てを復号する。干渉通信路符号は各i∈{1,2}で復号装置iがメッセージ0とメッセージiを復号する。このアクセス構造より、前述した定義から、以下を得る。
I≡{1,2}
A≡{(0,1),(0,2),(1,1),(2,2)}
上記Aに示されるとおり、メッセージ0は符号化装置1と符号化装置2で共有しており、各i∈{1,2}でメッセージiは符号化装置iだけがアクセスできる(プライベート)メッセージである。言い替えれば、各i∈{1,2}で符号化装置iはメッセージ0とメッセージiにアクセス可能である。このアクセス構造は、共有メッセージのある2入力干渉通信路に対しても同様である。マルチプルアクセス通信路符号は、一つの復号装置がメッセージ0、メッセージ1、メッセージ2の全てを復号する。干渉通信路符号は各i∈{1,2}で復号装置iがメッセージ0とメッセージiを復号する。このアクセス構造より、前述した定義から、以下を得る。
I(0)≡{1,2}
I(1)≡{1}
I(2)≡{2}
S(1)≡{0,1}
S(2)≡{0,2}
S({1})≡{1}
S({2})≡{2}
S({1,2})≡{0}
~I≡{{1,2},{1},{2}}
~I(1)≡{{1,2},{1}}
~I(2)≡{{1,2},{2}}
上記の~I≡{{1,2},{1},{2}}は、共有メッセージを持つ符号化装置の部分集合の集合である。共有メッセージを持つ符号化装置の部分集合には、あるメッセージにアクセスする1つの符号化装置を含む。
I(1)≡{1}
I(2)≡{2}
S(1)≡{0,1}
S(2)≡{0,2}
S({1})≡{1}
S({2})≡{2}
S({1,2})≡{0}
~I≡{{1,2},{1},{2}}
~I(1)≡{{1,2},{1}}
~I(2)≡{{1,2},{2}}
上記の~I≡{{1,2},{1},{2}}は、共有メッセージを持つ符号化装置の部分集合の集合である。共有メッセージを持つ符号化装置の部分集合には、あるメッセージにアクセスする1つの符号化装置を含む。
~I(1)≡{{1,2},{1}}は、符号化装置1に関しての、共有メッセージを持つ符号化装置の部分集合の集合である。~I(2)≡{{1,2},{2}}は、符号化装置2に関しての、共有メッセージを持つ符号化装置の部分集合の集合である。
<アクセス構造:例2>
例2は図3に対応する。例2は、3入力のマルチプルアクセス通信路(干渉通信路を含む)におけるアクセス構造の例である。S、I、Aを下記のとおりとする。
例2は図3に対応する。例2は、3入力のマルチプルアクセス通信路(干渉通信路を含む)におけるアクセス構造の例である。S、I、Aを下記のとおりとする。
S≡{1,3,12,23,123}
I≡{1,2,3}
A≡{(1,1),(3,3),(12,1),(12,2),(23,2),(23,3),(123,1),(123,2),(123,3)}
I≡{1,2,3}
A≡{(1,1),(3,3),(12,1),(12,2),(23,2),(23,3),(123,1),(123,2),(123,3)}
各i∈{1,3}で、メッセージiは符号化装置iのプライベートメッセージであり、二桁の数値ij∈{12,23}の各々で、メッセージijは符号化装置iと符号化装置jの共有メッセージである。メッセージ123は符号化装置1、符号化装置2、符号化装置3の共有メッセージである。言い替えれば、符号化装置1はメッセージ1、メッセージ12、メッセージ123へアクセス可能であり、符号化装置2はメッセージ2、メッセージ12、メッセージ23、メッセージ123、へアクセス可能であり、符号化装置3はメッセージ3、メッセージ23、メッセージ123へアクセス可能である。ここで、部分的に共有されているメッセージ12、メッセージ23は2入力のマルチプルアクセス通信路では現れない。このアクセス構造より以下を得る。
S(1)≡{1,12,123}
S(2)≡{12,23,123}
S(3)≡{3,23,123}
I(1)≡{1}
I(3)≡{3}
I(12)≡{1,2}
I(23)≡{2,3}
I(123)≡{1,2,3}
S({1})≡{1}
S({3})≡{3}
S({1,2})≡{12}
S({2,3})≡{23}
S({1,2,3})≡{123}
~I≡{{1,2,3},{1,2},{2,3},{1},{3}}
~I(1)≡{{1,2,3},{1,2},{1}}
~I(2)≡{{1,2,3},{1,2},{2,3}}
~I(3)≡{{1,2,3},{2,3},{3}}
与えられたI′∈~Iに対して,S°(I′)を以下のように定義する。なお、「S°」は、°がSの頭に付いた文字であることを意図している。
S(2)≡{12,23,123}
S(3)≡{3,23,123}
I(1)≡{1}
I(3)≡{3}
I(12)≡{1,2}
I(23)≡{2,3}
I(123)≡{1,2,3}
S({1})≡{1}
S({3})≡{3}
S({1,2})≡{12}
S({2,3})≡{23}
S({1,2,3})≡{123}
~I≡{{1,2,3},{1,2},{2,3},{1},{3}}
~I(1)≡{{1,2,3},{1,2},{1}}
~I(2)≡{{1,2,3},{1,2},{2,3}}
~I(3)≡{{1,2,3},{2,3},{3}}
与えられたI′∈~Iに対して,S°(I′)を以下のように定義する。なお、「S°」は、°がSの頭に付いた文字であることを意図している。
・i∈I′ならばS(I′)⊂S(i),S°(I′)⊂S(i)が成立する。即ち、符号化装置iはメッセージ集合MS(I′)≡{Ms}s∈S(I′)、MS°(I′)≡{Ms}s∈S°(I′)の双方にアクセス可能である。
・∪I′∈~I(i)S(I′)=S(i)が成り立つ。
確率分布
(通信路符号の構成)
続いて、本実施の形態における通信路符号の構成について説明する。本実施の形態における通信路符号の構成の基本的な考えは、参考文献[1][3][2][4]に基づくものである。ただし、下記で説明する事項が、参考文献[1][3][2][4]に開示されているわけではない。
続いて、本実施の形態における通信路符号の構成について説明する。本実施の形態における通信路符号の構成の基本的な考えは、参考文献[1][3][2][4]に基づくものである。ただし、下記で説明する事項が、参考文献[1][3][2][4]に開示されているわけではない。
各s∈Sで関数
二つの関数の集合fS≡{fs}s∈S,gS≡{gs}s∈Sとベクトルの集合cS≡{cs}s∈Sは符号化装置と復号装置で共有している。つまり、符号化装置と復号装置はそれぞれ、メモリ等の記憶部に上記二つの関数の集合とベクトルの集合を保持している。
各i∈Iで、符号化装置iはfS(i),gS(i),cS(i)を利用する。各j∈Jで、復号装置jはfD(j)、gD(j)、cD(j)を利用する。更に、符号化装置、復号装置は共に条件付き確率分布
<符号化装置>
次に、本実施の形態の符号化装置による符号化処理について説明する。まず、符号化装置iが利用する、拘束条件を満たす乱数生成器を与える。すなわち、符号化装置iは、後述する制御部により、拘束条件を満たす乱数生成処理を行う。「乱数生成器」を「乱数生成部」と呼んでもよい。
次に、本実施の形態の符号化装置による符号化処理について説明する。まず、符号化装置iが利用する、拘束条件を満たす乱数生成器を与える。すなわち、符号化装置iは、後述する制御部により、拘束条件を満たす乱数生成処理を行う。「乱数生成器」を「乱数生成部」と呼んでもよい。
与えられた
符号化装置iは、図4に示すAlgorithm 1の手順に従って、乱数
I′∈~Iを与えたとき、メッセージ集合mS(I′)にアクセスできる(インデックスはI′に属している)全ての符号化装置は拘束条件を満たす乱数生成器の同一の出力zS(I′)を得ることができることを仮定する。仮定を満たすために、例えば、(同じ初期値を用いて)同期させた疑似乱数列等を利用して、それぞれの符号化装置が拘束条件を満たす乱数生成を行う。符号化装置iが実行する関数Φi:MMS(i)→XXn
iを以下のように定義する。
符号化装置iにおける、符号化処理に係るデータの流れを図5に示す。これは、上述した処理内容を図示したものに相当する図である。
なお、図5の符号化装置iにおいて、
<復号装置>
次に、復号装置jにおける処理内容を説明する。各j∈Jで、復号装置jはあらかじめ共有したベクトルcD(j)≡{cs}s∈D(j)と通信路出力yj∈YYn jより、下記の分布に従う乱数^zD(j)≡{^zj,s}s∈D(j)を、拘束条件を満たす乱数生成器を用いて生成する。
次に、復号装置jにおける処理内容を説明する。各j∈Jで、復号装置jはあらかじめ共有したベクトルcD(j)≡{cs}s∈D(j)と通信路出力yj∈YYn jより、下記の分布に従う乱数^zD(j)≡{^zj,s}s∈D(j)を、拘束条件を満たす乱数生成器を用いて生成する。
復号装置jにおける、復号処理に係るデータの流れを図6に示す。これは、上述した処理内容を図示したものに相当する図である。図6において、D(j)≡{sj,1,sj,2,...,sj,|D(j)|}とする。
<{(rs,Rs)}s∈Sが満たすべき条件>
各s∈Sでrs、Rsを
各s∈Sでrs、Rsを
本実施の形態において、{(rs,Rs)}s∈Sが満たすべき条件について説明する。(Zn
S,Xn
I,Yn
J)の同時分布を式(2)で定義された
具体的な
定理:^Mj,s≡gs(^Zn
j,s)とする。{(Rs,rs)}s∈Sが(3)-(5)を満たしているとき、任意のε>0に対して十分大きなnをとれば、(1)満たすfS,gS,cSを与えることができる。
(スペクトルエントロピーレート下限と条件付きスペクトルエントロピーレート上限)
ここで、前述したスペクトルエントロピーレート下限と条件付きスペクトルエントロピーレート上限の詳細な定義について説明する。
ここで、前述したスペクトルエントロピーレート下限と条件付きスペクトルエントロピーレート上限の詳細な定義について説明する。
確率変数列{Un}∞
n=1に対して確率的上限(limit superior in probability)p-limsupn→∞Unと確率的下限(limit inferior in probability)p-liminfn→∞Unを以下で定義する。
(部分集合族の部分順序の線形拡大)
ここで、前述した
ここで、前述した
ここでは、包含関係による部分順序を持つ部分集合族~I≡{I1,...,I|~I|}(各k∈{1,...,|~I|}でIk⊂I)の線形拡大を求める方法について説明する。この線形拡大を求める方法とは、
部分順序が有向非循環グラフ(有向非巡回グラフと呼んでもよい)で与えられているときは、トポロジカルソートにより、|~I|と有向辺の数の和に比例する計算量で求めることができる。しかしながら、有向非循環グラフで与えられていないときは、二つの部分集合の比較に必要な計算量をO(|I|)と仮定すると、有向非循環グラフを求めるためにO(|I||~I|2)の計算量が必要となる。また[5]で与えられているアルゴリズムを利用する場合の平均計算量は、2つの部分集合の比較に必要な計算量をO(|I|)とするとO(w|I||~I|log|~I|)となる。ここで、wは有向非循環グラフの幅(width)である。
本実施の形態において提案する、整列の手順を図7のAlgorithm 2に示す。なお、整列の手順は、符号化装置が実行してもよいし、符号化装置の外部装置で実行してもよい。符号化装置の外部装置で実行する場合は、実行結果を符号化装置が受信して、符号化処理に利用する。
本提案法では部分集合の要素数に基づくバケツソートを用いる。部分集合の要素数を求める為の計算量がO(1)の場合、提案法の計算量はO(|~I|+|I|)となる。部分集合の要素数を求める為の計算量がO(I)の場合は提案法の計算量はO(|I||~I|)となる。例えば、~Iと~L(w),w∈{0,1,...,|I|}のデータ構造として二重循環リンクを持つリストを利用することで、和集合の操作をO(1)にすることができる。
図7に示すAlgorithm 2に従って、ソートされていないリストが入力され、1行目ではw∈{0,1,...,|I|}に対して~L(v)を初期化する。3行目の~L(|I′|)←{I′}∪~L(|I′|)は、~L(|I′|)にI′を付加する操作である。つまり、|I′|で識別される「~L(|I′|)」というバケツにI′を入れる操作である。これを各~Iの要素I´に対して行うことで、各要素数に対応する各「バケツ」の中へ、その要素数のデータがセットされる。
6行目の~I←~L(v)∪~Iは~Iの先頭に~L(v)を付加する操作である。これを、v=0から|I|まで順に繰り返すことで、バケツからデータが取り出されて、ソートされた部分集合族が完成する。
順序あるいは包含関係のどちらか一方を逆にする場合は、6行目を~Iの末尾に~L(v)を付加する操作~I←~I∪~L(v)へ変更する。ここで、以下の定理が成り立つ。
定理2:Algorithm 2の実行後には、~I≡{I1,...,I|~I|}において、
なお、部分集合の要素数を求める計算量がO(1)であるときは、部分集合I′∈~Iの要素数を用いて標準的なソートアルゴリズム(クイックソート,マージソート,ヒープソート,等)を実行した場合の計算量はO(|~I|log|~I|)となる。従ってO(|~I|log|~I|)がO(|I|)と比べて小さいときや、事前にIが定められない場合は、部分集合の要素数による標準的なソートアルゴリズムを用いた方が、計算量が小さくなる。
(その他)
前述したように、本実施の形態において、拘束条件を満たす乱数生成器を用いることは一例であり、任意の変換を用いてよい。その場合、符号化装置の処理内容を示すAlgorithm 1(図4)の2行目を、
前述したように、本実施の形態において、拘束条件を満たす乱数生成器を用いることは一例であり、任意の変換を用いてよい。その場合、符号化装置の処理内容を示すAlgorithm 1(図4)の2行目を、
(装置構成例)
図8に、これまでに説明した処理を実行する符号化装置100と復号装置200の機能構成図を示す。
図8に、これまでに説明した処理を実行する符号化装置100と復号装置200の機能構成図を示す。
図8に示すように、符号化装置100は、送信部110、受信部120、制御部130、記憶部140を備え、これらがバスで接続される。受信部120が符号化対象となるメッセージを受信する。制御部130は、これまでに説明した符号化処理を実行する。送信部110は、符号化された情報を通信ネットワークに送信する。記憶部140には、符号化処理のために必要な情報が格納されている。
符号化装置100において、符号化処理の計算のための必要な情報は記憶部140に予め保持している。動的に変化する情報については、受信部120が収集し、記憶部140に格納する。あるいは、動的に変化する情報については、外部装置から取得する。
復号装置200は、送信部210、受信部220、制御部230、記憶部240を備え、これらがバスで接続される。受信部220が復号対象となる情報を受信する。制御部230は、これまでに説明した復号処理を実行する。送信部210は、復号されたメッセージを送信する。記憶部240には、復号処理のために必要な情報が格納されている。
復号装置200において、復号処理の計算のための必要な情報は記憶部240に予め保持している。動的に変化する情報については、受信部220が収集し、記憶部240に格納する。あるいは、動的に変化する情報については、外部装置から取得する。
なお、送信部、受信部、制御部、記憶部をそれぞれ、送信機、受信機、コントローラ(又はプロセッサ)、メモリと呼んでもよい。
(ハードウェア構成例)
符号化装置100、復号装置200はいずれも、専用のハードウェア回路で実現してもよいし、コンピュータにプログラムを実行させることにより実現してもよい。このコンピュータは、物理的なコンピュータであってもよいし、クラウド上の仮想マシンであってもよい。以下、符号化装置100、復号装置200を総称して装置と呼ぶ。
符号化装置100、復号装置200はいずれも、専用のハードウェア回路で実現してもよいし、コンピュータにプログラムを実行させることにより実現してもよい。このコンピュータは、物理的なコンピュータであってもよいし、クラウド上の仮想マシンであってもよい。以下、符号化装置100、復号装置200を総称して装置と呼ぶ。
すなわち、当該装置は、コンピュータに内蔵されるCPUやメモリ等のハードウェア資源を用いて、当該装置で実施される処理に対応するプログラムを実行することによって実現することが可能である。上記プログラムは、コンピュータが読み取り可能な記録媒体(可搬メモリ等)に記録して、保存したり、配布したりすることが可能である。また、上記プログラムをインターネットや電子メール等、ネットワークを通して提供することも可能である。
図9は、上記コンピュータのハードウェア構成例を示す図である。図9のコンピュータは、それぞれバスBで相互に接続されているドライブ装置1000、補助記憶装置1002、メモリ装置1003、CPU1004、インタフェース装置1005、表示装置1006、入力装置1007、出力装置1008等を有する。
当該コンピュータでの処理を実現するプログラムは、例えば、CD-ROM又はメモリカード等の記録媒体1001によって提供される。プログラムを記憶した記録媒体1001がドライブ装置1000にセットされると、プログラムが記録媒体1001からドライブ装置1000を介して補助記憶装置1002にインストールされる。但し、プログラムのインストールは必ずしも記録媒体1001より行う必要はなく、ネットワークを介して他のコンピュータよりダウンロードするようにしてもよい。補助記憶装置1002は、インストールされたプログラムを格納すると共に、必要なファイルやデータ等を格納する。
メモリ装置1003は、プログラムの起動指示があった場合に、補助記憶装置1002からプログラムを読み出して格納する。CPU1004は、メモリ装置1003に格納されたプログラムに従って、当該装置に係る機能を実現する。インタフェース装置1005は、ネットワークに接続するためのインタフェースとして用いられる。表示装置1006はプログラムによるGUI(Graphical User Interface)等を表示する。入力装置1007はキーボード及びマウス、ボタン、又はタッチパネル等で構成され、様々な操作指示を入力させるために用いられる。出力装置1008は演算結果を出力する。
(実施の形態の効果等)
本実施の形態に係る技術により、複数の入出力端子がある通信路において、任意のアクセス構造に対して効率的に符号化を行うことが可能となる。より具体的には、従来技術よりもシステム構成を単純化でき、計算時間の削減、通信効率の向上が図れる。また、前述した(3)-(5)を満たすように{(rs,Rs)}s∈Sを設定することにより0に近い誤り確率を実現できる。
本実施の形態に係る技術により、複数の入出力端子がある通信路において、任意のアクセス構造に対して効率的に符号化を行うことが可能となる。より具体的には、従来技術よりもシステム構成を単純化でき、計算時間の削減、通信効率の向上が図れる。また、前述した(3)-(5)を満たすように{(rs,Rs)}s∈Sを設定することにより0に近い誤り確率を実現できる。
また、部分集合族を包含関係によってソートする方法として、部分集合の要素数に基づいてソートすることにより少ない計算量でソートを実現できる。
なお、本実施の形態では、~I(i)、i∈Iをあらかじめソートしておくことを想定しているが、メッセージのアクセス構造が動的に変化する場合は、前述のAlgorithm 2等を用いて各々の符号化装置が動的にソートを実行する。
(付記1)
以上の実施形態に関し、更に以下の付記項を開示する。
(付記項1)
複数の入出力端子を有する通信路において符号化を行う符号化装置の集合が備えられた通信システムにおける符号化装置であって、
メモリと、
前記メモリに接続された少なくとも1つのプロセッサと、
を含み、
前記プロセッサは、
メッセージを受信し、
複数のメッセージを、メッセージにアクセスできる符号化装置の部分集合によって分類した分類結果に基づいて、前記受信部により受信したメッセージから乱数を生成する
符号化装置。
(付記項2)
前記プロセッサは、前記符号化装置の部分集合の集合である部分集合族における前記符号化装置の部分集合間の包含関係に基づいて、前記部分集合族における部分集合がソートされた順序で乱数を生成する
付記項1に記載の符号化装置。
(付記項3)
前記プロセッサは、前記部分集合族における各部分集合の要素数に基づくバケツソートを行うことにより、前記ソートを実行する
付記項2に記載の符号化装置。
(付記項4)
複数の入出力端子を有する通信路において符号化を行う符号化装置の集合が備えられた通信システムにおける符号化装置として使用されるコンピュータが実行する符号化方法であって、
メッセージを受信するステップと、
複数のメッセージを、メッセージにアクセスできる符号化装置の部分集合によって分類した分類結果に基づいて、受信したメッセージから乱数を生成するステップと、
を備える符号化方法。
(付記項5)
符号化処理を実行するように、符号化装置として使用されるコンピュータによって実行可能なプログラムを記憶した非一時的記憶媒体であって、
前記符号化処理は、
複数の入出力端子を有する通信路において符号化を行う符号化装置の集合が備えられた通信システムにおいて、
メッセージを受信し、
複数のメッセージを、メッセージにアクセスできる符号化装置の部分集合によって分類した分類結果に基づいて、前記受信部により受信したメッセージから乱数を生成する
非一時的記憶媒体。
以上の実施形態に関し、更に以下の付記項を開示する。
(付記項1)
複数の入出力端子を有する通信路において符号化を行う符号化装置の集合が備えられた通信システムにおける符号化装置であって、
メモリと、
前記メモリに接続された少なくとも1つのプロセッサと、
を含み、
前記プロセッサは、
メッセージを受信し、
複数のメッセージを、メッセージにアクセスできる符号化装置の部分集合によって分類した分類結果に基づいて、前記受信部により受信したメッセージから乱数を生成する
符号化装置。
(付記項2)
前記プロセッサは、前記符号化装置の部分集合の集合である部分集合族における前記符号化装置の部分集合間の包含関係に基づいて、前記部分集合族における部分集合がソートされた順序で乱数を生成する
付記項1に記載の符号化装置。
(付記項3)
前記プロセッサは、前記部分集合族における各部分集合の要素数に基づくバケツソートを行うことにより、前記ソートを実行する
付記項2に記載の符号化装置。
(付記項4)
複数の入出力端子を有する通信路において符号化を行う符号化装置の集合が備えられた通信システムにおける符号化装置として使用されるコンピュータが実行する符号化方法であって、
メッセージを受信するステップと、
複数のメッセージを、メッセージにアクセスできる符号化装置の部分集合によって分類した分類結果に基づいて、受信したメッセージから乱数を生成するステップと、
を備える符号化方法。
(付記項5)
符号化処理を実行するように、符号化装置として使用されるコンピュータによって実行可能なプログラムを記憶した非一時的記憶媒体であって、
前記符号化処理は、
複数の入出力端子を有する通信路において符号化を行う符号化装置の集合が備えられた通信システムにおいて、
メッセージを受信し、
複数のメッセージを、メッセージにアクセスできる符号化装置の部分集合によって分類した分類結果に基づいて、前記受信部により受信したメッセージから乱数を生成する
非一時的記憶媒体。
(付記2)
以上の実施形態に関し、更に以下の付記項を開示する。
(付記項1)
複数の入出力端子を有する通信路において符号化を行う符号化装置の集合が備えられた通信システムにおける符号化装置であって、
メモリと、
前記メモリに接続された少なくとも1つのプロセッサと、
を含み、
前記プロセッサは、
メッセージを受信し、
複数のメッセージを、メッセージにアクセスできる符号化装置の部分集合によって分類した分類結果に基づいて、前記受信部により受信したメッセージから符号語を生成する
符号化装置。
(付記項2)
前記プロセッサは、前記符号化装置の部分集合の集合である部分集合族における前記符号化装置の部分集合間の包含関係に基づいて、前記部分集合族における部分集合がソートされた順序で変換を実行する
付記項1に記載の符号化装置。
(付記項3)
前記プロセッサは、前記部分集合族における各部分集合の要素数に基づくバケツソートを行うことにより、前記ソートを実行する
付記項2に記載の符号化装置。
(付記項4)
複数の入出力端子を有する通信路において符号化を行う符号化装置の集合が備えられた通信システムにおける符号化装置として使用されるコンピュータが実行する符号化方法であって、
メッセージを受信するステップと、
複数のメッセージを、メッセージにアクセスできる符号化装置の部分集合によって分類した分類結果に基づいて、受信したメッセージから符号語を生成するステップと、
を備える符号化方法。
(付記項5)
符号化処理を実行するように、符号化装置として使用されるコンピュータによって実行可能なプログラムを記憶した非一時的記憶媒体であって、
前記符号化処理は、
複数の入出力端子を有する通信路において符号化を行う符号化装置の集合が備えられた通信システムにおいて、
メッセージを受信し、
複数のメッセージを、メッセージにアクセスできる符号化装置の部分集合によって分類した分類結果に基づいて、前記受信部により受信したメッセージから符号語を生成する
非一時的記憶媒体。
以上の実施形態に関し、更に以下の付記項を開示する。
(付記項1)
複数の入出力端子を有する通信路において符号化を行う符号化装置の集合が備えられた通信システムにおける符号化装置であって、
メモリと、
前記メモリに接続された少なくとも1つのプロセッサと、
を含み、
前記プロセッサは、
メッセージを受信し、
複数のメッセージを、メッセージにアクセスできる符号化装置の部分集合によって分類した分類結果に基づいて、前記受信部により受信したメッセージから符号語を生成する
符号化装置。
(付記項2)
前記プロセッサは、前記符号化装置の部分集合の集合である部分集合族における前記符号化装置の部分集合間の包含関係に基づいて、前記部分集合族における部分集合がソートされた順序で変換を実行する
付記項1に記載の符号化装置。
(付記項3)
前記プロセッサは、前記部分集合族における各部分集合の要素数に基づくバケツソートを行うことにより、前記ソートを実行する
付記項2に記載の符号化装置。
(付記項4)
複数の入出力端子を有する通信路において符号化を行う符号化装置の集合が備えられた通信システムにおける符号化装置として使用されるコンピュータが実行する符号化方法であって、
メッセージを受信するステップと、
複数のメッセージを、メッセージにアクセスできる符号化装置の部分集合によって分類した分類結果に基づいて、受信したメッセージから符号語を生成するステップと、
を備える符号化方法。
(付記項5)
符号化処理を実行するように、符号化装置として使用されるコンピュータによって実行可能なプログラムを記憶した非一時的記憶媒体であって、
前記符号化処理は、
複数の入出力端子を有する通信路において符号化を行う符号化装置の集合が備えられた通信システムにおいて、
メッセージを受信し、
複数のメッセージを、メッセージにアクセスできる符号化装置の部分集合によって分類した分類結果に基づいて、前記受信部により受信したメッセージから符号語を生成する
非一時的記憶媒体。
以上、本実施の形態について説明したが、本発明はかかる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
[参考文献]
[1] J. Muramatsu, "Channel coding and lossy source coding using a generator of constrained random numbers," IEEE Trans. Inform. Theory, vol. IT-60, no. 5, pp. 2667-2686, May 2014.
[2] J. Muramatsu and S. Miyake, "Channel code using constrained-random-number generator revisited," IEEE Trans. Inform. Theory, vol. IT-65, no. 1, pp. 500-510, Jan. 2019.
[3] J. Muramatsu and S. Miyake, "Multi-terminal codes using constrained-random-number generator," Proceedings of the 2018 International Symposium on Information Theory and its Applications, Singapore, Oct. 28-31, 2018, pp. 612-616. Extended version is available at arXiv:1801.02875v2[cs.IT].
[4] J. Muramatsu, "On the achievability of interference channel coding," https://arxiv.org/abs/2201.10756, 2022.
[5] C. Daskalakis, R. M. Karp, E. Mossel, S. Riesenfeld, and E. Verbin, "Sorting and selection in posets," https://arxiv.org/abs/0707.1532v1, 2007.
[参考文献]
[1] J. Muramatsu, "Channel coding and lossy source coding using a generator of constrained random numbers," IEEE Trans. Inform. Theory, vol. IT-60, no. 5, pp. 2667-2686, May 2014.
[2] J. Muramatsu and S. Miyake, "Channel code using constrained-random-number generator revisited," IEEE Trans. Inform. Theory, vol. IT-65, no. 1, pp. 500-510, Jan. 2019.
[3] J. Muramatsu and S. Miyake, "Multi-terminal codes using constrained-random-number generator," Proceedings of the 2018 International Symposium on Information Theory and its Applications, Singapore, Oct. 28-31, 2018, pp. 612-616. Extended version is available at arXiv:1801.02875v2[cs.IT].
[4] J. Muramatsu, "On the achievability of interference channel coding," https://arxiv.org/abs/2201.10756, 2022.
[5] C. Daskalakis, R. M. Karp, E. Mossel, S. Riesenfeld, and E. Verbin, "Sorting and selection in posets," https://arxiv.org/abs/0707.1532v1, 2007.
100 符号化装置
110 送信部
120 受信部
130 制御部
140 記憶部
200 復号装置
210 送信部
220 受信部
230 制御部
240 記憶部
1000 ドライブ装置
1001 記録媒体
1002 補助記憶装置
1003 メモリ装置
1004 CPU
1005 インタフェース装置
1006 表示装置
1007 入力装置
1008 出力装置
110 送信部
120 受信部
130 制御部
140 記憶部
200 復号装置
210 送信部
220 受信部
230 制御部
240 記憶部
1000 ドライブ装置
1001 記録媒体
1002 補助記憶装置
1003 メモリ装置
1004 CPU
1005 インタフェース装置
1006 表示装置
1007 入力装置
1008 出力装置
Claims (5)
- 複数の入出力端子を有する通信路において符号化を行う符号化装置の集合が備えられた通信システムにおける符号化装置であって、
メッセージを受信する受信部と、
複数のメッセージを、メッセージにアクセスできる符号化装置の部分集合によって分類した分類結果に基づいて、前記受信部により受信したメッセージから符号語を生成する制御部と、
を備える符号化装置。 - 前記制御部は、前記符号化装置の部分集合の集合である部分集合族における前記符号化装置の部分集合間の包含関係に基づいて、前記部分集合族における部分集合がソートされた順序で変換を実行する
請求項1に記載の符号化装置。 - 前記制御部は、前記部分集合族における各部分集合の要素数に基づくバケツソートを行うことにより、前記ソートを実行する
請求項2に記載の符号化装置。 - 複数の入出力端子を有する通信路において符号化を行う符号化装置の集合が備えられた通信システムにおける符号化装置が実行する符号化方法であって、
メッセージを受信するステップと、
複数のメッセージを、メッセージにアクセスできる符号化装置の部分集合によって分類した分類結果に基づいて、受信したメッセージから符号語を生成するステップと、
を備える符号化方法。 - コンピュータを請求項1ないし3のうちいずれか1項に記載の符号化装置における各部として機能させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2022/011364 WO2023175680A1 (ja) | 2022-03-14 | 2022-03-14 | 符号化装置、符号化方法、及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2022/011364 WO2023175680A1 (ja) | 2022-03-14 | 2022-03-14 | 符号化装置、符号化方法、及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2023175680A1 true WO2023175680A1 (ja) | 2023-09-21 |
Family
ID=88022899
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2022/011364 WO2023175680A1 (ja) | 2022-03-14 | 2022-03-14 | 符号化装置、符号化方法、及びプログラム |
Country Status (1)
Country | Link |
---|---|
WO (1) | WO2023175680A1 (ja) |
-
2022
- 2022-03-14 WO PCT/JP2022/011364 patent/WO2023175680A1/ja active Application Filing
Non-Patent Citations (2)
Title |
---|
MURAMATSU, JUN ET AL.: "Channel Code Using Constrained-Random-Number Generator Revisited", IEEE TRANSACTIONS ON INFORMATION THEORY, vol. 65, no. 1, 26 October 2018 (2018-10-26), pages 500 - 510, XP011700944, Retrieved from the Internet <URL:https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=8510848> [retrieved on 20190100], DOI: 10.1109/TIT.2018.2878217 * |
MURAMATSU, JUN ET AL.: "Multi-Terminal Codes Using Constrained-Random-Number Generators", 2018 INTERNATIONAL SYMPOSIUM ON INFORMATION THEORY AND ITS APPLICATIONS (ISITA, 28 October 2018 (2018-10-28), pages 580 - 584, XP033529004, Retrieved from the Internet <URL:https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=8664289> DOI: 10.23919/ISITA.2018.8664289 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Rigo | Formal languages, automata and numeration systems 1: Introduction to combinatorics on words | |
CN106852185A (zh) | 基于字典的并行压缩编码器 | |
US20220083865A1 (en) | Oblivious binary neural networks | |
US9137336B1 (en) | Data compression techniques | |
Elishco et al. | Optimal reference for DNA synthesis | |
JP6990881B2 (ja) | エントロピー・エンコーディングのシステム・レベル・テスト | |
WO2023175680A1 (ja) | 符号化装置、符号化方法、及びプログラム | |
KR102339723B1 (ko) | Dna 저장 장치의 연성 정보 기반 복호화 방법, 프로그램 및 장치 | |
US11281688B2 (en) | Ranking and de-ranking data strings | |
Zhou et al. | Linear extractors for extracting randomness from noisy sources | |
CN113485829B (zh) | 用于微服务集群的数据增量步段的标识值生成方法 | |
Tzortzis et al. | Approximation of Markov processes by lower dimensional processes via total variation metrics | |
Schrock et al. | Computational complexity of k-block conjugacy | |
Kouzani et al. | Multilabel classification by bch code and random forests | |
Mezher et al. | Genetic folding for solving multiclass SVM problems | |
CN103326731B (zh) | 一种基于分布式算术编码的隐马尔科夫相关信源编码方法 | |
Alanko et al. | Longest common prefix arrays for succinct k-spectra | |
Daykin et al. | Indeterminate string factorizations and degenerate text transformations | |
EP4274102A1 (en) | Decoding device, decoding method, and program | |
Wallace et al. | On the spectrum of prebiotic chemical systems: An information theory treatment of Eigen’s paradox | |
Crochemore et al. | Algorithms for three versions of the shortest common superstring problem | |
US20230353765A1 (en) | Lossless Compression with Probabilistic Circuits | |
Ozsoy | An efficient parallelization of longest prefix match and application on data compression | |
Rahman et al. | CHAPAO: Likelihood and hierarchical reference-based representation of biomolecular sequences and applications to compressing multiple sequence alignments | |
US20240013050A1 (en) | Packing machine learning models using pruning and permutation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 22931965 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2024507218 Country of ref document: JP |