مقدمة:
Jade عبارة عن framework مكتوب كلية بالجافا مصمم خصيصا لبرمجة الأنظمة متعددة العملاء multi agent systems
سنحاول في هذه الدرس إلقاء الضوء على طريقة تنصيب الـ framework و كيفية كتابة أول Agent يقوم بطباعة جملة صغيرة
متابعة ممتعة
I/التنصيب و تشغيل الـمنصة:
1/ قم بتحميل الملف JADE-all-3.6.zip من العنوان http://jade.tilab.com/download.php
2/ قم بفك ضغط الملف
سنفرض في باقي الدرس أن المجلد الناتج بعد عملية فك الضغط هو
JADE-all-3.6 est le c:\ JADE-all-3.6 |
ثم فك ضغط الملفات الأربعة الناتجة ذات الأسماء
JADE-bin-3.6.zip , JADE-doc-3.6.zip, JADE-examples-3.6.zip, JADE-src-3.6.zip |
3 / الآن يجب التعديل على متغير النظام CLASSPATH
إذا لم يكن هذا المتغير موجودا يجب إنشاؤه (في غالب الأحيان لن نجد هذا المتغير موجودا لهذا يجب إنشاؤه)
نقوم بإنشاء هذا المتغير كالتالي:
– قم بعمل click يمين على My Computer و اختر proprieties
– اختر لسان التبويب advanced
– اختر environment variables
– في قسم system variables ابحث عن المتغير CLASSPATH إذا لم تجده قم بإنشائه و قم بإعطائه القيمة التالية
C:\JADE-all-3.6\JADE-bin-3.6\jade\lib\http.jar;C:\JADE-all-3.6\JADE-bin-3.6\jade\lib\iiop.jar;C:\JADE-all-3.6\JADE-bin-3.6\jade\lib\jade.jar;C:\JADE-all-3.6\JADE-bin-3.6\jade\lib\jadeTools.jar |
و التي هي عبارة عن مسارات الملفات
http.jar iiop.jar jade.jar jadeTools.jar
|
الموجودة في
c:\JADE-all-3.6\JADE-bin-3.6\jade\lib |
مفصولة فيما بينها بـ ;
احفظ التغييرات
للتأكد من أن كل الخطوات السابقة تمت جيدا اكتب في نافذة run (start->run) أو في نافذة dos الأمر التالي:
Java jade.Boot -gui |
ستظهر نافذة dos تقوم بتشغيل منصة الـ JADE
II/إنشاء أول عميل باستخدام jade:
الآن سنقوم بإنشاء أول Agent باستعمال jade
سنستعمل المثال المرفق مع المنصة و التي تجدونه في
C:\JADE-all-3.6\JADE-examples-3.6\jade\src\examples\hello |
نفتح eclipse ننشئ مشروعا جديدا و ليكن اسمه MyFirstAgent
نضيف package جديد و ليكن اسمه firstAgent
و من ثم ننشئ class جديدة اسمها HelloWorldAgent
ننسخ الكود التالي في الـ class
package firstAgent; import jade.core.Agent; /** This example shows a minimal agent that just prints “Hallo World!” and then terminates. @author Giovanni Caire – TILAB */
public class HelloWorldAgent extends Agent {
protected void setup() { System.out.println(“Hello World! My name is “+getLocalName()); // Make this agent terminate doDelete(); } } |
ملاحظة: لن نهتم بشرح كل سطر و عمله لكن نهتم بكيفية الترجمة و تشغيل الـ Agent
نلاحظ وجود بعد الأخطاء في الكود مرد ذلك إلى أن eclipse لم يعرف مكان تواجد بعض الـ class التي يستعملها البريمج الصغير
نحل المشكل كالتالي:
clickيمين على اسم المشروع و اختر proprieties
و من ثم اختر
java build path >> Libraries>> add external JARs |
قم بإضافة ملفات jar الأربعة التالية
الموجودة في
C:\JADE-all-3.6\JADE-bin-3.6\jade\lib |
و من ثم اضغط على OK
الآن سنقوم بترجمة و تشغيل البرنامج
اذهب إلى
run>>Run configuration |
و من ثم double click على java application
في لسان التبويب main و في خانة main class اكتب
jade.Boot
و قم باختيار
« Include librairies when searching for a main class » |
و في لسان تبويب arguments قم بكتابة التالي:
-gui jade.Boot <AgentName>:<PackageName>.<ClassName> |
أي في مثالنا هذا سنكتب
-gui jade.boot smith:firstAgent.HelloWorldAgent |
اضغط على apply لحفظ التغيرات لكيلا نعيد العملية في كل مرة في المشروع الواحد
ومن ثم اضغط على run
ستظهر لك النتيجة و هي طباعة الـعبارة التالية في الـ console
Hello World! My name is smith |
يمكنك قراءة هذا الموضوع باللغة الفرنسية هنا:
لو سمحت اريد ان اعرف كيف اعمل اكتر من عميل فى نفس الوقت.
و كيف يمكن لهؤلاء العملاء ان يرسلوا بعضهم ؟
يمكن إطلاق أكثر من عميل باستعمال سطر الأوامر و ذلك كالتالي
java jade.Boot nameAgent1:ClassAgent1 nameAgent2:ClassAgent2 nameAgentN:ClassAgentN
أما عن التواصل فيما بينهم اقرأ الدرس الآخر المسمى
الـ Communication بين عملاء الـ Jade
من هنا:
السلام عليكم ورحمه الله
مشكور اخي علي الشرح
اولا
“ستظهر نافذة dos تقوم بتشغيل منصة الـ JADE”
لم تظهر المنصة كما يوجد عند فقط شاشة dos
وبالنسبه للبرنامج لم يعمل ايضا علما باني استخدم NETBEANS
ويعطي رسالة بانه لايوجد MAIN CLASS
الرجاء مساعدتي في الحل
الدرس مخصص لكيفية إنشاء أول عميل بالـ eclipse
لم يسبق لي استعمال الـ netbeans لكتابة Jade Agents
السلام عليكم بارك اله فيك اخي واثابك على جهودك
طبقت المثال الموجود بالأعلى لكن ان اردت تطبيقه مرة اخرى تضهر لي هذه الجمله INFO: JADE is closing down now.
علما بأنني قمت باغلاق برنامج eclipse وفتحه مرة اخرى وتضهر لي نفس الرساله
ثم قمت بحذفه واعاده انشاء ملف جديد وتضهر نفس المشكله..
يجب إغلاق الـ JADE كاملا قبل إعادة إطلاق عميل مرة أخرى لأنه لا يمكن إطلاق منصتي JADE على نفس الجهاز
كيف يتم الإغلاق:
هناك طريقتان:
في شاشة الـ JADE، انقر على File ثم Shut down agent platform و لا تقم بإغلاق النافذة فقط، لأن النافذة عبارة عن عميل يسمى GUI بعبارة أخرى إن أغلقت النافذة فإنك ستقتل العميل المسؤول عن الواجهة الرسومية فقط.
أو من خلال Eclipse من خلال النقر على المربع الأحمر لإيقاف تشغيل البرنامج .
هناك طريقة ثالثة و هي في حالة ما إذا لم تنجح أي من الطريقتين السابقتين و هي بإعادة تشغيل الـ Process الخاص بالـ java و أقصد بالتحديد كل الـ Process التي تحمل اسم javaw.exe
اخي الكريم بارك أشكرك ..
لكن المشكله مازالت الى الان موجودة ..بالنسبة للطريقة الاولى انني قمت بغلق نافذة الجاد لم اكن اعلم بهذه الطريقه وانا الان احاول لعمل الرن لتظرهلي النافذة مرة اخرى .
وبالنسبه للطريقة الثانيه قمت بتجربة الطريقه وعدت الرن من جديد ونفس المشكلة ..
وبالنسبة للطريقة الثالثه لم افهم طريقتك جيدا لكنني قمت بفتح ملف الجافا الموجود في program files
ودخلت على lib وقمت بالضغط على جميع .exe
09/03/2010 11:56:01 م jade.core.Runtime beginContainer
INFO: ———————————-
This is JADE 3.7 – revision 6154 of 2009/07/01 17:34:15
downloaded in Open Source, under LGPL restrictions,
at http://jade.tilab.com/
—————————————-
09/03/2010 11:56:03 م jade.core.AgentContainerImpl joinPlatform
SEVERE: Some problem occurred while joining agent platform.
jade.core.ProfileException: Can’t get a proxy to the Platform Manager [nested jade.core.IMTPException: Communication failure while starting JADE Runtime System. Check if the RMIRegistry CLASSPATH includes the RMI Stub classes of JADE. [nested java.rmi.server.ExportException: Port already in use: 1099; nested exception is:
java.net.BindException: Address already in use: JVM_Bind]]
at jade.core.ProfileImpl.createPlatformManager(ProfileImpl.java:574)
at jade.core.ProfileImpl.getPlatformManager(ProfileImpl.java:487)
at jade.core.ProfileImpl.getServiceManager(ProfileImpl.java:501)
at jade.core.AgentContainerImpl.init(AgentContainerImpl.java:342)
at jade.core.AgentContainerImpl.joinPlatform(AgentContainerImpl.java:478)
at jade.core.Runtime.createMainContainer(Runtime.java:148)
at jade.Boot.(Boot.java:130)
at jade.Boot.main(Boot.java:70)
Nested Exception:
jade.core.IMTPException: Communication failure while starting JADE Runtime System. Check if the RMIRegistry CLASSPATH includes the RMI Stub classes of JADE. [nested java.rmi.server.ExportException: Port already in use: 1099; nested exception is:
java.net.BindException: Address already in use: JVM_Bind]
at jade.imtp.rmi.RMIIMTPManager.exportPlatformManager(RMIIMTPManager.java:273)
at jade.core.ProfileImpl.createPlatformManager(ProfileImpl.java:563)
at jade.core.ProfileImpl.getPlatformManager(ProfileImpl.java:487)
at jade.core.ProfileImpl.getServiceManager(ProfileImpl.java:501)
at jade.core.AgentContainerImpl.init(AgentContainerImpl.java:342)
at jade.core.AgentContainerImpl.joinPlatform(AgentContainerImpl.java:478)
at jade.core.Runtime.createMainContainer(Runtime.java:148)
at jade.Boot.(Boot.java:130)
at jade.Boot.main(Boot.java:70)
Nested Exception:
java.rmi.server.ExportException: Port already in use: 1099; nested exception is:
java.net.BindException: Address already in use: JVM_Bind
at sun.rmi.transport.tcp.TCPTransport.listen(TCPTransport.java:310)
at sun.rmi.transport.tcp.TCPTransport.exportObject(TCPTransport.java:218)
at sun.rmi.transport.tcp.TCPEndpoint.exportObject(TCPEndpoint.java:393)
at sun.rmi.transport.LiveRef.exportObject(LiveRef.java:129)
at sun.rmi.server.UnicastServerRef.exportObject(UnicastServerRef.java:190)
at sun.rmi.registry.RegistryImpl.setup(RegistryImpl.java:92)
at sun.rmi.registry.RegistryImpl.(RegistryImpl.java:78)
at java.rmi.registry.LocateRegistry.createRegistry(LocateRegistry.java:186)
at jade.imtp.rmi.RMIIMTPManager.getRmiRegistry(RMIIMTPManager.java:209)
at jade.imtp.rmi.RMIIMTPManager.exportPlatformManager(RMIIMTPManager.java:223)
at jade.core.ProfileImpl.createPlatformManager(ProfileImpl.java:563)
at jade.core.ProfileImpl.getPlatformManager(ProfileImpl.java:487)
at jade.core.ProfileImpl.getServiceManager(ProfileImpl.java:501)
at jade.core.AgentContainerImpl.init(AgentContainerImpl.java:342)
at jade.core.AgentContainerImpl.joinPlatform(AgentContainerImpl.java:478)
at jade.core.Runtime.createMainContainer(Runtime.java:148)
at jade.Boot.(Boot.java:130)
at jade.Boot.main(Boot.java:70)
Caused by: java.net.BindException: Address already in use: JVM_Bind
at java.net.PlainSocketImpl.socketBind(Native Method)
at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:359)
at java.net.ServerSocket.bind(ServerSocket.java:319)
at java.net.ServerSocket.(ServerSocket.java:185)
at java.net.ServerSocket.(ServerSocket.java:97)
at sun.rmi.transport.proxy.RMIDirectSocketFactory.createServerSocket(RMIDirectSocketFactory.java:27)
at sun.rmi.transport.proxy.RMIMasterSocketFactory.createServerSocket(RMIMasterSocketFactory.java:333)
at sun.rmi.transport.tcp.TCPEndpoint.newServerSocket(TCPEndpoint.java:649)
at sun.rmi.transport.tcp.TCPTransport.listen(TCPTransport.java:299)
… 17 more
09/03/2010 11:56:03 م jade.core.Runtime$1 run
INFO: JADE is closing down now.
وعذرا على الاطاله
فإن كانت هناك حلول اخرى أكون شاكرة لك وممتنة..
هناك حل إذا لم تنقع أي من الحلول السابقة
لما يظهر المشكل
افتحي نافذة الدوس
start > run
و من ثم اكتبي
cmd
اكتبي بعدها الأمر
taskkill /f /im javaw.exe
من المفروض أن يتم حل المشكل
أخبريني بنتيجة ذلك
و السلام عليكم
لقد كتبت ذلك وظهرت لي هذه الجمله ف الدوس
‘taskkill’ is not recognized as an internal or external command,
operable program or batch file.
هل يجب علي ان أذهب تحت dirctory محدد ليتنفذ الأمر أم أكتب الامر بمجرد ماتفتح معي شاشة الدوس..
شاكرة لك تعاونك
تستعملين أي نظام تشغيل ؟
و ما هي إصدارته؟ Home، professionel ؟
رسالة الخطأ هذه تخص النظام
استعملي الـTask manager
(ctrl+alt+del)
و ابحثي في قائمة الـ Process عن javaw.exe و قومي بإيقافه (أو بإيقافها إن وجدت أكثر من واحد)
أنا استخدم windowsXP home
قمت بفتح Task manger وبحثت في قائمة البروسيس ولم أجد javaw.exe
هل تقترح علي أن أقوم بحدف eclips وارجع أثبته من جديد؟؟؟
يجب البحث عن الـ Java.exe بعد ظهور رسالة الخطأ و ليس قبل ذلك
لا أظن أن المشكل يكمن في الـ Eclipse لكن أظن أنه من الأفضل إعادة تنصيبه لقطع الشك باليقين 🙂
أشكرك أشكرك
جزاك الله كل خير وأعطاك كل ماتتمنى ..
بحمد الله ضبط معي بعد أن ظهرت رساله الخطأ ذهبت لtask manager
وأوقفت البروسيس
واشتغل معاي الرن ..
بارك الله في جهووودك
انا لدي مشكلة ..
الفايلات
http.jar
iiop.jar
jade.jar
jadeTools.jar
عندما حملت ال
jade 4
لا يوجد الا jade.jar
والباقي غير موجود مما جعل ال
eclipse
لا يعمل فما هو الحل
لم أستعمل الإصدار الرابع من قبل
هل جربت أن تكتفي بمناداة الـ Jar الوحيد الموجود في الإصدار الرابع بدل ملفات Jar الموجودة في الإصدارات السابقة ؟
شكرا لك نعم جربت ذلك لكنه لم يعمل
و هل حذفت الأسطر التي تستدعي تلك الملفات؟
ما هي رسالة الخطأ التي تظهر لك ؟
اخي الكريم ذهبت للموقع وحملت الاصدار
3.6
المستخدم هنا في المثال وطبقت الخطوات تماما
ومع ذلك المشلكلة تظهر في ال
eclipse
انه غير قادر على ايجاد ال
jade.boot
فهمت الآن
المشكل يكمن في طريقة لكتابة Boot حيث يجب كتابتها بحرف B كبير و ليس b صغير
جرب من جديد و أخبرنا بالنتيجة
شكرا لك ,, لم يعطي اي error
لكنه لم يعط نتيجة البرنامج ,, فقط اعطى warnings
على كل حال شكرا لسعة صدرك وقد ارسلت لك رسالة على بريدكم الالكتروني اتمنى ان تطلع عليها
السلام عليكم
بفضل الله وبفضل شرح الأخ الكريم تذللت المشاكل
الآن اسأل هل من مكان يمكننا من خلاله ان نحمل امثلة لحركة ال
agent
مكتوبة بال
jade
وشكرا لكم
للأسف الشديد، المصادر حول الـ Jade قليلة جدا
إن استطعت الحصول على هذا الكتاب قد تجد فيه ضالتك
كما توجد بعض الأمثلة المرفقة مع الـ Jade
شكرا جزيلا لك
أسأل عن main
الذي يبدا التطبيق منه ,, حيث اني لم اجده في الامثلة المرفقة
مع البرنامج ,, حيث اني شرعت بكتابة كود مفصل عنه
لكن المشكلة عندي في معرفة هل هناك
Main in Jade
وشكرا لكم
لا يوجد main في الـ Jade
البرمجة باستعمال الـ Jade مختلفة كثيرا عن البرمجة “الكلاسيكية”
شكرا على ردك
لكن من اين يتم التطبيق في ال
jade
يعني عندي
4 classes
من سيتم تنفيذه بالاول ؟؟
على اي اساس يعتمد في ذلك
وسؤال آخر
jade.Boot
اين يكون موجود , من اين يعمل بوت لل
jade
تود أن تقول أنه لديك 4 agents؟
هناك أكثر من طريقة لإطلاق العميل،إما من خلال Eclipse مباشرة مثلما هو موضح في هذا الدرس أو من خلال نافذ الـ Jade مباشرة
توقف موقع jade عن العمل , ارجو من الجميع المساعدة
لا يزال يعمل لدي
http://jade.tilab.com/
كل عام وانتم بخير ,, كيف بالامكان ان اقوم بنقل agent من container الى اخر
استعمل الدالة
doMove()
انا اقصد من خلال ال
gui
المخصص لل
jade
وكذلك بالنسبة ل
domove()
سأكون بحاجة ل
address
معين هل هناك مثال معين لذلك مع الشكر الجزيل
لا أدري إن هناك إمكانية لنقل عميل عبر الـ GUI
بخصوص الأمثلة ستجدها مرفقة مع الـ Jade
السلام عليكم ورحمة الله وبركاته
اني اعمل على النسخة 3.6 وحاولت تطبيق مثال booktrading كالتالي
with eclipse
new java -> new package -> new class
ووضعت
3 classes
كما هم بالامثلة المرفقة ثم عرفت ال
external jar
كما هو مبين في المدونة الكريمة
في main وضعت
jade.Boot
واشارة الصح على اول حيار تحت ذلك
وفي ال
argument
-gui -container -host local host a:examples.bookTrading.BookBuyerAgent
b:examples.bookTrading.BookSellerAgent
c:examples.bookTrading.BookSellerGui
الان المشكلة انه عند التطبيق
تظهر شاشة ال
jade
وتظهر ال
gui
للـ
seller
فقط والتي تطلب ادخال اسم الكتاب وسعره ويستمر الادخال ولا يتوقف
المشكلة ان ال
jade
لا يظهر الا الاجينت المخصص لل
seller
ولا يظهر ال
gui
الخاصة بال
buyer
مع العلم ان شرح المثال يقول انه هناك مثلا كتابين واحد بعشر دولارات والثاني بعشرين
والمشتري يشتري السعر الارخص
ارجو المساعدة في المشكلة التي عندي ودمتم بخير
أخي علي أصدقك القول، طيلة عملي مع Jade لم أفلح و لم لمرة واحدة تجربة مثال booktrading
أراه مثالا “معقدا” نوعا ما، أنصحك أن تبدأ مع غيره
السلام عليكم بارك الله فيكم على هذه المدونة
لدي سؤال عن الدالة
createNewAgent(java.lang.String nickname, java.lang.String className, java.lang.Object[] args)
ماذا يمثل ال
nickname
ماذا يمثل ال
className
أليس اسم ال
agent
واسم ال
class
يدلان على نفس الشيء فما هو الداعي لتعريف اسم لل
agent
وآخر لل
class
ٍClass اسم الملف الخاص بالـ Agent
NickName هو اسم الـ Agent
يمكن مثلا إطلاق أكثر من نسخة من نفس العميل و كل عميل يحمل اسما مختلفا
السلام عليكم ورحمة الله تعالى وبركاته
قمت بجميع الخطوات وأضفت class path
وبعد كتابة الأمر Java jade.Boot -gui
في dos لم تظهر منصة jade
على الرغم من انه لدي ‘jdk’
eclipse+machine virtuelle
ولم أدري ما هو المشكل بالضبط
أخـــــــــــــــوكم في الله كمال
ما هي رسالة الخطأ التي تظهر لك
بعد تنفيذ الكود في eclipse يظهر plate-forme JADE
كيف اقوم بثمثيله ؟؟؟interface
أخت مروى سؤالك غير واضح
هل يمكن أن تعيدي شرح سؤالك من جديد ؟
السلام عليكم
يعني الرسم أشكال agent رأيتها في أمثلة
بشكل آخر كيف استخدم interface -واجهة الجاد
شكرا للرد السريع
تقصدين برمجة عميل له واجهة رسومية (GUUI Agent)؟
إن كان الأمر كذلك فالأمر متعلق ببرمجة الواجهات الرسومية في الـ Java بشكل عام و لا يخص الـ Jade لوحده (يعني يجب أن تدرسي كيفية كتابة واجهات رسومية بالـ Java و تطبيق نفس الأمر على الـ Jade)
وبماذا تنصحني كتب أو مقالات ممكن استفيد منها ؟؟
السلام عليكم
أخي الفاضل وددت أقترح عليك أمر وان شاء الله تستطيع عمله وهو
عمل فيديو فيه كيفية انشاء عميل في eclipse وكيفية تمثيله في الجاد
أختي الفاضلة تتبعي الدرس و ستصلين إلى ما تطلبينه
قام بتبع الدرس العشرات و كلهم نجحوا في إنشاء أول عميل لهم
بالمناسبة عمل فيديو يتطلب جهدا أكبر من كتابة درس (سبق و أن عملت دروس فيديو و يستغرق ذلك حوالي أربع أضعاف الوقت اللازم لكتابة الدرس)
أعلم ذلك ليس بالأمر السهل
وصراحة كلامك صحيح وانا من هؤلاء الحمد لله كله تمام لأن الشرح بأسلوب رائع ومستساغ جدا ولكن ما قصدته ما بعد كتابة الكود البرمجي
اي كيف نمثل هذا العميل في واجهة الجاد ؟؟
أو بمعنى آخر شرح مبسط لواجهة الجاد للمبتدئين …
وأيضا في تنصيب الجاد يوجد ملف لم تذكره على حسب علمي هم 5 وليس 4 ملفات
والخامس هو commons-codec لأنه حدثت معي مشاكل في التنصيب وهذا الملف كان هو الحل
؟؟؟؟؟؟؟؟
السلام عليكم أردت أن أسأل في eclipse و jade
أردت انشاء base de données -BDD- هل أنشئها بكود ؟؟وهل يستطيع الجاد توفير قاعدة معطيات للــ AGENT ؟؟
في هذه الحالة يجب التعامل مع العميل كتطبيق كلاسيكي ، يعني يتم إنشاء و استعمال قاعدة البيانات مثلما يتم إنشاؤها و استعمالها مع تطبيق Java كلاسيكي
ملاحظة: ينصح باستعمال نظام إدارة قواعد البيانات HSQL مع الـ Jade
ماذا تقصد التعامل مع العميل كتطبيق كلاسيكـــــــي ؟؟
وبالنسبة للعمل على HSQL كيف يتم ربطه مع الــ JADE ؟؟
يعني كما سبق و أن قلت أن تنشئي قاعدة البيانات و التعامل معها مثلما تتعاملين مع قواعد البيانات في تطبيقات Java “العادية” أو “التقليدية”
بخصوص HSQL لم سيث لي التعامل معه لكن قرأت فقط أنه ينصح باستعماله مع الـ Jade
آآآه حسنا شكرا لك
ويالمناسبة انا أعمل على انشاء systeme de recherche de Doc
باستخدام Agent Mobile وأحتاج BDD لفهرسة الملفات
السلام عليكم
بالنسبة لتصمـــيم La conception du système -SMA-
هل يوجد وسيلة نستطيع نصمم بها في Auml مثل ماهو موجود في UML مثلا StartUML ؟؟؟
لا أدري
كنت أستعمل Word 2007 للقيام بذلك 🙂
السلام عليــكم
هل صممت بــ AUML أم بــ UML ؟؟؟
وهــل سبق وان عملـــت بــ Mobile agent UML -MAUML- ؟؟؟
وهـذا رابط يتحدث عن MAUML
http://books.iqbuy.ru/categories_offer/9786131530371/conception-et-implementation-des-agents-mobiles-sur-la-base-d-uml-profil-ma-uml-pour-les-agents-mobiles
في رأيــك أيهما أفضل AUML أم MA UML ؟؟
السلام عليكم
أخي العزيز إنا من المهتمين بـ jade ولدي بحث أقوم بانجازه ,ولكنني أواجه صعوبة في تنفيذ هجرة للـ mobile Agent من platform إلى platform أخر , مع إنني تمكنت من إضافة remote platform بشكل صحيح ,إنا استخدم jade version 4.0.1 كما إنني اعمل في نفس الوقت على jade version 3.6.1 ولا أواجه أي مشاكل في إرسال واستلام الرسائل بين Agents .أتمنى ان يكون من الإخوة الأعزاء من قام بتنفيذ
Agent Migration ِto remote platform
ان يساعدني في حل هذه المشكلة ويجيب عن أسئلتي في المدونة أو يراسلني على ايميلي Dalal_am@yahoo.com مع الشكر الجزيل .
السلام عليكم
اتسأل هل ان هذه المدونة قد توقفت عن تقديم خدماتها لانني منذ فترة لا اجد فيها اي مشاركات جديدة او ما هو سبب عدم وجود اي مشاركات جديدة او اجابات من قبل الاخ الكريم صاحب المدونة.
وجزاكم الله خيرا .
اكتب و اجيب حسب الاستطاعة و التفرغ
عذرا فلا املك اجابات لكل ما يطرح من أسئلة
بالتوفيق
و السلام عليكم
السلام عليكم ورحمة الله وبركاته
اخي الفاضل اشكر لك هذا الشرح الاكثر من رائع
الحمد لله اشتغل معاي الجيد ولكن لا ارى اي و اجهه
فكيف اشغل الواجهه و ابدا التعامل مع الجيد
الرساله التي تظهر لي هي : ولكن اين الانترفيس ؟؟
Microsoft Windows [Version 6.1.7600]
Copyright (c) 2009 Microsoft Corporation. All rights reserved.
C:\Users\toshiba>java jade.Boot
02/06/2011 02:16:20 ع jade.core.Runtime beginContainer
INFO: ———————————-
This is JADE 3.6 – revision 6032 of 2008/05/05 14:07:10
downloaded in Open Source, under LGPL restrictions,
at http://jade.tilab.com/
—————————————-
02/06/2011 02:16:22 ع jade.core.BaseService init
INFO: Service jade.core.management.AgentManagement initialized
02/06/2011 02:16:22 ع jade.core.BaseService init
INFO: Service jade.core.messaging.Messaging initialized
02/06/2011 02:16:22 ع jade.core.BaseService init
INFO: Service jade.core.mobility.AgentMobility initialized
02/06/2011 02:16:22 ع jade.core.BaseService init
INFO: Service jade.core.event.Notification initialized
02/06/2011 02:16:22 ع jade.core.messaging.MessagingService clearCachedSlice
INFO: Clearing cache
02/06/2011 02:16:23 ع jade.mtp.http.HTTPServer
INFO: HTTP-MTP Using XML parser com.sun.org.apache.xerces.internal.jaxp.SAXParse
rImpl$JAXPSAXParser
02/06/2011 02:16:23 ع jade.core.messaging.MessagingService boot
INFO: MTP addresses:
http://toshiba-PC:7778/acc
02/06/2011 02:16:23 ع jade.core.AgentContainerImpl joinPlatform
INFO: ————————————–
Agent container Main-Container@toshiba-PC is ready.
——————————————–
ما هو الأمر الذي استعملته لتشغيل الـ Jade ؟
أعتقد أنك نسيت إضافة -gui إليه
شكرا لك أخي الكريم وشكرا لكل الشباب المشاركين بالنقاش في مدونتك اتمنى ان أواصل التداخل معكم دائما ومثلما قال احد الاخوان ان JADE وموضوع Multiagent عموما لا تتوفر له مصادر كافية ولا حتى باللغة الانجليزية. الى الأمام اخوتي.
شكرا لكم
شكرا لك على هذه المعلومات القيمة لكني والحمد لله قد نصبت الjadeوهو يعمل لكني في حاجة الى معلومات اكثر تفصيلا عن معماريتهjade architectureوشكرا لك
thanks.
I have used Jade 4 and write
-gui jade.boot;smith:firstAgent.HelloWorldAgent
and use ; instead of space and it run successfully.
أنا طبقت كل شيء، لكن هذا ما ينتج بعد Run, أرجوك ساعدني
jade.core.ProfileException: Can’t get a proxy to the Platform Manager [nested jade.core.IMTPException: The Service Manager was already bound in the RMI Registry [nested java.rmi.AlreadyBoundException: ServiceManager]]
at jade.core.ProfileImpl.createPlatformManager(ProfileImpl.java:574)
at jade.core.ProfileImpl.getPlatformManager(ProfileImpl.java:487)
at jade.core.ProfileImpl.getServiceManager(ProfileImpl.java:501)
at jade.core.AgentContainerImpl.init(AgentContainerImpl.java:336)
at jade.core.AgentContainerImpl.joinPlatform(AgentContainerImpl.java:472)
at jade.core.Runtime.createMainContainer(Runtime.java:148)
at jade.Boot.(Boot.java:130)
at jade.Boot.main(Boot.java:70)
Nested Exception:
jade.core.IMTPException: The Service Manager was already bound in the RMI Registry [nested java.rmi.AlreadyBoundException: ServiceManager]
at jade.imtp.rmi.RMIIMTPManager.exportPlatformManager(RMIIMTPManager.java:275)
at jade.core.ProfileImpl.createPlatformManager(ProfileImpl.java:563)
at jade.core.ProfileImpl.getPlatformManager(ProfileImpl.java:487)
at jade.core.ProfileImpl.getServiceManager(ProfileImpl.java:501)
at jade.core.AgentContainerImpl.init(AgentContainerImpl.java:336)
at jade.core.AgentContainerImpl.joinPlatform(AgentContainerImpl.java:472)
at jade.core.Runtime.createMainContainer(Runtime.java:148)
at jade.Boot.(Boot.java:130)
at jade.Boot.main(Boot.java:70)
Nested Exception:
java.rmi.AlreadyBoundException: ServiceManager
at sun.rmi.registry.RegistryImpl.bind(Unknown Source)
at sun.rmi.registry.RegistryImpl_Skel.dispatch(Unknown Source)
at sun.rmi.server.UnicastServerRef.oldDispatch(Unknown Source)
at sun.rmi.server.UnicastServerRef.dispatch(Unknown Source)
at sun.rmi.transport.Transport$1.run(Unknown Source)
at sun.rmi.transport.Transport$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at sun.rmi.transport.Transport.serviceCall(Unknown Source)
at sun.rmi.transport.tcp.TCPTransport.handleMessages(Unknown Source)
at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(Unknown Source)
at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
at sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(Unknown Source)
at sun.rmi.transport.StreamRemoteCall.executeCall(Unknown Source)
at sun.rmi.server.UnicastRef.invoke(Unknown Source)
at sun.rmi.registry.RegistryImpl_Stub.bind(Unknown Source)
at java.rmi.Naming.bind(Unknown Source)
at jade.imtp.rmi.RMIIMTPManager.exportPlatformManager(RMIIMTPManager.java:224)
at jade.core.ProfileImpl.createPlatformManager(ProfileImpl.java:563)
at jade.core.ProfileImpl.getPlatformManager(ProfileImpl.java:487)
at jade.core.ProfileImpl.getServiceManager(ProfileImpl.java:501)
at jade.core.AgentContainerImpl.init(AgentContainerImpl.java:336)
at jade.core.AgentContainerImpl.joinPlatform(AgentContainerImpl.java:472)
at jade.core.Runtime.createMainContainer(Runtime.java:148)
at jade.Boot.(Boot.java:130)
at jade.Boot.main(Boot.java:70)
السلام عليكم
بارك الله فيك على هذه المعلومات
لم افهم جيدا الهدف من البرمجة متعددة العملاء
و الامثلة التي اجدها ، كلها عن HelloWorldAgent
إذا ممكن مثال اعقد قليلا ، احتاجه بشدة لو سمحت
بارك الله فيك
لقد اتبعت جميع الخطوات ولكن يظهر لي دائما هذا ال error ارجو المساعده
SEVERE: Cannot create agent jade.Boot;sanaa: Class VacuumCleanerProject.HelloWorldAgent for agent ( agent-identifier :name jade.Boot;sanaa@me-PC:1099/JADE ) not found [nested VacuumCleanerProject.HelloWorldAgent]