Skip to content

na124441/HSARN

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

1 Commit
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐Ÿš€ HSARN: Hyper-Spectral Autonomous Risk Network

โœจ Project Overview

Welcome to the cutting-edge world of the Hyper-Spectral Autonomous Risk Network (HSARN)! This project represents a sophisticated, integrated tactical command and control system designed to revolutionize situational awareness and autonomous fleet management. HSARN is not just a collection of services; it's a cohesive ecosystem built to provide unparalleled real-time insights, proactive risk assessment, and intelligent automation in dynamic operational environments.

At its core, HSARN aims to bridge the gap between vast streams of raw data and actionable intelligence. By meticulously ingesting diverse data, constructing a living digital twin of the operational space (the World Model), and continuously assessing risks, HSARN empowers human operators with superior decision-making capabilities while orchestrating autonomous assets with precision and foresight. This system is engineered for resilience, scalability, and adaptability, making it an indispensable tool for complex missions where every second and every decision counts.

๐Ÿ—๏ธ Project Architecture & Structure

HSARN is meticulously designed with a modular, microservices-oriented architecture, ensuring robust performance, maintainability, and scalability. Each component plays a vital role, collaborating seamlessly to form a powerful, integrated system.

Let's explore the key pillars of the HSARN ecosystem:

  • ๐Ÿ–ฅ๏ธ electron_app (HSARN Command Center)

    • Role: The crown jewel of HSARN, serving as the primary Human-Computer Interaction (HCI) interface. This Electron-based application is the operator's window into the entire system.
    • Functionality:
      • Real-time Visualization: Presents a dynamic, interactive map and dashboard displaying the current World Model, including autonomous asset positions, environmental data, and identified risks.
      • Command & Control: Provides intuitive controls for tasking autonomous fleets, defining mission parameters, and overriding autonomous decisions when necessary.
      • Alerts & Notifications: Delivers critical alerts and risk assessments from the risk_assessment_engine directly to the operator, ensuring timely responses.
      • Data Presentation: Aggregates and visualizes data from all backend services into a coherent, actionable operational picture.
    • Technology: Built with Electron (Node.js, HTML, CSS, JavaScript/TypeScript), offering a cross-platform desktop application experience.
  • ๐Ÿง  hsarn/risk_assessment_engine

    • Role: The analytical brain of HSARN, a Python-based backend service dedicated to continuous, intelligent risk evaluation.
    • Functionality:
      • Threat Detection: Analyzes the World Model for potential threats, anomalies, and emerging risks based on predefined rules and machine learning models.
      • Vulnerability Assessment: Identifies system or environmental vulnerabilities that could be exploited.
      • Opportunity Identification: Beyond risks, it can also highlight potential opportunities or optimal courses of action.
      • Predictive Analytics: Utilizes historical data and current conditions to forecast future risk trajectories.
      • Integration: Consumes data from the world_model_builder and feeds its assessments back to the electron_app and potentially the aa_autonomy for adaptive behavior.
    • Technology: Python, leveraging powerful data science and machine learning libraries.
  • ๐ŸŒ world_model_builder

    • Role: The architect of HSARN's digital twin, this Python backend service is responsible for constructing, maintaining, and updating a comprehensive, real-time representation of the operational environment.
    • Functionality:
      • Data Fusion: Integrates diverse data streams from the ingestion service (e.g., sensor data, geospatial information, weather patterns, asset telemetry) into a unified, consistent model.
      • State Management: Keeps track of the current state of all entities within the operational space, including autonomous assets, targets, obstacles, and environmental factors.
      • Contextualization: Enriches raw data with semantic meaning, providing context for risk assessment and autonomous decision-making.
      • API Provision: Exposes an API for other services (like the risk_assessment_engine and aa_autonomy) to query and interact with the World Model.
    • Technology: Python, potentially utilizing databases (e.g., graph, relational, NoSQL) for efficient data storage and retrieval.
  • ๐Ÿค– aa_autonomy (Autonomy Engine Frontend)

    • Role: The interface for direct interaction with the autonomous fleet management system. While the core autonomy logic might reside elsewhere, this component provides the operational frontend.
    • Functionality:
      • Mission Planning Interface: Allows operators to define, modify, and monitor missions for autonomous assets.
      • Fleet Status Monitoring: Displays the real-time status, health, and current tasks of individual autonomous units.
      • Teleoperation & Intervention: Provides mechanisms for human operators to take direct control or intervene in autonomous operations if required.
      • Feedback Loop: Receives risk assessments and World Model updates to inform autonomous decision-making and adaptive behaviors.
    • Technology: Likely a web-based frontend (e.g., React, Angular, Vue.js) interacting with a backend autonomy service.
  • ๐Ÿค HCI (Human-Computer Interaction Interface)

    • Role: This module represents the overarching design principles and specific components dedicated to optimizing the interaction between human operators and the complex HSARN system. It ensures that information is presented clearly, controls are intuitive, and cognitive load is minimized.
    • Functionality:
      • Usability Engineering: Focuses on the design and implementation of user-friendly interfaces and workflows.
      • Feedback Mechanisms: Ensures operators receive clear and timely feedback on system status and actions.
      • Error Prevention & Recovery: Designs systems to minimize human error and facilitate quick recovery when errors occur.
    • Note: This might be a conceptual module encompassing design patterns and specific UI/UX components integrated across electron_app and aa_autonomy.
  • ๐Ÿ“ฅ ingestion (Data Ingestion Services)

    • Role: The data gateway of HSARN, responsible for robustly collecting, processing, and normalizing raw data from a multitude of external sources.
    • Functionality:
      • Data Source Integration: Connects to various sensors (e.g., optical, thermal, radar), external APIs, databases, and streaming data feeds.
      • Data Pre-processing: Cleans, filters, and transforms raw data into a standardized format suitable for the world_model_builder.
      • Real-time Streaming: Capable of handling high-throughput, real-time data streams to ensure the World Model is always up-to-date.
      • Error Handling & Resilience: Implements mechanisms to handle data loss, corruption, and source outages gracefully.
    • Technology: Python, potentially utilizing message queues (e.g., Kafka, RabbitMQ) for efficient data transport.

๐Ÿš€ Getting Started: Launching HSARN

Embarking on your HSARN journey is straightforward, thanks to our automated launch script. Follow these steps to bring the entire system online.

๐Ÿ“‹ Prerequisites

Before you can unleash the power of HSARN, please ensure your development environment meets the following requirements:

  • Git: Essential for cloning the repository and managing version control.
  • Node.js & npm: The backbone for our Electron application and other JavaScript-based frontends. We highly recommend installing a Long Term Support (LTS) version for stability.
  • Python 3.8+ & pip: Crucial for all our powerful backend Python services.
    • โžก๏ธ Download Python
    • Verification: After installation, open a new terminal and run python --version and pip --version to confirm they are correctly installed and added to your system's PATH. If pip is outdated, update it: python -m pip install --upgrade pip.

โš™๏ธ Installation and Launch Procedure

Our launch.bat script is your one-stop solution for setting up and running all HSARN components.

  1. Clone the Repository (if applicable): If you received this project as a compressed archive, simply extract it. Otherwise, use Git to clone the repository:

    git clone <repository_url>
    cd hsarn_inputv1 # Navigate into the project root directory
  2. Open a Command Prompt or PowerShell window.

    • Administrator Privileges: While not always strictly necessary, running your terminal as an administrator can sometimes resolve permission issues during dependency installation.
  3. Navigate to the Project Root Directory: Change your current directory to where the launch.bat file is located.

    cd E:\hsarn_inputv1 # ๐Ÿ‘ˆ **IMPORTANT**: Adjust this path to your actual project location!
  4. Execute the Launch Script: Simply type the script name and press Enter:

    launch.bat

๐ŸŽฌ What Happens When You Run launch.bat?

The launch.bat script orchestrates a series of critical steps to prepare and activate the HSARN system:

  1. Dependency Resolution (Node.js):

    • The script intelligently navigates into directories like electron_app, world_model_builder, and aa_autonomy (and any other sub-projects containing a package.json).
    • For each, it executes npm install to download and configure all required JavaScript libraries and frameworks. This ensures the frontend and Electron application have all their necessary components.
  2. Dependency Resolution (Python):

    • It then installs all Python packages specified in the requirements.txt file located in the project root. This command (pip install -r requirements.txt) ensures that the risk_assessment_engine, world_model_builder, and ingestion services have their respective scientific computing, data processing, and web framework dependencies.
  3. Component Launch:

    • Finally, the script initiates each major HSARN service. Crucially, each service is launched in its own dedicated command window. This allows for independent monitoring and management of each component. You will see separate windows appear for:
      • HSARN Command Center (the Electron app)
      • World Model Builder (Python service)
      • Risk Assessment Engine (Python service)
      • Autonomy Engine (Frontend)

โš ๏ธ Important Operational Notes:

  • Initial Setup Time: The very first execution of launch.bat will involve downloading numerous dependencies. This process can take a significant amount of time (minutes to tens of minutes) depending on your internet connection and system performance. Please be patient! Subsequent runs will be much faster as dependencies will be cached.
  • Keep Windows Open: The separate command windows for each service are not merely status indicators; they are the running processes themselves. Closing any of these windows will immediately terminate the corresponding HSARN service. Keep them open for as long as you wish the system to operate.
  • Python PATH Configuration: If you encounter errors related to Python or pip during installation, double-check that Python 3.8+ and pip are correctly installed and their executable paths are included in your system's PATH environment variable. This is a common source of initial setup issues.
  • Network Connectivity: An active and stable internet connection is mandatory for the initial download and installation of all project dependencies.

๐Ÿง‘โ€๐Ÿ’ป Development & Contribution

For developers eager to dive deeper or contribute to HSARN:

  • Individual Component Development:
    • Electron App: Navigate to the electron_app directory. You can typically run npm start (or a similar command defined in its package.json) to launch it in development mode.
    • Python Backends: For services like risk_assessment_engine or world_model_builder, navigate to their respective directories (e.g., hsarn/risk_assessment_engine). You can then run their main Python script directly (e.g., python main.py). Ensure you have installed all project-wide Python dependencies via pip install -r requirements.txt from the project root.
  • Code Standards: We adhere to high coding standards, including linting, formatting, and comprehensive testing. Please ensure your contributions align with the existing codebase style.

๐Ÿ› ๏ธ Troubleshooting Common Issues

Encountering a snag? Don't worry, here are some common issues and their solutions:

  • "Command not found" for python, npm, or pip:
    • Solution: This almost always indicates that Node.js/npm or Python/pip are not correctly installed or are not added to your system's PATH environment variable. Re-install them, paying close attention to the "Add to PATH" option during installation.
  • Dependency Installation Failures (npm install or pip install):
    • Console Output: The most crucial step is to carefully read the error messages in your terminal. They often pinpoint the exact problem (e.g., network issues, missing build tools, incompatible versions).
    • Node.js: Try clearing the npm cache (npm cache clean --force) and retrying. Ensure your Node.js version is compatible with the project's requirements.
    • Python: Verify your Python version (3.8+). Ensure pip is up to date (python -m pip install --upgrade pip). If you have multiple Python installations, ensure you're using the correct python and pip executables.
  • Electron App Stuck on Splash Screen / UI Issues:
    • Solution: Open the Developer Console within the Electron application. You can usually do this by pressing F12 or Ctrl+Shift+I. Navigate to the "Console" tab for JavaScript errors, and the "Network" tab for any failed API calls. These are invaluable for diagnosing frontend problems.
  • Backend Services Fail to Start / Crash Immediately:
    • Solution: Check the dedicated command window for that specific service. Look for Python tracebacks or error messages. Common causes include missing Python dependencies (re-run pip install -r requirements.txt), incorrect file paths, or configuration errors.
  • "Address already in use" Errors:
    • Solution: This means another process is already using a network port that one of HSARN's services needs. This can happen if you try to run HSARN multiple times, or if another application on your system is using the same port. You might need to identify and terminate the conflicting process, or modify the port configurations within the HSARN services (refer to individual service documentation for port settings).

If you've exhausted these troubleshooting steps and are still facing issues, please provide a detailed description of the problem, including the exact error messages and the context (which step you were on, which component failed) when seeking assistance.

๐ŸŒŸ Key Features

  • Dynamic World Model: Real-time, comprehensive digital twin of the operational environment.
  • Proactive Risk Assessment: AI-powered analysis for identifying threats, vulnerabilities, and opportunities.
  • Intuitive Command Center: Electron-based UI for superior situational awareness and control.
  • Autonomous Fleet Management: Advanced tools for mission planning and real-time asset orchestration.
  • Robust Data Ingestion: Seamless integration of diverse sensor and external data feeds.
  • Modular & Scalable Architecture: Designed for easy expansion and maintenance.

๐Ÿ—บ๏ธ Conceptual Architecture Diagram

(While I cannot generate an image, conceptually, the HSARN architecture can be visualized as follows:)

+-----------------------------------------------------------------------------------+
|                                 HSARN Ecosystem                                   |
+-----------------------------------------------------------------------------------+
|                                                                                   |
|  +-----------------+    +---------------------+    +--------------------------+   |
|  |   ๐Ÿ“ฅ Ingestion  |--->| ๐ŸŒ World Model      |<---| ๐Ÿง  Risk Assessment     |   |
|  | (Data Sources)  |    |   Builder           |    |   Engine                 |   |
|  +-----------------+    +---------------------+    +--------------------------+   |
|         ^                               ^                                         |
|         |                               |                                         |
|         |                               v                                         |
|  +--------------------------------------------------------------------------------+ |
|  |                                                                                | |
|  |                                 API Layer / Message Bus                        | |
|  |                                                                                | |
|  +--------------------------------------------------------------------------------+ |
|         ^                               ^                                         |
|         |                               |                                         |
|         v                               v                                         |
|  +-----------------+    +---------------------+    +--------------------------+   |
|  | ๐Ÿ–ฅ๏ธ Electron App |<---| ๐Ÿค– AA Autonomy      |<---| ๐Ÿค HCI Principles      |   |
|  | (Command Center)|    | (Fleet Frontend)    |    | (User Experience)        |   |
|  +-----------------+    +---------------------+    +--------------------------+   |
|                                                                                   |
+-----------------------------------------------------------------------------------+
  • Arrows indicate primary data flow and interaction.
  • Ingestion feeds raw data into the World Model Builder.
  • The World Model Builder provides the dynamic environment state to the Risk Assessment Engine.
  • Both the World Model Builder and Risk Assessment Engine expose APIs/data streams consumed by the frontend components.
  • The Electron App and AA Autonomy are the primary user-facing interfaces, guided by HCI Principles.

๐Ÿ”ฎ Future Enhancements

We are continuously striving to evolve HSARN. Future plans may include:

  • Integration of advanced AI/ML models for predictive maintenance and anomaly detection.
  • Expansion of autonomous capabilities with more complex mission profiles.
  • Enhanced multi-agent coordination and swarm intelligence.
  • Support for additional data sources and sensor types.
  • Further optimization for edge computing and low-bandwidth environments.

๐Ÿค Contributing

We welcome contributions from the community! If you're interested in making HSARN even better, please refer to our CONTRIBUTING.md file (if available) for guidelines on how to submit issues, propose features, and contribute code. Your expertise is invaluable!

๐Ÿ“„ License

This project is licensed under the [Your License Name] - see the LICENSE.md file for details. (Please replace [Your License Name] with the actual license of your project, e.g., MIT, Apache 2.0, etc., and ensure a LICENSE.md file exists in your project root.)

About

Human Supervised Autonomous Response Network

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors