Skip to content

code ep imrpovedonline

Zhang, Yin edited this page Dec 24, 2021 · 2 revisions

Improved Online Code

Tag

Code EqualErrorProtection Online

Paper

Zhao, Yuli, et al. "Improved online fountain codes." IET Communications 12.18 (2018): 2297-2304.

Class

Encoder

  • ppcode3.equalerrorprotection.online
    • OnlineEncoder
    • OnlineEncoderFactory

Decoder

  • ppcode3.equalerrorprotection.online
    • ImprovedOnlineDecoder
    • ImprovedOnlineDecoderDegreeFinder
    • ImprovedOnlineDecoderFactory

Simulate

To run a simulation, choose a proper runner, e.g. ppcode3.equalerrorprotection.OneTimeRunner, as the Main class.

Specify a config file via -Dcx.config.file=x:/absolute/path/to/config/file.config.

The following config file if for ppcode3.equalerrorprotection.OneTimeRunner.

ppcode3.runner.sourcefilepath=x:/absolute/path/to/file/to/transfer.bin
ppcode3.runner.workingpath=x:/absolute/path/to/a/target/directory/
ppcode3.ep.encoderfactory=ppcode3.equalerrorprotection.online.OnlineEncoderFactory
ppcode3.ep.fnisencoderfactory.numberinputsymbol=1000
# Number of bits in an input symbol
ppcode3.ep.fnisencoderfactory.sizeinputsymbol=1
ppcode3.ep.decoderfactory=ppcode3.equalerrorprotection.online.ImprovedOnlineDecoderFactory
# The alpha0 and beta0 parameter from the paper
ppcode3.ep.improvedonlinedecoderfactory.alpha0=0.95
ppcode3.ep.improvedonlinedecoderfactory.beta0=0.65
# Maximum degree of output symbol
ppcode3.ep.improvedonlinedecoderfactory.thresholddegree=40
ppcode3.ep.improvedonlinedecoder.logdecodeevent=true
ppcode3.ep.improvedonlinedecoder.logdegreeoutputsymbol=true
ppcode3.ep.improvedonlinedecoder.lognumberxor=true
ppcode3.ep.improvedonlinedecoder.lognumberdecodedinputsymbol=true
ppcode3.ep.improvedonlinedecoder.lognumbercachedsymboltodecode=true

Analyze

To analyze the simulation result, choose a proper log processor runner, e.g. ppcode3.logprocessor.TextLogProcessorRunner, as the Main class.

Specify a config file via -Dcx.config.file=x:/absolute/path/to/config/file.config.

The following config file is for ppcode3.logprocessor.TextLogProcessorRunner.

ppcode3.log.logprocessorrunner.workingpath=x:/absolute/path/to/a/target/directory/
ppcode3.log.logprocessorfactory=ppcode3.logprocessor.equalerrorprotection.DefaultDecoderLogProcessorFactory
ppcode3.log.logprocessorrunner.numberinputsymbol=1000

Additional Resource

To understand how to choose a proper runner and log processor runner, please see Runner.

Clone this wiki locally