Skip to main content

ROSE

What is ROSE:

The RADICAL Optimal & Smart-Surrogate Explorer (ROSE) toolkit is a framework for supporting the concurrent and adaptive execution of simulation and surrogate training and selection tasks on High-Performance Computing (HPC) resources. ROSE is a Python package that provides tools to facilitate the development of machine learning surrogates for scientific applications. It standardizes the process of building surrogates using diverse methods such as active and reinforcement learning on HPC systems. ROSE enables users to define thousands of simulation and surrogate training tasks and workflows, while automatically managing their execution across thousands of HPC nodes.

ROSE also provides tools to facilitate the selection of the best surrogate model for a given simulation based on performance metrics.

ROSE uses RADICAL-Cybertools -- middleware building blocks to facilitate the development of sophisticated scientific workflows on HPC resources.

How to install:

pip install .

Documentation:

The complete documentation is available here.

For tutorials and walkthrough notebooks please check here

Basic usage

import asyncio

from rose.metrics import MEAN_SQUARED_ERROR_MSE
from rose.al import SequentialActiveLearner

from concurrent.futures import ProcessPoolExecutor

from radical.asyncflow import WorkflowEngine
from rhapsody.backends import ConcurrentExecutionBackend

async def main():
    execution_engine = await ConcurrentExecutionBackend(ProcessPoolExecutor())

    asyncflow = await WorkflowEngine.create(execution_engine)
    acl = SequentialActiveLearner(asyncflow)

    @acl.simulation_task
    async def simulation(*args):
        return f'python3 sim.py'

    @acl.training_task
    async def training(*args):
        return f'python3 train.py'

    @acl.active_learn_task
    async def active_learn(*args):
        return f'python3 active.py'

    # Start the learning loop and break if max_iter = 10
    await acl.start(max_iter=10)
    await asyncflow.shutdown()

if __name__ == "__main__":
    asyncio.run(main())

Metadata

Release files for rose-surrogate-explorer 0.3.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for rose-surrogate-explorer 0.3.0
File Size Uploaded Provenance Actions
rose_surrogate_explorer-0.3.0.tar.gz 65.3 kB Without provenance Details for rose_surrogate_explorer-0.3.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for rose-surrogate-explorer 0.3.0
File Interpreter ABI Platform Actions
rose_surrogate_explorer-0.3.0-py3-none-any.whl Python 3 none any Details for rose_surrogate_explorer-0.3.0-py3-none-any.whl

Total release size: 139.2 kB

Release files / rose_surrogate_explorer-0.3.0.tar.gz

Download URL rose_surrogate_explorer-0.3.0.tar.gz
Size 65.3 kB
Tags Source
SHA-256 checksum
How to use checksums
9d86bf43f54a2f37530985c1a4bd15ec607b871b56233cda8bf77174eae6acc7
BLAKE2b-256 checksum
How to use checksums
99a2baa791ddec35e20a38c7b08e1297de6f506e40a1d66ee1b0cd415881b79f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.3

Release files / rose_surrogate_explorer-0.3.0-py3-none-any.whl

Download URL rose_surrogate_explorer-0.3.0-py3-none-any.whl
Size 73.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
4da3d3c937919b5a4eb8e634c2b05bb2cb9b181510c074e155db7ee53dc409ef
BLAKE2b-256 checksum
How to use checksums
82f7a632db1089a868416fcf7e01d0e631610a199a13358ba1364771e765b6b1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.3

Security for rose-surrogate-explorer 0.3.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.3.0 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page