Проверяем скорость интернета
Каждый хоть раз проверял скорость своего интернета на Speedtest. А у них, оказывается, есть не только сайт и приложения, но и пакет на Python для этого дела.
У объекта класса Speedtest методы download() и upload() выдают соответственно скорость скачивания и загрузки данных.
Методы отдают результат в байтах, поэтому для наглядности в примере я перевел все данные в мегабайты при выводе.
#python#speedtest
🌟PyRoki: Библиотека кинематики роботов на Python.
PyRoki (Python Robot Kinematics) - это модульный, расширяемый и кроссплатформенный инструментарий, заточенный под задачи кинематической оптимизации и реализованный полностью на Python.
Фишка библиотеки - в предоставлении дифференцируемой модели прямой кинематики робота, которая строится на основе URDF-файлов, тем самым избавляя инженера от необходимости вручную прописывать кинематические цепи: система не только парсит описание робота, но и автоматически генерирует примитивы коллизий.
С точки зрения математического аппарата, PyRoki интегрируется с решателем Levenberg-Marquardt (через jaxls). Это дает возможность проводить оптимизацию на многообразиях, а также обрабатывать жесткие ограничения с помощью решателя на основе модифицированной функции Лагранжа.
Библиотека предлагает готовые реализации cost-функций: поза рабочего органа, коллизии с самим собой или объектами мира и метрики манипулируемости.
Если стандартного набора недостаточно, архитектура позволяет задавать свои функции затрат, используя как автоматическое дифференцирование, так и аналитические якобианы.
Благодаря базе JAX, библиотека кроссплатформенна: ее работа возможна на CPU, GPU и TPU.
🟡При внедрении PyRoki в пайплайн важно учитывать специфику JIT-компиляции в JAX.
Компиляция триггерится при первом запуске, а также каждый раз, когда меняются формы входных данных: например, количество целей или препятствий.
Чтобы избежать расходов на перекомпиляцию, рекомендуется использовать предварительный паддинг массивов, что позволяет векторизовать вычисления для входов с различными шейпами.
Также стоит учитывать, что в библиотеке отсутствуют планировщики, основанные на сэмплировании (графы, деревья), поэтому задачи глобального планирования пути придется решать внешними средствами.
🟡Типы поддерживаемых соединений и геометрия ограничены.
На данный момент PyRoki работает исключительно с кинематическими деревьями; замкнутые механизмы или параллельные манипуляторы не поддерживаются.
Список доступных типов джоинтов ограничен 4 позициями: вращательные, непрерывные, призматические и фиксированные. Любые другие типы соединений, встреченные в URDF, будут автоматически интерпретироваться системой как фиксированные.
Для геометрии коллизий набор примитивов также фиксирован: поддерживаются сферы, капсулы, полупространства и карты высот.
Если ваша модель использует сложные меши, коллизии для них будут аппроксимироваться капсулами.
В вопросах производительности, особенно в сценариях с интенсивными проверками коллизий, PyRoki, вероятно, уступает CuRobo, хотя, как говорится в документации - сравнительные тесты скорости и точности авторами пока не проводились.
📌Лицензирование: MIT License.
🟡Страница проекта
🟡Arxiv
🟡Документация
🖥GitHub
@ai_machinelearning_big_data
#AI#ML#Robotics#Pyroki#Python
#hacking#python
🐍
Python Hacking | Real Ethical Hacking with Python | PYCEH23+
Description:
This immersive and comprehensive course is designed to equip you with the knowledge and hands-on skills necessary to excel in the exciting world of ethical hacking.
With a focus on practical applications, this course covers everything you need to know about Python programming, making it accessible to both beginners and experienced programmers. You’ll embark on an exciting journey where you’ll learn how to harness the power of Python to manipulate MAC addresses, develop network scanners, execute Man-in-the-Middle attacks, intercept network traffic, create your own pentesting RAT (Remote Access Trojan) malware, and much more.
🌐En
🔗Link
-----
Main channel:@repo_science
Coupons:@freecoupons_reposcience
-----