Gói nhận dạng hệ thống


13

Tôi đã tìm kiếm một giải pháp thay thế cho Hộp công cụ nhận dạng hệ thống của Matlab, nhưng tính phổ biến của cụm từ "hệ thống" và "nhận dạng" đang gây bối rối cho việc tìm kiếm.

Có thư viện độc lập nào được viết cho mục đích này không? (trong C ++, C #, Python, v.v.)


Bạn đang tìm kiếm bất kỳ thuật toán cụ thể? Kinh nghiệm của tôi với hầu hết các hộp công cụ MATLAB là tôi sẽ sử dụng rất nhiều chức năng từ chúng. Bạn có thể có thành công tốt hơn với một tìm kiếm được nhắm mục tiêu hơn.
Jason R

@JasonR Rất đúng. Tôi đã tìm thấy các công cụ trong các ngôn ngữ khác dành riêng cho chuỗi thời gian nói chung, nhưng các mục cụ thể như Mô hình Hammerstein-Wiener (mà tôi thậm chí không chắc chắn rằng mình sẽ cần, nhưng vẫn khó). Các trang web trên nhiều mô hình này cũng có xu hướng trích dẫn Hộp công cụ nhận dạng hệ thống. Tôi có thể đặt câu trả lời cùng với những gì tôi đã tìm thấy cho đến nay.
jonsca

Câu trả lời:


7

Hộp công cụ nhận dạng hệ thống chứa các phương tiện cho

  • Xác định hệ thống tuyến tính và xác định chức năng chuyển giao
  • Mô hình "hộp đen" phi tuyến tính
  • Ước tính tham số ODE
  • Nhận dạng chuỗi thời gian

Một trong những sản phẩm thay thế hứa hẹn hơn cho tất cả các chức năng này sẽ được sử dụng R . Hai gói có kết hợp một số chức năng chuỗi thời gian là dòng tiện ích và phân tích gói Thời gianMôi trường Modeling linh hoạt cho Inverse Modeling, nhạy, Identifiability, Monte Carlo Phân tích. Cũng chia sẻ các chức năng này là gói Phân tích và Kiểm soát Chuỗi Thời gian

Một tùy chọn để tính toán và thao tác chức năng truyền (cố gắng thay thế hộp công cụ Matlab Control Systems, trùng với ID hệ thống một cách đáng kể) là Thư viện hệ thống điều khiển cho Python , nhưng CSL không có bất kỳ chức năng nào cho xử lý nhận dạng hệ thống, chỉ là khả năng thao tác các chức năng chuyển (nhờ JasonS đã chỉ ra điều này). Các Ch Hệ thống kiểm soát Toolkit cho phép một để mô hình tuyến tính hệ thống và xác định hàm truyền.

Tôi chắc chắn có những ví dụ khác, nhưng họ có thể đào một ít để khám phá.


Cảm ơn con trỏ đến Thư viện hệ thống điều khiển cho Python. Nó dường như không có bất kỳ tính năng ID hệ thống, tuy nhiên.
Jason S

@JasonS Tôi đã không xem xét công cụ này trong một thời gian dài, nhưng tôi sẽ cố gắng đưa ra một gói tốt hơn (chắc chắn là có một cái gì đó ở ngoài đó vào thời điểm này). Mặc dù CSL không có bất kỳ chức năng rõ ràng nào để nhận dạng hệ thống, nhưng nó có lớp Python để xử lý các chức năng chuyển. Tôi nghĩ có lẽ tôi sẽ làm rõ câu trả lời với điều đó.
jonsca

1

SIDPAC là một chương trình có sẵn miễn phí từ phần mềm.nasa.gov. Nó được nhắm mục tiêu vào các vấn đề id hệ thống máy bay tuy nhiên các phương pháp cơ bản được áp dụng cho các loại vấn đề khác.


Xin chào Charlie, nó dường như không còn có sẵn trên trang web của họ. Bạn có một liên kết trực tiếp?
jonsca
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.