Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
TI.docx
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
194.45 Кб
Скачать

31. Monte Carlo Methods

Monte Carlo methods (or Monte Carlo experiments) are a broad class of computational algorithms that rely on repeated random sampling to obtain numerical results i.e. by running simulations many times over in order to calculate those same probabilities heuristically just like actually playing and recording your results in a real casino situation: hence the name. They are often used in physical and mathematical problems and are most suited to be applied when it is impossible to obtain a closed-form expression or infeasible to apply a deterministic algorithm. Monte Carlo methods are mainly used in three distinct problems: optimization, numerical integration and generation of samples from a probability distribution.

Monte Carlo methods are especially useful for simulating systems with many coupled degrees of freedom, such as fluids, disordered materials, strongly coupled solids, and cellular structures (see cellular Potts model). They are used to model phenomena with significant uncertainty in inputs, such as the calculation of risk in business. They are widely used in mathematics, for example to evaluate multidimensional definite integrals with complicated boundary conditions. When Monte Carlo simulations have been applied in space exploration and oil exploration, their predictions of failures, cost overruns and schedule overruns are routinely better than human intuition or alternative "soft" methods

Monte Carlo methods vary, but tend to follow a particular pattern:

Define a domain of possible inputs.

Generate inputs randomly from a probability distribution over the domain.

Perform a deterministic computation on the inputs.

Aggregate the results.

P=2m  

32. Error-correcting codes and real channels

An error-correcting code is an algorithm for expressing a sequence of numbers such that any errors which are introduced can be detected and corrected (within certain limitations) based on the remaining numbers. The study of error-correcting codes and the associated mathematics is known as coding theory.Error detection is much simpler than error correction, and one or more "check" digits are commonly embedded in credit card numbers in order to detect mistakes. Early space probes like Mariner used a type of error-correcting code called a block code, and more recent space probes use convolution codes. Error-correcting codes are also used in CD players, high speed modems, and cellular phones. Modems use error detection when they compute checksums, which are sums of the digits in a given transmission modulo some number. The ISBN used to identify books also incorporates a check digit.A powerful check for 13 digit numbers consists of the following. Write the number as a string of digits . Take and double. Now add the number of digits in odd positions which are to this number. Now add . The check number is then the number required to bring the last digit to 0. This scheme detects all single digit errors and all transpositions of adjacent digits except 0 and 9.

The Ubiquitous Reed-Solomon Codes

Reed-Solomon (RS) codes

Reed-Solomon errors-and-erasures decoder

BCH codes

Binary (48,36,5) BCH code.

CRC-32

Cyclic redundancy checks (CRCs)

cyclic redundancy check (CRC) is a single-burst-error-detecting cyclic code and non-secure hash function designed to detect accidental changes to digital data in computer networks. It is not suitable for detecting maliciously introduced errors. It is characterized by specification of a so-called generator polynomial, which is used as the divisor in a polynomial long division over a finite field, taking the input data as the dividend, and where the remainder becomes the result.Cyclic codes have favorable properties in that they are well suited for detecting burst errors. CRCs are particularly easy to implement in hardware, and are therefore commonly used in digitalnetworks and storage devices such as hard disk drives.Even parity is a special case of a cyclic redundancy check, where the single-bit CRC is generated by the divisor x + 1.

Hamming’s development [Ham] is a very direct construction of a code that permits correcting single-bit errors. He assumes that the data to be transmitted consists of a certain number of information bits u, and he adds to these a number ofcheck bits p such that if a block is received that has at most one bit in error, thenp identifies the bit that is in error (which may be one of the check bits)The channel consists of two parts: Corrupter and Eraser.

Corrupter receives a word consisting of 10000 symbols in 3-symbol alphabet, say, {'a','b','c'}.Corrupter changes each symbol with probability 10%.Example:

Corrupter input: abcaccbacbbaaacbcacbcababacb...

Corrupter output: abcaacbacbbaabcbcacbcababccb...

Eraser receives corrupter output and erases each symbol with probability 94%.

Eraser produces word of the same length in 4-symbol alphabet {'a','b','c','*'}.

Example:Eraser input: abcaacbacbbaabcbcacbcababccb...

Eraser output: *******a*****************c**...

So, on eraser output, approximately 6%*10000=600 symbols would not be erased, approximately 90%*600=540 of them would preserve their original values and approximately 60 would be corrupted.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]