Semi-synthetic time-varrying traffic generator based on averaged time series
Project description
Traffic Weaver
Semi-synthetic time-varrying traffic generator based on averaged time series.
Acknowledgments and citation
Please cite this paper when you use this simulator in your publications/lectures/presentations:
Piotr Lechowicz, Aleksandra Knapińska, Adam Włodarczyk, Krzysztof Walkowiak, "Traffic Weaver: semi-synthetic time-varying traffic generator based on averaged time series," arXiv preprint arXiv:2403.11388, 2024.
Table of content
Introduction
Traffic Weaver is a Python package developed to generate a semi-synthetic signal (time series) with finer granularity, based on averaged time series, in a manner that, upon averaging, closely matches the original signal provided. The key components utilized to recreate the signal encompass:
- oversampling
- recreating from average with a given strategy,
- stretching to match the integral of the original time series,
- interpolating,
- smoothing,
- repeating,
- applying trend,
- adding noise.
The primary motivation behind Traffic Weaver is to furnish semi-synthetic time-varying traffic in telecommunication networks, facilitating the development and validation of traffic prediction models, as well as aiding in the deployment of network optimization algorithms tailored for time-varying traffic.
The purpose of Traffic Weaver is to generate new time-varying data based on an already available sample of data, i.e., to create semi-synthetic data when the size of real data is either insufficient or the time points at which the data were measured are too rare.
In consequence, it can generate larger and diverse datasets with similar traffic patterns based on the original traffic.
Below figure shows a general usage example. shows a general usage example. Based on the provided original averaged time series (a), the signal is n-times oversampled and recreated from average values with a predefined strategy (b). Next, it is stretched to match the integral of the input time series function (c). Further, it is smoothed with a spline function (d). In order to create weekly semi-synthetic data, the signal is repeated seven times (e), applying a long-term trend consisting of sinusoidal and linear functions (f). Finally, the noise is introduced to the signal, starting from small values and increasing over time (g). To validate the correctness of the applied processing, (h) presents the averaged two periods of the created signal, showing that they closely match the original signal (except the applied trend).
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file traffic_weaver-1.5.3.tar.gz
.
File metadata
- Download URL: traffic_weaver-1.5.3.tar.gz
- Upload date:
- Size: 79.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.9.19
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 77c62701b2750dbae9658506b04ea233069373f5cdacb73d2313f31deb038a11 |
|
MD5 | 17c61e2347b391031193df26c74b19a3 |
|
BLAKE2b-256 | 0ff0ead2b53194b041e8f68773df06fb0ecd29ef99041ad4a78247c7995223a6 |
File details
Details for the file traffic_weaver-1.5.3-py3-none-any.whl
.
File metadata
- Download URL: traffic_weaver-1.5.3-py3-none-any.whl
- Upload date:
- Size: 75.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.9.19
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ff1b541da6c42676015baf3fd497caf321f283d78bb461379fe2b365b41a5358 |
|
MD5 | 6ce5b9a4a956228b5fb4e9c17b9eb1ff |
|
BLAKE2b-256 | 619f7a1d5a9cfb044af07b475eca3b4ebb3f6fdc71ddfe992b4dda56a9417a2a |