Multi-agent systems (MAS) represent a core area of research of contemporary Artificial Intelligence. MAS can be identified as a subfield of Distributed Artificial Intelligence that has experienced rapid growth in the last decades, mainly because of its flexibility and the capacity to solve distributed problems.
A MAS consists of multiple decision-making agents which interact in a shared environment to achieve common or conflicting goals. MAS research spans a range of technical problems, such as how to develop algorithms enabling multiple agents to achieve specified goals in a determined context, how to incentivise defined behaviours in intelligent agents, how agents can efficiently communicate with each other.
Provide you with an in-depth understanding of what an (intelligent) agent and a Multi-Agent System are.
Provide you with comprehensive knowledge of how agents reason and communicate with each other.
Furnish you with the relevant expertise for designing and creating multi-agent systems.
Establish a comprehensive and practical awareness of the techniques used to develop Ontologies.
Be able to critically understand the techniques for Multi-agent decision making, Negotiating and bargaining.
Topic
Agents have many applications where they can be beneficial, but not all have been exploited; there are also applications that would not be suitable for agents.
Find an application that appears to use (either by usage or marketing) an agent-based approach, but that does not fit the definition of an intelligent agent.
Focus on a specific application that does NOT fit the definition of “an intelligent agent” but that is appearing to be an “agent”.
Describe why this appears to use an agent-based solution.
Describe why this does NOT fit the definition of an intelligent agent.
Discuss possible extensions that would make this fit the definition of an intelligent agent, including how feasible this may be.
Include any relevant points on legal, ethical, or social issues.
Post
In recent years, there has been a surge in the development and use of autonomous vehicles. While they are not technically intelligent agents, they do appear to be agents due to their ability to interact with their environment and make decisions based on sensory input. This essay will discuss why autonomous vehicles appear to use an agent-based solution, why they do not fit the definition of an intelligent agent, and possible extensions that could make them fit the definition.
Autonomous vehicles, also known as self-driving cars, use a complex combination of sensors, algorithms, and machine learning to navigate and operate on the road without human intervention. They are able to perceive their surroundings, process information, and make decisions based on that information. This ability to interact with their environment and make decisions based on sensory input is what makes them appear to be agents. (Wooldridge & Jennings, 1995)
However, while autonomous vehicles appear to be agents, they do not fit the definition of an intelligent agent. This is because they lack the ability to reason, plan, and learn from their environment (Russell & Norvig, 2009). An intelligent agent "perceives its environment, reasons about it, plans its actions, and executes them." (Russell & Norvig, 2009) While autonomous vehicles can perceive their environment, they lack the ability to reason about it or plan their actions beyond their pre-programmed algorithms. They also do not have the ability to learn from their environment beyond simple pattern recognition. This lack of intelligence distinguishes them from intelligent agents.
Possible extensions that could make autonomous vehicles fit the definition of an intelligent agent include the development of more advanced machine learning algorithms, reinforcement learning, and deep learning techniques. These techniques could allow autonomous vehicles to learn from their environment and make more complex decisions beyond their pre-programmed algorithms. However, the feasibility of implementing these techniques is uncertain, as they require large amounts of data and computational power. In addition, legal, ethical, and social issues surrounding the use of autonomous vehicles would need to be addressed before implementing such extensions.
One legal issue is the liability of autonomous vehicles in the event of accidents or malfunctions. As autonomous vehicles operate without human intervention, it is unclear who is responsible in the event of an accident. Ethical issues include the potential loss of jobs in the transportation industry and the potential bias in decision-making algorithms. Social issues include the acceptance and trust of autonomous vehicles by the public and the potential impact on urban design.
In conclusion, while autonomous vehicles appear to be agents due to their ability to interact with their environment and make decisions based on sensory input, they do not fit the definition of an intelligent agent as they lack the ability to reason, plan, and learn from their environment. Possible extensions that could make them fit the definition include the development of more advanced machine learning techniques, but legal, ethical, and social issues must be addressed before implementing them.
References
Russell, S.J. (Stuart J. and Norvig, P. (2016) Artificial intelligence a modern approach / Stuart J. Russell and Peter Norvig. 3rd ed. Boston: Pearson.
Wooldridge, M. and Jennings, N.R. (1995) ‘Intelligent agents: theory and practice’, Knowledge engineering review, 10(2), pp. 115–152. Available at: https://doi.org/10.1017/S0269888900008122.
Summary
Autonomous cars use sensory inputs to make decisions on what needs to be done, and this makes them proven to be less intelligent agents as they are aided in making some decisions. The responses by the peers indicate that an autonomous vehicle is supposed to make decisions independently, as the vehicles that are helped to work out some activities. Therefore, this is that part of the social interactions that occur when the car is driven, and this helps to prove that cars are not part of intelligent agents (Chukwudozie, 2022). According to the post I made, cars do not have the ability to think and even learn from the environment, and they are prone to making mistakes as they drive along. Therefore, machine learning improvements can aid in ensuring that the cars work out more roles, and this is part of the legal considerations that need to be made on autonomous vehicles.
The legal aspects that need to be considered are compliance with the industry standards on car manufacturing and following higher standards that will give the cars a better future with higher standards of safety (Chukwudozie, 2022). Additionally, cars, at times, can need sophisticated technology to make them safe, and this helps to relate to the ethical standards that have to be kept each day. Therefore, providing safe cars is part of the conventional use of AI technology in cars, and the user preference has to reflect the need for performance and support of the other road users when the technology is in use (Dey et al., 2016).
The changes that helped me to change my ideas is the improvement of short-range communication in cars, whereby there is a need to use improvised security features that help achieve full data transmission when the technology is in place. Therefore, this helps to show that every consequence of technology failure when during the launch will be solved easily, and accidents will be avoided (Dey et al., 2016). Lastly, technology fails in complex social interactions and also needs to be controlled, and this can be done by improving natural conversation intelligence in cars, which improves car safety.
Dey, K.C. et al. (2016) “Vehicle-to-vehicle (V2V) and vehicle-to-infrastructure (V2I) communication in a heterogeneous wireless network – performance evaluation,” Transportation Research Part C: Emerging Technologies, 68, pp. 168–184. Available at: https://doi.org/10.1016/j.trc.2016.03.008.
Topic
Understand the main application areas of agent-based solutions, and be able to develop a meaningful agent-based system using a contemporary agent development platform.
Scenario
Grodor the Goblin has stolen some of your items. In order for him to return them, he has sent you on a quest to search the forest and collect particular items of great value to him: a coin, a vase, and a gem. You need to collect these items, and then return to Grodor the Goblin and give them to him. Upon further consideration,you have decided that the forest is far too dangerous for you to be wandering around alone, so you have decided to employ an agent who will do the task for you.
In the zip file entitled “Forest.zip” there is a JASON project. In addition to other files which you needn’t concern yourself with, It contains the following:
ForestX.java Several test environments that you can use to check and demonstrate particular functionalities of the agent.
Forest.mas2j The JASON main file that will instruct JASON to use the correct environment and to establish the correct agents
hero.asl The AgentSpeak file which contains the Hero agent
goblin.asl The AgentSpeak file which contains the Goblin agent
Task 1 Your task is to write the Hero agent, within the hero.asl. The agent task is described below, followed by details of the environment given, with actions and percepts available to you.You are not to make changes to the forest.mas2j file, nor to the goblin.asl file. Your agent should be presented only in hero.asl, as that is the only file which will be assessed.
Task 2 Create a short video (of no more than 7 minutes) that demonstrates your agent working. In this video you should also explain how your agent works, and be sure to point out and explain various parts of your code. It may be helpful to also refer to specifics about the environment. You should consider carefully how your environment is configured (ie: where are objects placed?). You can use the provided testcase environments to demonstrate the functionality of the agent. You are required to record your voice and the screen of your computer, though you may also include your face from a webcam if you wish.
Required Functionality of Hero Agent
The hero agent is to move through the environment in a systematic way. It should collect a vase, coin, and gem. Upon finding these three items, it should then move to where the goblin is, and then drop the items in that position. If it does not find all three times, Then it should not visit the goblin. A rule has been placed in hero.asl for you. This rule is at(P). This rule will state whether it is true that the Hero agent is in the same position as the agent named in the parameter P. For example, if there is an agent named philby within the system, then adding the achievement goal !at(philby) will instruct the hero agent to achieve the state of affairs where it is at the same position in the grid as the agent philby. If you wish to use this rule, you must of course define a plan which is applicable.Your code within the hero.asl file should contain your name and student ID at the top, and it should be well commented - it is very important to convey your understanding through these comments.
The Goblin Agent
The goblin agent (given for you in goblin.asl) is waiting in his given position (this is defined by the environment), and he will stash an item that is dropped in his location, should it be a coin, gem, or vase.
The Forest Environment
The forest environment consists of a 8x8 grid, each square representing the location within the forest. Within several squares of the forest there will be items that the Hero Agent can choose to pickup, if so desired.There may be a teleporter present (this is a square labelled as T) in the environment which teleports the hero to a random spot in the forest.The environment has several percepts and actions that can be utilised by the agent. These are:
Percepts
pos(hero, x, y)The hero agent is at the position (x,y)
pos(goblin, x, y)The goblin agent is at the position (x,y)
gem(hero)The hero is at a position that contains a gem
coin(hero)The hero is at a position that contains a coin
vase(hero)The hero is at a position that contains a vase
gem(goblin)The goblin is at a position that contains a gem
coin(goblin)The goblin is at a position that contains a coin
vase(goblin)The goblin is at a position that contains a vase
hero(coin)The hero is currently holding a coin
hero(vase)The hero is currently holding a vase
hero(gem)The hero is currently holding a gem
Actions
next(slot)The hero will advance its position to the next one in the forest. This is on a left-to-right, top-to-bottom sequence.
move towards(x,y)The hero will move towards the location stated.
pick(coin)Hero will pick up the coin object in the current position, if there is one.
drop(coin)Hero will drop the coin object, should they have one, in the current position. The hero will then advance to the next position.
stash(coin)The Goblin will pick up the coin object that is in his current position and stash it. There is no percept to signal that the goblin has stashed an item.
pick(gem)Hero will pick up the gem object in the current position, if there is one.
drop(gem)Hero will drop the gem object, should they have one, in the current position. The hero will then advance to the next position.
stash(gem)The Goblin will pick up the gem object that is in his current position and stash it. There is no percept to signal that the goblin has stashed an item.
pick(vase)Hero will pick up the vase object in the current position, if there is one.
drop(vase)Hero will drop the vase object, should they have one, in the current position. The hero will then advance to the next position.
stash(vase)The Goblin will pick up the vase object that is in his current position and stash it. There is no percept to signal that the goblin has stashed an item.
Multi Agent systems are systems where more than one intelligent agents are situated in the same environment; they do not have to be owned by the same user, and they may be adversarial to each other. Likewise, the whole system may be owned by the same user and the agents may cooperate to achieve the same collective delegated goal.
You are required to select an application that does not use a multi agent systems approach, and consider what a MAS approach would look like. You can use your professional setting, your desired future job, your life experiences or your general interests to help select the application.
For example, a car sharing application that helps people pool their commute journey, but is currently a manual process where users have to select the matches themselves, could use a multi agent systems approach utilising the contract net protocol.
Focus on a specific application that does not use an MAS approach, but you believe has potential to exploit this technology.
Discuss how an MAS approach could work for this application, including how feasible this may be.
Would there be any significant changes in functionality?
Would there be any significant changes in usability?
Are there any potential advantages to an MAS approach over the conventional approach?
Are there any potential downsides to an MAS approach over the conventional approach?
Include any relevant points on legal, ethical or social issues.
Post
An example of an application that does not utilize the MAS approach is the logo detection application that helps identify fraudulent brand campaigns but is currently a manual process where the company has to select the type of logo that is valid for the company. It has the potential to utilize a multi-agent system approach by incorporating intelligent systems that would improve the outcome (Panda et al., 2022, p. 241). Additionally, I believe that logo detection applications can potentially exploit the technology because of the ability to operate in various work environments without any form of interference. The logo detection application can be undertaken by ensuring that all the fraudulent logos that interfere with brand campaigns are eliminated, boosting the outcome.
Significant changes in the functionality of the logo detection application would be showcased because the introduction of more than one intelligent agency would eliminate potential clashes on the similarity of some of the logos that have been established, which would hinder the marketing of another brand. Moreover, the operation of the application would be improved because there would be an ease in recognition of the company's logo and appropriate suggestions would be offered on the measures to improve brand awareness. There would be significant changes in usability because many people could utilize the product to gather information on the operation of other intelligent systems that would facilitate productivity improvement. Additionally, there would be significant changes in usability because people would have perfect knowledge of the effectiveness of using some of the systems.
The potential advantage of a MAS approach over the conventional approach is that there would be an encouragement to use some of the intelligent systems, which would facilitate improvement in logo recognition for the provision of quality results. Another advantage to a MAS approach is that people would explore the full potentiality of the application's use and utilize the knowledge behind the software to bring about changes. The potential downside to a MAS approach over a conventional approach is that implementing some of the changes might interfere with the operation of the software, which can affect the overall outcomes (Ning et al., 2019, p. 412). Additionally, the downside to a MAS approach over a conventional approach is that communication challenges might be experienced in the application, leading to misinformation hindering the outcome level.
Ethical issues that might be encountered are the susceptibility to inaccuracy, discriminatory outcomes, and inscrutable outcomes. Errors might be encountered when setting up the logo detection application, contributing to inaccuracy. Some outcomes are discriminatory because some information gathered might not meet the required standards, which affects the outcome. Additionally, the inscrutable outcomes hinder the productivity of the logo detection application because the people gathering information from the application can fail to gather the right information, which can be misleading. The potential solution is to ensure that the application is set appropriately, which would greatly boost the outcome (Cahyono et al., 2021, p.371). Additionally, it would be important to eliminate discriminatory policies that can affect the potential outcomes. Another potential solution is to ensure adequate scrutiny of the outcomes, which would facilitate improvement in the accuracy of the information gathered by the logo detection application.
References
Cahyono, T., Chasanah, N. and Khairmyanto, T. (2021). Design and Development of Web based E-Commerce Application for Logo Sales ‘Tokologo’ Using Codeigniter. Webology, 18(SI05), pp.368–382. doi: https://doi.org/10.14704/web/v18si05/web18234
Ning, B., Han, Q.L. and Zuo, Z., 2019. Practical fixed-time consensus for integrator-type multi-agent systems: A time base generator approach. Automatica, 105, pp.406-414.
Panda, P., Mishra, A. K., & Puthal, D. (2022). A Novel Logo Identification Technique for Logo-Based Phishing Detection in Cyber-Physical Systems. Future Internet, 14(8), 241. https://doi.org/10.3390/fi14080241
Summary
Logo detection application is a significant contribution to the use of Multi-Agent Systems. It has helped improve service delivery rates to customers utilizing the technology. The use of logo detection application in a Multi-agent system approach can also be utilized to gather information relayed by other brands, which helps improve service delivery rates and delivery of services to the targeted individuals (Panda et al., 2022). Additionally, the federal authorities can utilize logo detection technology to detect fake companies that offer products to customers, which helps eliminate possible fraudulent activities that might affect productivity. It would be of great contribution because proper scrutiny would be undertaken to ensure that appropriate policies are adhered to by crucial companies.
The legal issues associated with logo detection applications are consumer protection and trust, where the customers ought to be offered the right quality products, which would help determine the right products they should consume. Additionally, the protection of the consumers through the identification of the companies that offer substandard products helps curb the criminal activities undertaken by people in society (Koval, 2019). Moreover, the development of trust in important companies ought to fulfill the legalities where there are eliminated violations of laws that affect productivity. It is legal for the customers to be informed about the products offered, which would help determine the best approach to offer quality services.
The ethical and social issues associated with the use of logo detection applications in identifying fraudulent logos are bias and informed consent. There is biasness when a group of individuals is informed about the condition of the services. Ensuring that the available products meet the required quality (Belk, 2021). Additionally, the producers of crucial products in society should inform the consumers of the crucial changes in their production process, which would help determine appropriate measures to guarantee improved outcomes. The social issue that is relevant in logo detection technology is social justice, where the people in the society should be educated on the merits and demerits of the products offered, which would facilitate proper decision-making on the commodities availed. Using logo detection applications as a multi-agent system approach helps improve customer and producer relationships.
References
Belk, R. (2021). Ethical issues in service robotics and artificial intelligence. The Service Industries Journal, 41(13-14), 860-876.
Koval, O. М. (2019). Some problems of creation and use of the holograms: legal issues and modern digital technologies. Legal Position, 4, 107–113. https://doi.org/10.32836/2521-6473-2019-4-107-113
Panda, P., Mishra, A. K., & Puthal, D. (2022). A Novel Logo Identification Technique for Logo-Based Phishing Detection in Cyber-Physical Systems. Future Internet, 14(8), 241.https://doi.org/10.3390/fi14080241
Scenario
A family run bicycle company has been in operation since 1973, and has become a major employer in the local area. Unfortunately, due to cheaper imports from overseas countries and general market conditions, they are struggling with finances and are looking at a way to cut costs.
Currently their production line is manually operated, and the company may consider cutting costs by bringing in modern automation. As a specialist group in Multi Agent Systems, you have suggested to the company that a Multi Agent Systems approach to bicycle production may be an avenue that is worth exploring.
The production workers manually create the following frame pieces:
Head Tube
Top Tube
Down Tube
Seat Tube
Seat Stay
Chain Stay
These are labelled on the diagram below:
Currently, these pieces are manually welded together to create the frame, but your group believes that a multi agent system could weld the frame together autonomously, allowing manual workers to attach the drivetrain and wheels, and to paint the frame.
Task
Your task is to design a multi agent system that assembles the bike frame.
You can assume that you have specialised agents of several types:
Robotic Arm Agent: picking a single piece out of a bin, and moving it into position on the welding surface. This agent does not have a strong enough grip to hold the piece in place.
Welding Agent: welds a joint.
Holding Agent: holds a piece firmly in place on the assembly surface
Moving agent: Moves the entire bike frame safely away from the assembly surface
The general process is as follows:
Pieces 1-6 are placed in individual bins by the workers. These bins can generate a percept to signify if they are empty or full.
Pieces should be taken from the bins, and placed on to the assembly surface
Pieces should be welded together at their joining points:
(1,2,3)
(2,4)
(3,4,6)
(4,5)
(5,6)
Once all pieces are welded, the fully assembled frame should be moved off the assembly surface, ready for the next bicycle
Decide how many agents of each type are used, and in what order the tasks are to be done.
Write a report that details the design of the multi agent system, using any suitable notation to show the structure and general design of the system. Use pseudocode for any plans are relevant, though this is not compulsory.
Write a critique of your design system, detailing is particularly good about the system, and what could be improved.
Multi-agent systems (MAS) have been a subject of research and development for several decades. MAS has emerged as a popular tool for solving complex problems across var-ious domains in recent years. A computer programme is considered an intelligent agent if it acts independently in each context by employing sensors to observe the surroundings and take action to achieve its goals. Intelligent agents are programmed to interact with other agents and their surroundings to achieve a shared aim or to meet the individual's goals. They can judge, gain knowledge from their experiences, and adjust to new cir-cumstances.
In the manufacturing industry, MAS is utilised to optimise production processes, de-crease costs, and enhance product quality (Shen et al., 2019). MAS controls and moni-tors the production line, coordinates different machines and robots' activities, and man-ages the flow of materials and products. MAS can also be used to monitor the status of the machines and detect potential causes of failures before they happen, reducing down-time and costs of maintenance.
Another benefit of using MAS in manufacturing is its ability to adapt to changing condi-tions. MAS can be programmed to adjust the production process in real-time based on changes in demand, material availability, or other factors. This can help manufacturers to respond quickly to market changes, reduce waste, and improve efficiency.
This report seeks to detail the design of a Multi-Agent System (“MAS”) capable of weld-ing a bicycle frame autonomously. The report will also contain pseudocode for the plans of our Multi-Agent System.
To ensure that we design a MAS that meets its objectives, the system needs to be bro-ken down into its ultimate goals and subgoals. To that end, the architecture of the MAS will serve as a robust plan for the MAS, minimising any design shortfalls. (Park and Sugumaran, 2005).
As a guide for our report, we have adapted the following architecture development pro-cess for MAS (Park and Sugumaran, 2005):
Welding manufacturing and systems are attracting attention in the industry (Liu & Chen et al, 2022). Figure 1.0 Model of intelligentised welding manufacturing and systems based on IoT-MAS that helps to conceptualise the solution that this paper will present. The dia-gram represents a complex solution, but the basic requirements can be represented on similar lines.
Figure 1. Model of intelligentised welding manufacturing and systems based on IoT-MAS.
In simple terms, Ontology is the definition of existence (Maedche, 2002) The ontology that represents the build of a bicycle use case consists of many different concepts illus-trated diagrammatically in Figure 1.0 Overview of Bicycle Ontology (in protégé). Here we can see the classes of “things” that are ontologically distinct from other things and the subclasses of those whose parent classifications are inherited. From these concepts, we can then define agent interactions and communications that can help to resolve the build of a “bicycle use case”.
Figure 2. Overview of Bicycle Ontology (in Protégé)
When we consider the concepts specific to the automation of the building of a frame whereby a Multi-Agent System can be used to weld together the tubes, the following class diagram with associated object instances should be considered (see below figure 2 Bicycle Assembly Ontology (Class & Instances in Protégé). This diagram shows multiple agent instances alongside multiple bins and tubes; these will all be used to construct goal-driven behaviour within a set of plans where MAS principles can be applied to build the new frame.
Figure 3. Bicycle Assembly Ontology (Class & Instances in Protégé)
The definition of objects allows instances of those concepts to exist where they all share the same descriptive criterion but represent distinct instances of them. In the case of Figures 3 shows the instances of the agents from Holding Agent, Moving Agent, Welding Agent, and Robotic Arm all have the same underlined attributes used to describe the dis-tinct instances. Much is the same for Figures 4 and 5, which enable us to represent Bins and Tubes.
Figure 4. Agent Class and Instance definitions (in Protégé)
Figure 5. Bin Class and Instance definitions (in Protégé)
Figure 6. Tube Class and Instance definitions (in Protégé)
According to (Lee and Kim, 2008), agents in a MAS environment interact with other agents through communication protocol languages. These interactions can be split into cooperative interactions and self-interested interactions. These messages are passed asynchronously through contract net protocols in a “collaboration method of alliance formation, divided several agent alliances” (Liu & Chen et al, 2022) (see Figure 7 Intelli-gent Alliance System of IWMS baet al.n IoT-MAS).
Figure 7. Intelligent Alliance system of IWMS based on IoT-MAS.
These protocols form the basis of rules that the agents must abide by to reach a suc-cessful goal-oriented outcome. In our project, we have ensured that the protocols em-ployed have “guaranteed success” properties that direct the agents to reach an eventual agreement to select and fuse the right pieces together. It is important to note that our agents will go through multiple rounds of “negotiations” to reach an agreement on the basis that they will have to match the pieces with the right attributes. (Woolridge, 2003)
Additionally, we propose to have our agents operate in an event-triggered process. This has the net effect of all our agents being able to send or receive information whenever a particular scenario is triggered. The advantage of this approach is that control protocols only have to be updated if required. Secondly, the system can be updated with fewer constraints, and finally, the Edge Event Trigger (EET) system allows for more flexible communication in connection to general scenarios. (Xu, W. et al. (2017)
The following percepts in the table below help to ensure consistency between environ-ment events. These percepts can also be managed through Java environment variables, as in Figure 2—Java environment variables.
Table 1 - Welding Environment Percepts
Environment Percepts
Action Event
Plan
Bin_Full
Bin_Empty
pick_piece[n].(piece,bin)
Tube_Picked
pick_piece[n].(piece,bin)
Tube_Held
hold(P)
Tube_Welded
Frame_complete
Figure 8. Java Environment Percepts
Functional requirements distill the overall vision of the application into several delivera-bles. These requirements must be unique and be able to implemented on a standalone basis. When the requirements are implemented, altogether they accomplish the vision expected. (Blais, 2012). In the case of the agents, we can represent the functional re-quirements as follows:
Table 2 - Functional requirements
Function ID
Function Description
F1
Only Robotic arm agents can decide if a bin is empty or not
F2
Welding agent is able to detect the correct pieces and start welding
F4
The welding agent can weld one or more pieces together
F5
The holding agent can only hold two pieces together
F6
Only the moving agent can move pieces
F7
One frame will have only 6 pieces
Figure 9. shows the Navigation Data-Entity Hierarchy shows the process flow of the MAS:
A MAS function manages the main control in creating a bicycle frame, where the infra-structure is centralised to ensure the shared goal.
Figure 10. MAS build a Bicycle Frame centralised goal behaviour
A key consideration of the creation of the ‘frame construction’ is the sequencing of how they will be put together and welded together. The approach that we have used within the design is to collect the tubes and place them down onto the assembly area at the correct coordinates to ensure that the angle and positions of the welding are performed correctly and consistent with the effective strength requirements of the frame.
Figure 11. Welding joining diagram
Figure 11. Welding joining diagram shows all tubes laid down on the assembly area where the ‘x’ & ‘y’ coordinates to determine the positioning of the top and bottom ends of the tubes. These ‘x’ and ‘y’ coordinates determine the positions of the tubes in accordance with the welding positions, whereby they can then be welded.
Figure 12. ‘Robotic Arm Agent’ plan pseudo-code shows the logic of selecting a tube from the bin. This Agent picks each tube from the corresponding bin and positions it on the welding surface. For each tube, there is an object that holds the coordinates that indicate where precisely the tube should be placed on the welding surface. These coordinates include X and Y positions for both edges of the tube. Figure 12. Robotic Arm agent plan (pseudo code)
Figure 13. Class representing position object
As part of executing goal-directed behaviour in building the bicycle frame, several plans are required to assemble the correct tubes together by welding. The ordering of these tubes has been recorded within sub-plans within the design, as seen in Figure 10 Design of the Welding of tube components (in Protégé). It is entirely possible that a more effi-cient process can be adopted during code optimisation that may see these plans ration-al-ised into a more efficient execution. However, the logical representation of the rules about which tubes should be connected (see Table 3 Welding Implementation Plans & Components) must be maintained even if code optimisation occurs.Figure 14. Design of the Welding of tube components (in Protégé)
The processing of welding is coordinated with the holding agent allowing items to be held in position whilst the correct tubes for the component parts as in Table 2 are welded. From the code below Figure 15 Welding agent Plan (pseudo code), you can see the hold-ing and welding of the correct tubes as they are passed through the plan.
A fundamental requirement within this process is that a maximum of three holding agents work simultaneously to enable the frame to be correctly constructed. Once the welding is completed in one joint, the welding agent must move to the next joint to proceed with the welding.
Figure 15. Welding agent plan (pseudo code)
Here are some ideas for improvements
Using MAS to assist with Painting?
Enabling the Holding agent to have multiple arms instead of multiple holding agents?
Code refactoring of “position_p[n].(piece)” to be more generic and allow x & y coordinates to be passed as variables.
Single Bin with different tube types within it. MAS assessment on the tube length and size to assert which part it is for. Or a barcode on each of the tubes?
Picking and holding routines to create additional functionality to ensure that the items have indeed been picked up and have not slipped out. Similarly, the hold-ing routine ensures that it is being held.
Welding seam point and direction of the weld for higher quality construction?
Optical viewer on a robot arm that can detect pieces based on size, measure-ments etc., thus minimising or eradicating errors?
Creation of a mould that the robotic arm can populate with pieces, ready for the welding agent to start work on. This would do away with the requirement for a holding agent.
What if the bin is empty already when we are trying to pick a tube?
This report showed how MAS can be used in manufacturing process of a bicycle, imple-mentation and communication of agents were discussed. The output and insights were presented and analysed. Finally, a number of improvement ideas added that would ad-vance the system to the next level.
References
Sooyong Park, Vijayan Sugumaran, Designing multi-agent systems: a framework and application, Expert Systems with Applications, Volume 28, Issue 2, 2005, Pages 259-71, ISSN 0957-4174, https://doi.org/10.1016/j.eswa.2004.10.006.
Xu, W. et al. (2017) ‘Distributed edge event‐triggered consensus protocol of multi‐agent systems with communication buffer’, International Journal of Robust and nonlinear control, 27(3), pp. 483–496. Available at: https://doi.org/10.1002/rnc.3582.
Blais, S.P (2012) “Business Analysis: Best Practices for success”, John Wiley and Sons
J.-H. Lee & C.-O. Kim (2008) Multi-agent systems applications in manufacturing systems and supply chain management: a review paper, International Journal of Production Re-search, 46:1, 233-265, DOI: 10.1080/00207540701441921
Maedche, A. (2002). Ontology — Definition & Overview. In: Ontology Learning for the Semantic Web. The Kluwer International Series in Engineering and Computer Science, vol 665. Springer, Boston, MA. https://doi.org/10.1007/978-1-4615-0925-7_2
Liu, Qiang & Chen, Chao & Chen, Shanben. (2022). Key Technology of Intelligentized Welding Manufacturing and Systems Based on the Internet of Things and Multi-Agent. Journal of Manufacturing and Materials Processing. 6. 135. 10.3390/jmmp6060135.