2 điểm bởi GN⁺ 2024-08-19 | 1 bình luận | Chia sẻ qua WhatsApp

ALIEN - Khám phá thế giới sự sống nhân tạo

⚡ Tính năng chính

Công cụ vật lý và đồ họa

  • Mô phỏng động lực học vật thể mềm và vật thể rắn, chất lỏng, tản nhiệt, hư hại, độ bám dính, v.v. bằng hạt
  • Có thể tương tác với mô phỏng đang chạy theo thời gian thực
  • Mô phỏng chạy hoàn toàn trên GPU thông qua CUDA
  • Kết xuất và hậu xử lý qua OpenGL bằng khả năng tương tác CUDA-OpenGL

Mở rộng công cụ sự sống nhân tạo

  • Sinh vật đa bào được mô phỏng như mạng lưới hạt
  • Hệ thống di truyền và cấu hình thế hệ con ở cấp độ tế bào
  • Mạng nơ-ron để điều khiển các chức năng nâng cao (ví dụ: cảm biến và cơ bắp)
  • Có thể tùy chỉnh loại tế bào bằng nhiều màu sắc khác nhau
  • Hỗ trợ các tham số mô phỏng biến đổi theo không gian

Bộ công cụ chỉnh sửa phong phú

  • Trình chỉnh sửa đồ thị để thao tác hạt và liên kết
  • Công cụ vẽ tự do và hình học
  • Trình chỉnh sửa gene để thiết kế sinh vật tùy chỉnh
  • Tác vụ hàng loạt và chức năng thay đổi tỷ lệ (phóng to/thu nhỏ)

Mạng

  • Trình duyệt mô phỏng tích hợp
  • Tải xuống và tải lên tệp mô phỏng
  • Đề xuất mô phỏng bằng cách gắn sao

❓ Công cụ này hữu ích ở điểm nào

  • Thỏa mãn trí tò mò: khi các cỗ máy tự sao chép xuất hiện và đột biến được kích hoạt, bản thân mô phỏng sẽ tự vận hành mọi thứ
  • Giải trí: có thể tăng tốc và phá hủy hàng trăm nghìn cỗ máy bằng công cụ vật lý nhanh và chân thực
  • Tiếp cận học thuật: giải quyết những câu hỏi nền tảng về cách sự phức tạp hoặc các cấu trúc giống sinh vật xuất hiện từ những thành phần đơn giản
  • Công cụ nghệ thuật tạo sinh: tiến hóa là một lực sáng tạo tạo ra các hình dạng và hành vi mới

📘 Tài liệu

  • Tài liệu cho các phiên bản chính trước đó có tại alien-project.gitbook.io/docs
  • Phiên bản mới nhất có tài liệu ngắn gọn và hướng dẫn người dùng thông qua cửa sổ trợ giúp và chú giải công cụ trong chương trình

🖥️ Yêu cầu hệ thống tối thiểu

  • Cần card đồ họa Nvidia có compute capability từ 6.0 trở lên

💽 Trình cài đặt

  • Trình cài đặt cho Windows: alien-installer.msi (cập nhật: 2024-08-17)

🔨 Cách build từ mã nguồn

  • Để lấy mã nguồn, nhập lệnh sau trong thư mục phù hợp:
    git clone --recursive https://github.com/chrxh/alien.git
    
  • Các bước build:
    mkdir build && cd build
    cmake .. -DCMAKE_BUILD_TYPE=Release
    cmake --build . --config Release -j8
    

⌨️ Giao diện dòng lệnh

  • Bao gồm CLI cho phép chạy mô phỏng mà không cần dùng GUI
  • Ví dụ:
    .\cli.exe -i example.sim -o output.sim -t 1000
    

🔎 Khắc phục sự cố

  1. Kiểm tra card đồ họa NVIDIA có compute capability từ 6.0 trở lên hay không
  2. Cài đặt driver đồ họa NVIDIA mới nhất
  3. Đảm bảo tên thư mục cài đặt không chứa ký tự ngoài tiếng Anh
  4. Đảm bảo ALIEN có quyền ghi vào thư mục riêng của nó
  5. Nếu có nhiều card đồ họa, hãy đảm bảo màn hình chính được kết nối với card hỗ trợ CUDA
  6. Nếu có cả card đồ họa tích hợp và card rời, hãy thiết lập để dùng card hiệu năng cao

🌌 Ảnh chụp màn hình

  • Nhiều hệ thực vật khác nhau quanh nguồn bức xạ
  • Cận cảnh nhiều loại sinh vật khác nhau, có thể quan sát mạng lưới tế bào
  • Nhiều bầy đàn khác nhau tấn công hệ sinh thái
  • Trình chỉnh sửa gene

🧩 Đóng góp cho dự án

  • Có thể đóng góp qua GitHub Issues, Pull requests hoặc diễn đàn Discussion
  • Cung cấp nội dung mới, tạo hoặc chia sẻ tệp media, báo lỗi, yêu cầu tính năng, đặt câu hỏi hoặc gửi phản hồi
  • Hoan nghênh Pull requests cho việc sửa lỗi, dọn dẹp mã, tối ưu hóa hoặc các điều chỉnh nhỏ
  • Cần trao đổi trước đối với việc triển khai tính năng mới, refactor hoặc các thay đổi lớn

💎 Công trạng và phụ thuộc

  • Chủ yếu được phát triển và duy trì bởi Christian Heinemann
  • Các thư viện bên ngoài được sử dụng: CUDA Toolkit, Dear ImGui, ImPlot, ImFileDialog, boost, Glad, GLFW, glew, stb, cereal, zlib, zstr, OpenSSL, cpp-httplib, googletest, vcpkg, WinReg, CLI11

🧾 Giấy phép

  • ALIEN được cấp phép theo giấy phép BSD 3-Clause

Tóm tắt của GN⁺

  • ALIEN là công cụ mô phỏng sự sống nhân tạo, sử dụng công cụ hạt 2D dựa trên CUDA để mô phỏng vật thể mềm và chất lỏng
  • Đây là công cụ vừa thú vị vừa mang tính giáo dục, cho phép người dùng thiết kế nhiều loại sinh vật và quan sát quá trình tiến hóa
  • Có thể giúp hiểu các điều kiện tiến hóa của những hệ sinh học phức tạp
  • Cung cấp nhiều công cụ chỉnh sửa như trình chỉnh sửa gene để thiết kế sinh vật theo nhu cầu người dùng
  • Cần card đồ họa NVIDIA và nên kiểm tra driver mới nhất cũng như các vấn đề tương thích

1 bình luận

 
GN⁺ 2024-08-19
Ý kiến trên Hacker News
  • Tài liệu khuyến nghị cho người mới bắt đầu: đề xuất https://natureofcode.com/

    • Nhắm đến người mới bắt đầu và dùng thư viện JS, nhưng các ý tưởng được trình bày mang tính tổng quát
  • Trải nghiệm với mô phỏng Alien: đã chạy mô phỏng Alien trong vài tháng

    • Dùng thiết lập ban đầu "RGB Triad", và ba loại sinh vật đã hình thành các cấu trúc tế bào phức tạp
    • Có các "tinh thể" hình học, những sợi dài cố ăn sinh vật khác, và các cấu trúc gai tạo thành tường
  • Dự án mô phỏng Alien: dự án này thật đáng kinh ngạc

    • Chương trình dựa trên console của người bình luận tiến triển chậm, nhưng dự án này thì rất nhanh
  • Ký ức về game Flash: nhớ một game Flash nơi các hạt nhỏ có hành vi riêng

    • Mỗi hạt có thể va chạm, phản ứng, biến đổi hoặc phá hủy hạt khác
    • Emergent gameplay luôn rất thú vị
  • Chia sẻ liên kết video: khó tìm video trên GitHub nên đã chia sẻ vài liên kết

  • Câu hỏi về cách di chuyển khung nhìn: thắc mắc làm thế nào để di chuyển khung nhìn

  • Liên kết website: https://alien-project.org/

  • Khả năng chạy trên AMD: có thể cũng chạy được trên AMD

  • Sự tương đồng với Permutation City: giống với phần mở đầu của Permutation City

  • Đánh giá phần mềm: phần mềm này rất cuốn hút

    • Đã thử một lúc, và đây là một sandbox tiến hóa nhỏ gọn