Cara menetapkan bobot pada sebuah node dalam grafik jaringan berarah dan menghitung bobot node efektif

Masalah Saya:

  1. Saya memiliki satu set node, dengan beberapa node dihubungkan oleh tepi terarah.
  2. Saya ingin menetapkan bobot untuk setiap node dan setiap sisi.
  3. Terakhir saya ingin menghitung bobot node efektif berdasarkan pengaruh node yang terhubung.

Latar belakang:

  1. Saat ini saya menggunakan JUNG untuk menyelesaikan masalah saya.
  2. Saya melihat paket JUNG edu.uci.ics.jung.algorithms.scoring. Namun saya tidak yakin apakah mereka akan membantu saya mencapai tujuan saya.

person user1920253    schedule 20.12.2012    source sumber
comment
Ada banyak cara berbeda untuk menghitung bobot node [efektif] berdasarkan pengaruh node yang terhubung. JUNG memang menyediakan beberapa cara berbeda untuk melakukan itu dalam paket yang Anda identifikasi. Harap perjelas kebutuhan Anda: properti apa yang akan dimiliki oleh bobot node dan bobot tepi, dan bagaimana Anda mengharapkan properti tersebut membantu menentukan bobot node yang 'efektif'? Apa yang Anda harapkan dari semantik bobot simpul efektif? dll.   -  person Joshua O'Madadhain    schedule 22.12.2012
comment
Terima kasih Joshua telah meluangkan waktu untuk menjawab.   -  person user1920253    schedule 26.12.2012
comment
(1) Katakanlah saya memiliki grafik dengan banyak node dengan risiko yang telah ditentukan untuk setiap node. (2) Sekarang beberapa node ini terhubung ke node lain dengan tepi terarah. Tepian ini memiliki ketebalan yang bervariasi. yaitu, bergantung pada ukuran edge, risiko yang dihasilkan akan bervariasi. (3) Sekarang saya ingin menghitung risiko efektif dari node ini berdasarkan konektivitas. ‹br› Saya telah melihat paket penilaian JUNG. Saya tidak yakin algoritma mana yang perlu saya gunakan berdasarkan kebutuhan saya. Bisakah Anda menyarankan mana yang lebih tepat & apakah ada contoh penerapannya?   -  person user1920253    schedule 26.12.2012
comment
Anda masih belum memiliki spesifikasi yang cukup jelas untuk mendefinisikan suatu algoritma. Pada dasarnya, jika Anda menginginkan algoritma iteratif gaya PageRank, Anda perlu mendefinisikan bagaimana risiko untuk simpul N pada waktu T didefinisikan dalam kaitannya dengan risiko tetangga N (pendahulu? penerus?) pada waktu T-1. (Anda juga harus bisa membenarkan definisi ini pada tingkat tertentu.) Sederhananya, Anda tidak memiliki tujuan yang jelas, sehingga tidak mungkin memberi saran kepada Anda tentang cara mencapainya. Sampai Anda melakukannya, ini pada dasarnya adalah pertanyaan dalam desain model dan tidak ada hubungannya dengan perangkat lunak tertentu.   -  person Joshua O'Madadhain    schedule 28.12.2012


Jawaban (2)


Salah satu pendekatan jika mewakili node Anda sebagai kelas Java, dan bobot sebagai properti kelas ini. Anda dapat menyimpan sekumpulan tepian sebagai bidang kelas, dan menerapkan metode untuk menghitung bobot efektif (misalnya: getEffectiveWeight())

person gerrytan    schedule 20.12.2012
comment
BENAR. JUNG sudah menyediakan semua kerangka dasar ini yang tidak dapat digunakan dengan grafik. Pertanyaan saya lebih dari algoritma Grafik (misal: PageRank atau r EigenvectorCentrality) sebagai bagaimana saya dapat menetapkan bobot node dan menggunakan algoritma ini untuk menemukan pengaruh dari tepi ini. - person user1920253; 21.12.2012
comment
PageRank tidak menggunakan bobot node untuk menentukan skor per node. Jika (misalnya) Anda menganggap bobot simpul (awal) sebagai probabilitas dimulainya setiap simpul, distribusi probabilitas ini sebenarnya sama sekali tidak relevan dengan jawaban akhir, asalkan grafiknya terhubung kuat. (PageRankWithPriors adalah masalah yang berbeda.) - person Joshua O'Madadhain; 22.12.2012

Ada dua pendekatan yang terlintas dalam pikiran:

  1. Tambahkan bidang weight ke kelas Node dan Edge Anda.

  2. Buat dua Maps. Yang satu menggunakan Nodes sebagai kunci dan yang lainnya menggunakan Edges sebagai kunci. Kemudian simpan weight sebagai nilainya.

person Code-Apprentice    schedule 21.12.2012
comment
Jika kita berbicara tentang PageRank JUNG dan algoritme terkait, hal ini tidak diperlukan: bobot simpul (umumnya) ditetapkan oleh algoritme dan bobot tepi dapat diberikan dalam konstruktor jika diinginkan. - person Joshua O'Madadhain; 22.12.2012