LASCNN algorithm: Difference between revisions

Content deleted Content added
No edit summary
 
(21 intermediate revisions by 7 users not shown)
Line 1:
In graph theory, '''LASCNN''' is a Localized'''L'''ocalized Algorithm'''A'''lgorithm for Segregation'''S'''egregation of Critical'''C'''ritical/Non'''N'''on-critical Nodes '''N'''odes<ref>Muhammad Imran, Mohamed A. Alnuem, Mahmoud S. Fayed, and Atif Alamri. "Localized algorithm for segregation of critical/non-critical nodes in mobile ad hoc and sensor networks." Procedia Computer Science 19 (2013): 1167-11721167–1172.</ref> The algorithm workedworks on the principle of distinguishing between the critical and non-critical nodes for the network connectivity based on limited topology information .<ref>N. Javaid, A. Ahmad, M. Imran, A. A. Alhamed and M. Guizani, "BIETX: A new quality link metric for Static Wireless Multi-hop Networks," 2016 International Wireless Communications and Mobile Computing Conference (IWCMC), Paphos, 2016, pp. 784-789784–789, {{doi: |10.1109/IWCMC.2016.7577157}}.</ref> The algorithm findfinds the critical nodes with the partial information within a few hops. <ref>Kim, Beom-Su, Kyong Hoon Kim, and Ki-Il Kim. "A survey on mobility support in wireless body area networks." Sensors 17, no. 4 (2017): 797.</ref>
 
This algorithm can distinguish the critical nodes of the network with high precision, and theindeed, accuracy can reach 90%. The accuracy of this algorithm can reach 100% when identifying non-critical nodes .<ref>Zhang, Y.; Zhang, Z.; Zhang, B. A Novel Hybrid Optimization Scheme on Connectivity Restoration Processes for Large Scale Industrial Wireless Sensor and Actuator Networks. Processes 2019, 7, 939. </ref> The performance of LASCNN is scalable and quite competitive compared to other schemes .<ref>Kasali, F. A., Y. A. Adekunle, A. A. Izang, O. Ebiesuwa, and O. Otusile. "Evaluation of Formal Method Usage amongst Babcock University Students in Nigeria." Evaluation 5, no. 1 (2016).</ref>
 
==Pseudocode==
The LASCNN algorithm establishes a {{Var|k}}-hop neighbor list and a duplicate free pair wise connection list based on {{Var|k}}-hop information. If the neighbors stay connected then the node is non-critical.<ref>G. Sugithaetal., International Journal of Advanced Engineering Technology E-ISSN 0976-3945</ref><ref>Mohammed Alnuem, Mohammed, Nazir Ahmad Zafar, Muhammad Imran, Sana Ullah, and Mahmoud S. Fayed. "Formal specification and validation of a localized algorithm for segregation of critical/noncritical nodes in MAHSNs." International Journal of Distributed Sensor Networks 10, no. 6 (2014): 140973</ref>
 
The LASCNN algorithm establishes k hop neighbor list and a duplicate free pair wise connection list based on k hop information. If the neighbors are stay connected then the node is non critical
<ref>G. Sugithaetal., International Journal of Advanced Engineering Technology E-ISSN 0976-3945</ref><ref>Alnuem, Mohammed, Nazir Ahmad Zafar, Muhammad Imran, Sana Ullah, and Mahmoud S. Fayed. "Formal specification and validation of a localized algorithm for segregation of critical/noncritical nodes in MAHSNs." International Journal of Distributed Sensor Networks 10, no. 6 (2014): 140973</ref>
 
<pre>
Function LASCNN(MAHSN)
For ∀ A ∈ MAHSN
For∀𝐴∈𝑀𝐴𝐻𝑆𝑁
If (𝐴→𝐶𝑜𝑛𝑛𝐿𝑖𝑠𝑡A->ConnList.getSize() == 1) then
𝐴→SetNonCritical A->SetNonCritical() = LEAF
Else
Continue = TRUE
While (Continue == TRUE)
Continue = FALSE
For ∀ ActiveConn ∈ ConnList
For∀𝐴𝑐𝑡𝑖V𝑒𝐶𝑜𝑛𝑛∈𝐶𝑜𝑛𝑛𝐿𝑖𝑠𝑡
If (𝐴∉𝐴𝑐𝑡𝑖V𝑒𝐶𝑜𝑛𝑛A∉ActiveConn) then
If (𝐴→𝐶𝑜𝑛𝑛𝑁𝑒𝑖𝑔ℎ𝑏𝑜𝑟𝑠A->ConnNeighbors.getSize() == 0)
𝐴→𝐶𝑜𝑛𝑛𝑁𝑒𝑖𝑔ℎ𝑏𝑜𝑟𝑠 A->ConnNeighbors.add(𝐴𝑐𝑡𝑖V𝑒𝐶𝑜𝑛𝑛ActiveConn)
Continue = TRUE
else
If (𝐴𝑐𝑡𝑖V𝑒𝐶𝑜𝑛𝑛∩𝐶𝑜𝑛𝑛𝑁𝑒𝑖𝑔ℎ𝑏𝑜𝑟𝑠ActiveConn ∩ ConnNeighbors == TRUE)
𝐴𝑐𝑡𝑖V𝑒𝐶𝑜𝑛𝑛∪𝐶𝑜𝑛𝑛𝑁𝑒𝑖𝑔ℎ𝑏𝑜𝑟𝑠 ActiveConn ∪ ConnNeighbors
Continue = TRUE
Endif
Endif
Endif
End EndifFor
End EndifWhile
End ForEndif
If (A->ConnNeighbors.getSize() < A->Neighbors.getSize())
End While
A->SetCritical() = TRUE
Endif
else
If (𝐴→𝐶𝑜𝑛𝑛𝑁𝑒𝑖𝑔ℎ𝑏𝑜𝑟𝑠.getSize()<𝐴→𝑁𝑒𝑖𝑔ℎ𝑏𝑜𝑟𝑠.getSize())
𝐴→SetNonCritical A->SetNonCritical() = INTERMEDIATE
𝐴→SetCritical()=TRUE
Endif
else
End WhileFor
𝐴→SetNonCritical()=INTERMEDIATE
Endif
End For
End Function
</pre>
 
==Implementation==
[[File:Critical_Nodes_Application.png|thumb|300px|Critical Nodes Application - An implementation for the LASCNN algorithm using PWCT]]
The Critical Nodes application is a Free Open-Source implementation for the LASCNN algorithm. The application was developed in 2013 using [[PWCT|Programming Without Coding Technology]] software.<ref>Fayed, Al-Qurishi, Alamri, Aldariseh (2017) PWCT: visual language for IoT and cloud computing applications and systems, ACM</ref>
 
==See also==
 
* [[Connectivity_(graph_theory)|Connectivity (graph theory)]]
* [[Dynamic connectivity]]
* [[Critical_point_(network_science)|Critical point (network science)]]
* [[Strength of a graph]]
* [[Depth-first_search|Depth-first search]
* [[Cheeger constant (graph theory)]]
* [[Breadth-first search|Breadth-first search]
* [[Critical_point_(network_science)|Critical point (network science)]]
* [[Depth-first_search|Depth-first search]]
* [[Breadth-first search|Breadth-first search]]
 
==References==
<references/>
 
==External links==
[[:Category:Networks]]
* [https://sourceforge.net/projects/criticalnodes/ Critical Nodes application]
[[:Category:Network theory]]
 
[[:Category:Networks]]
[[:Category:Network theory]]
[[Category:Graph algorithms]]