https://en.wikipedia.org/w/api.php?action=feedcontributions&feedformat=atom&user=Cuttlefish+Optimization+Algorithm Wikipedia - User contributions [en] 2025-06-17T03:12:40Z User contributions MediaWiki 1.45.0-wmf.5 https://en.wikipedia.org/w/index.php?title=Cuttlefish_Optimization_Algorithm&diff=729250671 Cuttlefish Optimization Algorithm 2016-07-10T23:23:35Z <p>Cuttlefish Optimization Algorithm: </p> <hr /> <div>{{Multiple issues|<br /> {{Underlinked|date=July 2016}}<br /> {{Orphan|date=July 2016}}<br /> {{COI|date=July 2016}}<br /> {{notability|date=July 2016}}<br /> {{original research|date=July 2016}}<br /> {{primary sources|date=July 2016}}<br /> }}<br /> In [[computer science]], the '''Cuttlefish Optimization Algorithm (CFA)''' is a population-based [[search algorithm]] inspired by skin color changing behaviour of [[Cuttlefish]] which was developed in 2013 &lt;ref name=&quot;Adel &amp; al, 2013&quot;&gt;Adel Sabry Eesa, A. M. A. B., Zeynep Orman. (2013). Cuttlefish Algorithm – A Novel Bio-Inspired Optimization Algorithm. International Journal of Scientific &amp; Engineering Research, 4(9).&lt;/ref&gt;&lt;ref name=&quot;Adel &amp; al, 2015&quot;&gt;Adel Sabry Eesa, Z. O., Adnan Mohsin Abdulazeez Brifcani. (2015). A novel feature-selection approach based on the cuttlefish optimization algorithm for intrusion detection systems. Expert Systems with Applications, 42, 2670–2679. doi: 10.1016/j.eswa.2014.11.009.&lt;/ref&gt; It has two global search and two local search.<br /> <br /> == Cuttlefish Optimization Algorithm (CFA) ==<br /> <br /> [[File:Cuttlefish2.png|thumb|The six cases of reflection used by the Cuttlefish]]<br /> <br /> The algorithm considers two main processes: ''Reflection'' and ''Visibility''. Reflection process simulates the light reflection mechanism, while visibility simulates the visibility of matching patterns. These two processes are used as a search strategy to find the global optimal solution. The formulation of finding the new solution (''newP'') by using ''reflection'' and ''visibility'' is as follows:<br /> <br /> &lt;math&gt;<br /> newP = Reflection + Visibility <br /> &lt;/math&gt;<br /> <br /> CFA divide the pubulaion to 4 Groups (G1, G2, G3 and G4). For G1 the algorithm appling case 1 and 2 (the interaction between chromatophores and iridophores) to produce a new solutions. These two cases are used as a golobal search. For G2, the algorithm uses case 3 (Iridophores reflection opaerator) and case 4 (the interaction between Iridophores and chromatophores) to produces a new solutions) as a local search. While for G3 the interaction between the leucophores and chromatophores (case 5) is used to produse solutions around the best solution (local search). Finaly for G4, case 6 (reflection operator of leucophores) is used as a global search by reflecting any incoming light as it with out any modification. The main step of CFA is discribed as follows:<br /> <br /> &lt;source lang=&quot;C#&quot;&gt;<br /> 1 Initialize population (P[N]) with random solutions, Assign the values of r1, r2, v1, v2.<br /> 2 Evaluate the population and Keep the best solution.<br /> 3 Divide population into four groups (G1, G2, G3 and G4).<br /> 4 Repeat <br /> 4.1 Calculate the average value of the best solution.<br /> 4.2 for (each element in G1)<br /> generate new solution using Case(1 amd 2)<br /> 4.3 for (each element in G2)<br /> generate new solution using Case(3 amd 4)<br /> 4.4 for (each element in G3)<br /> generate new solution using Case(5)<br /> 4.5 for (each element in G4)<br /> generate new solution using Case(6)<br /> 4.6 Evluate the new solutions <br /> 5. Untile (stopping criterion is met)<br /> 6. Return the best solution<br /> &lt;/source&gt;<br /> <br /> Equations that are used to calculate reflection and visibility for the four Groups are described bellow:<br /> <br /> Case 1 and 2 for G1:<br /> <br /> &lt;math&gt; Reflection[j] = R*G_{1}[j].Points[j] &lt;/math&gt; <br /> <br /> &lt;math&gt; Visibility[j] = V*(Best.Points[j]-G_{1}[i].Points[j]) &lt;/math&gt;<br /> <br /> Case 3 and 4 for G2:<br /> <br /> &lt;math&gt; Reflection[j] = R*Best.Points[j] &lt;/math&gt;<br /> <br /> &lt;math&gt; Visibility[j] = V*(Best.Points[j]-G_{2}[i].Points[j]) &lt;/math&gt;<br /> <br /> Case 5 for G3:<br /> <br /> &lt;math&gt; Reflection[j] = R*Best.Points[j] &lt;/math&gt;<br /> <br /> &lt;math&gt; Visibility[j] = V*(Best.Points[j]-AV_{Best} &lt;/math&gt;<br /> <br /> Case 6 for G4:<br /> <br /> &lt;math&gt; P[i].Points[j] = random*(upperLimit-lowerLinit)+LowerLimit, i = 1, 2, ..., N; j=1, 2, ..., d &lt;/math&gt;<br /> <br /> Where &lt;math&gt;G_{1}&lt;/math&gt;, &lt;math&gt;G_{2}&lt;/math&gt; are Group1 and Group2, ''i'' presents the &lt;math&gt;i^{th}&lt;/math&gt; element in ''G'', ''j'' is the &lt;math&gt;j^{th}&lt;/math&gt; point of &lt;math&gt;i^{th}&lt;/math&gt; element in group ''G'', ''Best'' is the best solution and &lt;math&gt;AV_{Best}&lt;/math&gt; presents the average value of the ''Best'' points. While ''R'' and ''V'' are two random numbers produced around zero such as between (-1, 1), ''R'' represents the degree of reflection, ''V'' represents the visibility degree of the final view of the pattern, ''upperLimit'' and ''lowerLimit'' are the upper limit and the lower limit of the problem domain.<br /> <br /> == Applications ==<br /> {{Dynamic list}}<br /> The Cuttlefish Optimization Algorithm has found many applications in literature, such as:<br /> <br /> Feature Selection &lt;ref&gt;Meesala Shobha Rani (2015), A Hybrid Intrusion Detection System Based on C5.0 Decision Tree Algorithm and One-Class SVM with CFA. International Journal of Innovative Research in Computer and Communication Engineering, 3(6). doi: 10.15680/ijircce.2015.0306058.&lt;/ref&gt;&lt;ref&gt;Rahim TAHERI (2015),Rahim TAHERI, M. A., Mohammad Rafi KHARAZMI. (2015). A New Approach For Feature Selection In Intrusion Detection System. Paper presented at the International Conference on Non-Linear System &amp; Optimization in Computer &amp; Electrical Engineering. http://dergi.cumhuriyet.edu.tr/cumuscij/article/view/5000146245.&lt;/ref&gt;<br /> <br /> Travelling salesman problem &lt;ref&gt;Mohammed Essaid Riffi (2015), Mohammed Essaid Riffi, M. B. (2015). Discrete cuttlefish optimization algorithm to solve the travelling salesman problem. Paper presented at the 2015 Third World Conference on Complex Systems (WCCS), Marrakech IEEE, dio: 10.1109/ICoCS.2015.7483231.&lt;/ref&gt;<br /> <br /> Image processing (Komal Sinsinwar, 2016)&lt;ref&gt;Komal Sinsinwar, (2016), Komal Sinsinwar, S. C. (2016). A Survey of Digital Image Watermarking Optimization Algorithms Inspired by Nature. International Journal of Science and Research (IJSR), 5(2). &lt;/ref&gt;<br /> <br /> Control &lt;ref&gt;Mr.K.Lenin, (2014), Mr.K.Lenin, D. B. R. R., Dr.M.Surya Kalavathi. (2014). Voltage Profile Amplification and Attenuation of Real Power Loss by Using New Cuttlefish Algorithm. Control Theory and Informatics, 4(9). &lt;/ref&gt;<br /> <br /> ==See also==<br /> *[[Mathematical optimization]]<br /> *[[Metaheuristic]]<br /> *[[Evolutionary computation]]<br /> *[[Swarm intelligence]]<br /> *[[Particle swarm optimization]]<br /> *[[Ant colony optimization algorithms]]<br /> *[[Artificial bee colony algorithm]]<br /> *[[Intelligent Water Drops]]<br /> <br /> == References ==<br /> {{Reflist}}<br /> <br /> ==External links==<br /> *[https://sites.google.com/site/cuttlefishalgortihm/ The Cuttlefish Optimization Algorithm website]<br /> <br /> {{Optimization algorithms}}<br /> <br /> {{DEFAULTSORT:Cuttlefish Optimization Algorithm}}<br /> [[Category:Artificial intelligence]]<br /> [[Category:Collective intelligence]]<br /> [[Category:Optimization algorithms and methods]]<br /> [[Category:Cuttlefish Algorithm|Algorithm]]</div> Cuttlefish Optimization Algorithm https://en.wikipedia.org/w/index.php?title=Cuttlefish_Optimization_Algorithm&diff=729175287 Cuttlefish Optimization Algorithm 2016-07-10T12:56:54Z <p>Cuttlefish Optimization Algorithm: </p> <hr /> <div>{{Multiple issues|<br /> {{Underlinked|date=July 2016}}<br /> {{Orphan|date=July 2016}}<br /> {{COI|date=July 2016}}<br /> {{notability|date=July 2016}}<br /> {{original research|date=July 2016}}<br /> {{primary sources|date=July 2016}}<br /> }}<br /> In [[computer science]], the '''Cuttlefish Optimization Algorithm (CFA)''' is a population-based [[search algorithm]] inspired by skin color changing behaviour of [[Cuttlefish]] which was developed in 2013 &lt;ref name=&quot;Adel &amp; al, 2013&quot;&gt;Adel Sabry Eesa, A. M. A. B., Zeynep Orman. (2013). Cuttlefish Algorithm – A Novel Bio-Inspired Optimization Algorithm. International Journal of Scientific &amp; Engineering Research, 4(9).&lt;/ref&gt;&lt;ref name=&quot;Adel &amp; al, 2015&quot;&gt;Adel Sabry Eesa, Z. O., Adnan Mohsin Abdulazeez Brifcani. (2015). A novel feature-selection approach based on the cuttlefish optimization algorithm for intrusion detection systems. Expert Systems with Applications, 42, 2670–2679. doi: 10.1016/j.eswa.2014.11.009.&lt;/ref&gt; It has two global search and two local search.<br /> == Cuttlefish ==<br /> <br /> Cuttlefish &lt;ref name=&quot;Lydia M Mäthger, 2008&quot;&gt;Lydia M Mäthger, E. J. D., N. Justin Marshall, Roger T Hanlon. (2008). Mechanisms and behavioural functions of structural coloration in cephalopods. Journal of the royal society interface, 6(2). doi: 10.1098/rsif.2008.0366.focus. &lt;/ref&gt; &lt;ref name=&quot;Wood, 199&quot;&gt;Wood, D. J. B. (1995). The Cephalopod Page Retrieved 8/7, 2016, from http://www.thecephalopodpage.org/. &lt;/ref&gt; is a type of cephalopods which is well-known for its abilities to change its skin color to either seemingly disappear into its environment or to produce stunning displays.<br /> <br /> [[File:Sepia apama 2.jpg|thumb|Cuttlefish]]<br /> <br /> The patterns and colors seen in cuttlefish are produced by different layers of cells &lt;ref name=&quot;Jarred Yacob &amp; al, 20011&quot;&gt;Jarred Yacob, A. C. L., Allyson Gosling, Debra H. J. St Hilaire, Lindsay Tesar, Michelle McRae and Nathan J. Tublitz. (2011). Principles underlying chromatophore addition during maturation in the European cuttlefish. Journal of Experimental Biology, 214(Pt 20), 3423-3432. doi: 10.1242/jeb.055251.&lt;/ref&gt; stacked together including chromatophores, leucophores and iridophores, it is the combination of certain cells operations of reflection light and matching pattern at once that allows cuttlefish to possess such a large array of patterns and colors.<br /> The patterns and colors seen in cuttlefish are produced by reflected light from different layers of cells including (chromatophores, leucophores and iridophores). Chromatophores cells contain a saccule that holds a pigment (red, orange, yellow, black, and brown) as well as 15-25 muscles, when the muscles contract, they stretrch the saccule allowing the pigment insede to cover a large surface area. When the muscles relax, the saccule shrinks and hides the pigment &lt;ref name=&quot;Flory, 1969&quot;&gt;Flory, E. (1969). Ultrastructure and function of cephalopod chromatophores. Am Zool., 9(2), 429-242. doi: http://dx.doi.org/10.1093/icb/9.2.429.&lt;/ref&gt;. But a set of mirror-like cells (iridophores and leucophores) allows cuttlefish skin to assume all the rich and varied colors of its environment. The appearance of the cuttlefish thus depends on which skin elements affect the light incident on the skin. Light may be reflected by either chromatophores or by reflecting cells (iridophores or leucophores) or a combination of both, and it is the physiological changeability of the chromatophores and reflecting cells that enables the cuttlefish to produce such a wide repertoire of optical effects &lt;ref name=&quot;MESSENGER, 2001&quot;&gt;MESSENGER, J. B. (2001). Cephalopod chromatophores: neurobiology and natural history. Biological Reviews, 76(4), 473-528. doi: 10.1017/S1464793101005772.&lt;/ref&gt;. <br /> == Cuttlefish Optimization Algorithm (CFA) ==<br /> <br /> [[File:Cuttlefish2.png|thumb|The six cases of reflection used by the Cuttlefish]]<br /> <br /> The algorithm considers two main processes: ''Reflection'' and ''Visibility''. Reflection process simulates the light reflection mechanism, while visibility simulates the visibility of matching patterns. These two processes are used as a search strategy to find the global optimal solution. The formulation of finding the new solution (''newP'') by using ''reflection'' and ''visibility'' is as follows:<br /> <br /> &lt;math&gt;<br /> newP = Reflection + Visibility <br /> &lt;/math&gt;<br /> <br /> CFA divide the pubulaion to 4 Groups (G1, G2, G3 and G4). For G1 the algorithm appling case 1 and 2 (the interaction between chromatophores and iridophores) to produce a new solutions. These two cases are used as a golobal search. For G2, the algorithm uses case 3 (Iridophores reflection opaerator) and case 4 (the interaction between Iridophores and chromatophores) to produces a new solutions) as a local search. While for G3 the interaction between the leucophores and chromatophores (case 5) is used to produse solutions around the best solution (local search). Finaly for G4, case 6 (reflection operator of leucophores) is used as a global search by reflecting any incoming light as it with out any modification. The main step of CFA is discribed as follows:<br /> <br /> &lt;source lang=&quot;C#&quot;&gt;<br /> 1 Initialize population (P[N]) with random solutions, Assign the values of r1, r2, v1, v2.<br /> 2 Evaluate the population and Keep the best solution.<br /> 3 Divide population into four groups (G1, G2, G3 and G4).<br /> 4 Repeat <br /> 4.1 Calculate the average value of the best solution.<br /> 4.2 for (each element in G1)<br /> generate new solution using Case(1 amd 2)<br /> 4.3 for (each element in G2)<br /> generate new solution using Case(3 amd 4)<br /> 4.4 for (each element in G3)<br /> generate new solution using Case(5)<br /> 4.5 for (each element in G4)<br /> generate new solution using Case(6)<br /> 4.6 Evluate the new solutions <br /> 5. Untile (stopping criterion is met)<br /> 6. Return the best solution<br /> &lt;/source&gt;<br /> <br /> Equations that are used to calculate reflection and visibility for the four Groups are described bellow:<br /> <br /> Case 1 and 2 for G1:<br /> <br /> &lt;math&gt; Reflection[j] = R*G_{1}[j].Points[j] &lt;/math&gt; <br /> <br /> &lt;math&gt; Visibility[j] = V*(Best.Points[j]-G_{1}[i].Points[j]) &lt;/math&gt;<br /> <br /> Case 3 and 4 for G2:<br /> <br /> &lt;math&gt; Reflection[j] = R*Best.Points[j] &lt;/math&gt;<br /> <br /> &lt;math&gt; Visibility[j] = V*(Best.Points[j]-G_{2}[i].Points[j]) &lt;/math&gt;<br /> <br /> Case 5 for G3:<br /> <br /> &lt;math&gt; Reflection[j] = R*Best.Points[j] &lt;/math&gt;<br /> <br /> &lt;math&gt; Visibility[j] = V*(Best.Points[j]-AV_{Best} &lt;/math&gt;<br /> <br /> Case 6 for G4:<br /> <br /> &lt;math&gt; P[i].Points[j] = random*(upperLimit-lowerLinit)+LowerLimit, i = 1, 2, ..., N; j=1, 2, ..., d &lt;/math&gt;<br /> <br /> Where &lt;math&gt;G_{1}&lt;/math&gt;, &lt;math&gt;G_{2}&lt;/math&gt; are Group1 and Group2, ''i'' presents the &lt;math&gt;i^{th}&lt;/math&gt; element in ''G'', ''j'' is the &lt;math&gt;j^{th}&lt;/math&gt; point of &lt;math&gt;i^{th}&lt;/math&gt; element in group ''G'', ''Best'' is the best solution and &lt;math&gt;AV_{Best}&lt;/math&gt; presents the average value of the ''Best'' points. While ''R'' and ''V'' are two random numbers produced around zero such as between (-1, 1), ''R'' represents the degree of reflection, ''V'' represents the visibility degree of the final view of the pattern, ''upperLimit'' and ''lowerLimit'' are the upper limit and the lower limit of the problem domain.<br /> <br /> ==See also==<br /> *[[Mathematical optimization]]<br /> *[[Metaheuristic]]<br /> *[[Evolutionary computation]]<br /> *[[Swarm intelligence]]<br /> *[[Particle swarm optimization]]<br /> *[[Ant colony optimization algorithms]]<br /> *[[Artificial bee colony algorithm]]<br /> *[[Intelligent Water Drops]]<br /> <br /> == References ==<br /> {{Reflist}}<br /> <br /> ==External links==<br /> *[https://sites.google.com/site/cuttlefishalgortihm/ The Cuttlefish Optimization Algorithm website]<br /> <br /> {{Optimization algorithms}}<br /> <br /> {{DEFAULTSORT:Cuttlefish Optimization Algorithm}}<br /> [[Category:Artificial intelligence]]<br /> [[Category:Collective intelligence]]<br /> [[Category:Optimization algorithms and methods]]<br /> [[Category:Cuttlefish Algorithm|Algorithm]]</div> Cuttlefish Optimization Algorithm https://en.wikipedia.org/w/index.php?title=Cuttlefish_Optimization_Algorithm&diff=729173301 Cuttlefish Optimization Algorithm 2016-07-10T12:33:21Z <p>Cuttlefish Optimization Algorithm: </p> <hr /> <div>{{Multiple issues|<br /> {{Underlinked|date=July 2016}}<br /> {{Orphan|date=July 2016}}<br /> {{COI|date=July 2016}}<br /> {{notability|date=July 2016}}<br /> {{original research|date=July 2016}}<br /> {{primary sources|date=July 2016}}<br /> }}<br /> In [[computer science]], the '''Cuttlefish Optimization Algorithm (CFA)''' is a population-based [[search algorithm]] inspired by skin color changing behaviour of [[Cuttlefish]] which was developed in 2013 &lt;ref name=&quot;Adel &amp; al, 2013&quot;&gt;Adel Sabry Eesa, A. M. A. B., Zeynep Orman. (2013). Cuttlefish Algorithm – A Novel Bio-Inspired Optimization Algorithm. International Journal of Scientific &amp; Engineering Research, 4(9).&lt;/ref&gt;&lt;ref name=&quot;Adel &amp; al, 2015&quot;&gt;Adel Sabry Eesa, Z. O., Adnan Mohsin Abdulazeez Brifcani. (2015). A novel feature-selection approach based on the cuttlefish optimization algorithm for intrusion detection systems. Expert Systems with Applications, 42, 2670–2679. doi: 10.1016/j.eswa.2014.11.009.&lt;/ref&gt; It has two global search and two local search.<br /> == Cuttlefish ==<br /> <br /> Cuttlefish &lt;ref name=&quot;Lydia M Mäthger, 2008&quot;&gt;Lydia M Mäthger, E. J. D., N. Justin Marshall, Roger T Hanlon. (2008). Mechanisms and behavioural functions of structural coloration in cephalopods. Journal of the royal society interface, 6(2). doi: 10.1098/rsif.2008.0366.focus. &lt;/ref&gt; &lt;ref name=&quot;Wood, 199&quot;&gt;Wood, D. J. B. (1995). The Cephalopod Page Retrieved 8/7, 2016, from http://www.thecephalopodpage.org/. &lt;/ref&gt; is a type of cephalopods which is well-known for its abilities to change its skin color to either seemingly disappear into its environment or to produce stunning displays.<br /> The patterns and colors seen in cuttlefish are produced by different layers of cells &lt;ref name=&quot;Jarred Yacob &amp; al, 20011&quot;&gt;Jarred Yacob, A. C. L., Allyson Gosling, Debra H. J. St Hilaire, Lindsay Tesar, Michelle McRae and Nathan J. Tublitz. (2011). Principles underlying chromatophore addition during maturation in the European cuttlefish. Journal of Experimental Biology, 214(Pt 20), 3423-3432. doi: 10.1242/jeb.055251.&lt;/ref&gt; stacked together including chromatophores, leucophores and iridophores, it is the combination of certain cells operations of reflection light and matching pattern at once that allows cuttlefish to possess such a large array of patterns and colors.<br /> The patterns and colors seen in cuttlefish are produced by reflected light from different layers of cells including (chromatophores, leucophores and iridophores). Chromatophores cells contain a saccule that holds a pigment (red, orange, yellow, black, and brown) as well as 15-25 muscles, when the muscles contract, they stretrch the saccule allowing the pigment insede to cover a large surface area. When the muscles relax, the saccule shrinks and hides the pigment &lt;ref name=&quot;Flory, 1969&quot;&gt;Flory, E. (1969). Ultrastructure and function of cephalopod chromatophores. Am Zool., 9(2), 429-242. doi: http://dx.doi.org/10.1093/icb/9.2.429.&lt;/ref&gt;. But a set of mirror-like cells (iridophores and leucophores) allows cuttlefish skin to assume all the rich and varied colors of its environment. The appearance of the cuttlefish thus depends on which skin elements affect the light incident on the skin. Light may be reflected by either chromatophores or by reflecting cells (iridophores or leucophores) or a combination of both, and it is the physiological changeability of the chromatophores and reflecting cells that enables the cuttlefish to produce such a wide repertoire of optical effects &lt;ref name=&quot;MESSENGER, 2001&quot;&gt;MESSENGER, J. B. (2001). Cephalopod chromatophores: neurobiology and natural history. Biological Reviews, 76(4), 473-528. doi: 10.1017/S1464793101005772.&lt;/ref&gt;. <br /> == Cuttlefish Optimization Algorithm (CFA) ==<br /> <br /> The algorithm considers two main processes: ''Reflection'' and ''Visibility''. Reflection process simulates the light reflection mechanism, while visibility simulates the visibility of matching patterns. These two processes are used as a search strategy to find the global optimal solution. The formulation of finding the new solution (''newP'') by using ''reflection'' and ''visibility'' is as follows:<br /> <br /> &lt;math&gt;<br /> newP = Reflection + Visibility <br /> &lt;/math&gt;<br /> <br /> CFA divide the pubulaion to 4 Groups (G1, G2, G3 and G4). For G1 the algorithm appling case 1 and 2 (the interaction between chromatophores and iridophores) to produce a new solutions. These two cases are used as a golobal search. For G2, the algorithm uses case 3 (Iridophores reflection opaerator) and case 4 (the interaction between Iridophores and chromatophores) to produces a new solutions) as a local search. While for G3 the interaction between the leucophores and chromatophores (case 5) is used to produse solutions around the best solution (local search). Finaly for G4, case 6 (reflection operator of leucophores) is used as a global search by reflecting any incoming light as it with out any modification. The main step of CFA is discribed as follows:<br /> <br /> &lt;source lang=&quot;C#&quot;&gt;<br /> 1 Initialize population (P[N]) with random solutions, Assign the values of r1, r2, v1, v2.<br /> 2 Evaluate the population and Keep the best solution.<br /> 3 Divide population into four groups (G1, G2, G3 and G4).<br /> 4 Repeat <br /> 4.1 Calculate the average value of the best solution.<br /> 4.2 for (each element in G1)<br /> generate new solution using Case(1 amd 2)<br /> 4.3 for (each element in G2)<br /> generate new solution using Case(3 amd 4)<br /> 4.4 for (each element in G3)<br /> generate new solution using Case(5)<br /> 4.5 for (each element in G4)<br /> generate new solution using Case(6)<br /> 4.6 Evluate the new solutions <br /> 5. Untile (stopping criterion is met)<br /> 6. Return the best solution<br /> &lt;/source&gt;<br /> <br /> Equations that are used to calculate reflection and visibility for the four Groups are described bellow:<br /> <br /> Case 1 and 2 for G1:<br /> <br /> &lt;math&gt; Reflection[j] = R*G_{1}[j].Points[j] &lt;/math&gt; <br /> <br /> &lt;math&gt; Visibility[j] = V*(Best.Points[j]-G_{1}[i].Points[j]) &lt;/math&gt;<br /> <br /> Case 3 and 4 for G2:<br /> <br /> &lt;math&gt; Reflection[j] = R*Best.Points[j] &lt;/math&gt;<br /> <br /> &lt;math&gt; Visibility[j] = V*(Best.Points[j]-G_{2}[i].Points[j]) &lt;/math&gt;<br /> <br /> Case 5 for G3:<br /> <br /> &lt;math&gt; Reflection[j] = R*Best.Points[j] &lt;/math&gt;<br /> <br /> &lt;math&gt; Visibility[j] = V*(Best.Points[j]-AV_{Best} &lt;/math&gt;<br /> <br /> Case 6 for G4:<br /> <br /> &lt;math&gt; P[i].Points[j] = random*(upperLimit-lowerLinit)+LowerLimit, i = 1, 2, ..., N; j=1, 2, ..., d &lt;/math&gt;<br /> <br /> Where &lt;math&gt;G_{1}&lt;/math&gt;, &lt;math&gt;G_{2}&lt;/math&gt; are Group1 and Group2, ''i'' presents the &lt;math&gt;i^{th}&lt;/math&gt; element in ''G'', ''j'' is the &lt;math&gt;j^{th}&lt;/math&gt; point of &lt;math&gt;i^{th}&lt;/math&gt; element in group ''G'', ''Best'' is the best solution and &lt;math&gt;AV_{Best}&lt;/math&gt; presents the average value of the ''Best'' points. While ''R'' and ''V'' are two random numbers produced around zero such as between (-1, 1), ''R'' represents the degree of reflection, ''V'' represents the visibility degree of the final view of the pattern, ''upperLimit'' and ''lowerLimit'' are the upper limit and the lower limit of the problem domain.<br /> <br /> ==See also==<br /> *[[Mathematical optimization]]<br /> *[[Metaheuristic]]<br /> *[[Evolutionary computation]]<br /> *[[Swarm intelligence]]<br /> *[[Particle swarm optimization]]<br /> *[[Ant colony optimization algorithms]]<br /> *[[Artificial bee colony algorithm]]<br /> *[[Intelligent Water Drops]]<br /> <br /> == References ==<br /> {{Reflist}}<br /> <br /> ==External links==<br /> *[https://sites.google.com/site/cuttlefishalgortihm/ The Cuttlefish Optimization Algorithm website]<br /> <br /> {{Optimization algorithms}}<br /> <br /> {{DEFAULTSORT:Cuttlefish Optimization Algorithm}}<br /> [[Category:Artificial intelligence]]<br /> [[Category:Collective intelligence]]<br /> [[Category:Optimization algorithms and methods]]<br /> [[Category:Cuttlefish Algorithm|Algorithm]]</div> Cuttlefish Optimization Algorithm https://en.wikipedia.org/w/index.php?title=Cuttlefish_Optimization_Algorithm&diff=729117329 Cuttlefish Optimization Algorithm 2016-07-10T00:53:27Z <p>Cuttlefish Optimization Algorithm: </p> <hr /> <div>{{Multiple issues|<br /> {{Underlinked|date=July 2016}}<br /> {{Orphan|date=July 2016}}<br /> {{COI|date=July 2016}}<br /> {{notability|date=July 2016}}<br /> {{original research|date=July 2016}}<br /> {{primary sources|date=July 2016}}<br /> }}<br /> In [[computer science]], the '''Cuttlefish Optimization Algorithm (CFA)''' is a population-based [[search algorithm]] inspired by skin color changing behaviour of [[Cuttlefish]] which was developed in 2013 &lt;ref name=&quot;Adel &amp; al, 2013&quot;&gt;Adel Sabry Eesa, A. M. A. B., Zeynep Orman. (2013). Cuttlefish Algorithm – A Novel Bio-Inspired Optimization Algorithm. International Journal of Scientific &amp; Engineering Research, 4(9).&lt;/ref&gt;&lt;ref name=&quot;Adel &amp; al, 2015&quot;&gt;Adel Sabry Eesa, Z. O., Adnan Mohsin Abdulazeez Brifcani. (2015). A novel feature-selection approach based on the cuttlefish optimization algorithm for intrusion detection systems. Expert Systems with Applications, 42, 2670–2679. doi: 10.1016/j.eswa.2014.11.009.&lt;/ref&gt; It has two global search and two local search.<br /> <br /> == Cuttlefish ==<br /> Cuttlefish &lt;ref name=&quot;Lydia M Mäthger, 2008&quot;&gt;Lydia M Mäthger, E. J. D., N. Justin Marshall, Roger T Hanlon. (2008). Mechanisms and behavioural functions of structural coloration in cephalopods. Journal of the royal society interface, 6(2). doi: 10.1098/rsif.2008.0366.focus. &lt;/ref&gt; &lt;ref name=&quot;Wood, 199&quot;&gt;Wood, D. J. B. (1995). The Cephalopod Page Retrieved 8/7, 2016, from http://www.thecephalopodpage.org/. &lt;/ref&gt; is a type of cephalopods which is well-known for its abilities to change its skin color to either seemingly disappear into its environment or to produce stunning displays.<br /> The patterns and colors seen in cuttlefish are produced by different layers of cells &lt;ref name=&quot;Jarred Yacob &amp; al, 20011&quot;&gt;Jarred Yacob, A. C. L., Allyson Gosling, Debra H. J. St Hilaire, Lindsay Tesar, Michelle McRae and Nathan J. Tublitz. (2011). Principles underlying chromatophore addition during maturation in the European cuttlefish. Journal of Experimental Biology, 214(Pt 20), 3423-3432. doi: 10.1242/jeb.055251.&lt;/ref&gt; stacked together including chromatophores, leucophores and iridophores, it is the combination of certain cells operations of reflection light and matching pattern at once that allows cuttlefish to possess such a large array of patterns and colors.<br /> <br /> [[File:3-Cuttlefishs.jpg|thumb|Cuttlefish]]<br /> <br /> The patterns and colors seen in cuttlefish are produced by reflected light from different layers of cells including (chromatophores, leucophores and iridophores). Chromatophores cells contain a saccule that holds a pigment (red, orange, yellow, black, and brown) as well as 15-25 muscles, when the muscles contract, they stretrch the saccule allowing the pigment insede to cover a large surface area. When the muscles relax, the saccule shrinks and hides the pigment &lt;ref name=&quot;Flory, 1969&quot;&gt;Flory, E. (1969). Ultrastructure and function of cephalopod chromatophores. Am Zool., 9(2), 429-242. doi: http://dx.doi.org/10.1093/icb/9.2.429.&lt;/ref&gt;. But a set of mirror-like cells (iridophores and leucophores) allows cuttlefish skin to assume all the rich and varied colors of its environment. The appearance of the cuttlefish thus depends on which skin elements affect the light incident on the skin. Light may be reflected by either chromatophores or by reflecting cells (iridophores or leucophores) or a combination of both, and it is the physiological changeability of the chromatophores and reflecting cells that enables the cuttlefish to produce such a wide repertoire of optical effects &lt;ref name=&quot;MESSENGER, 2001&quot;&gt;MESSENGER, J. B. (2001). Cephalopod chromatophores: neurobiology and natural history. Biological Reviews, 76(4), 473-528. doi: 10.1017/S1464793101005772.&lt;/ref&gt; . <br /> <br /> [[File:Cuttlefish2.png|thumb|The six cases of reflection used by the Cuttlefish]]<br /> <br /> == Cuttlefish Optimization Algorithm (CFA) ==<br /> The algorithm considers two main processes: ''Reflection'' and ''Visibility''. Reflection process simulates the light reflection mechanism, while visibility simulates the visibility of matching patterns. These two processes are used as a search strategy to find the global optimal solution. The formulation of finding the new solution (''newP'') by using ''reflection'' and ''visibility'' is as follows:<br /> <br /> &lt;math&gt;<br /> newP = Reflection + Visibility <br /> &lt;/math&gt;<br /> <br /> CFA divide the pubulaion to 4 Groups (G1, G2, G3 and G4). For G1 the algorithm appling case 1 and 2 (the interaction between chromatophores and iridophores) to produce a new solutions. These two cases are used as a golobal search. For G2, the algorithm uses case 3 (Iridophores reflection opaerator) and case 4 (the interaction between Iridophores and chromatophores) to produces a new solutions) as a local search. While for G3 the interaction between the leucophores and chromatophores (case 5) is used to produse solutions around the best solution (local search). Finaly for G4, case 6 (reflection operator of leucophores) is used as a global search by reflecting any incoming light as it with out any modification. The main step of CFA is discribed as follows:<br /> <br /> &lt;source lang=&quot;C#&quot;&gt;<br /> 1 Initialize population (P[N]) with random solutions, Assign the values of r1, r2, v1, v2.<br /> 2 Evaluate the population and Keep the best solution.<br /> 3 Divide population into four groups (G1, G2, G3 and G4).<br /> 4 Repeat <br /> 4.1 Calculate the average value of the best solution.<br /> 4.2 for (each element in G1)<br /> generate new solution using Case(1 amd 2)<br /> 4.3 for (each element in G2)<br /> generate new solution using Case(3 amd 4)<br /> 4.4 for (each element in G3)<br /> generate new solution using Case(5)<br /> 4.5 for (each element in G4)<br /> generate new solution using Case(6)<br /> 4.6 Evluate the new solutions <br /> 5. Untile (stopping criterion is met)<br /> 6. Return the best solution<br /> &lt;/source&gt;<br /> <br /> Equations that are used to calculate reflection and visibility for the four Groups are described bellow:<br /> <br /> Case 1 and 2 for G1:<br /> <br /> &lt;math&gt; Reflection[j] = R*G_{1}[j].Points[j] &lt;/math&gt; <br /> <br /> &lt;math&gt; Visibility[j] = V*(Best.Points[j]-G_{1}[i].Points[j]) &lt;/math&gt;<br /> <br /> Case 3 and 4 for G2:<br /> <br /> &lt;math&gt; Reflection[j] = R*Best.Points[j] &lt;/math&gt;<br /> <br /> &lt;math&gt; Visibility[j] = V*(Best.Points[j]-G_{2}[i].Points[j]) &lt;/math&gt;<br /> <br /> Case 5 for G3:<br /> <br /> &lt;math&gt; Reflection[j] = R*Best.Points[j] &lt;/math&gt;<br /> <br /> &lt;math&gt; Visibility[j] = V*(Best.Points[j]-AV_{Best} &lt;/math&gt;<br /> <br /> Case 6 for G4:<br /> <br /> &lt;math&gt; P[i].Points[j] = random*(upperLimit-lowerLinit)+LowerLimit, i = 1, 2, ..., N; j=1, 2, ..., d &lt;/math&gt;<br /> <br /> Where &lt;math&gt;G_{1}&lt;/math&gt;, &lt;math&gt;G_{2}&lt;/math&gt; are Group1 and Group2, ''i'' presents the &lt;math&gt;i^{th}&lt;/math&gt; element in ''G'', ''j'' is the &lt;math&gt;j^{th}&lt;/math&gt; point of &lt;math&gt;i^{th}&lt;/math&gt; element in group ''G'', ''Best'' is the best solution and &lt;math&gt;AV_{Best}&lt;/math&gt; presents the average value of the ''Best'' points. While ''R'' and ''V'' are two random numbers produced around zero such as between (-1, 1), ''R'' represents the degree of reflection, ''V'' represents the visibility degree of the final view of the pattern, ''upperLimit'' and ''lowerLimit'' are the upper limit and the lower limit of the problem domain.<br /> <br /> ==See also==<br /> *[[Mathematical optimization]]<br /> *[[Metaheuristic]]<br /> *[[Evolutionary computation]]<br /> *[[Swarm intelligence]]<br /> *[[Particle swarm optimization]]<br /> *[[Ant colony optimization algorithms]]<br /> *[[Artificial bee colony algorithm]]<br /> *[[Intelligent Water Drops]]<br /> <br /> == References ==<br /> {{Reflist}}<br /> <br /> ==External links==<br /> *[https://sites.google.com/site/cuttlefishalgortihm/ The Cuttlefish Optimization Algorithm website]<br /> <br /> {{Optimization algorithms}}<br /> <br /> {{DEFAULTSORT:Cuttlefish Optimization Algorithm}}<br /> [[Category:Artificial intelligence]]<br /> [[Category:Collective intelligence]]<br /> [[Category:Optimization algorithms and methods]]<br /> [[Category:Cuttlefish Algorithm|Algorithm]]</div> Cuttlefish Optimization Algorithm https://en.wikipedia.org/w/index.php?title=Cuttlefish_Optimization_Algorithm&diff=729116803 Cuttlefish Optimization Algorithm 2016-07-10T00:48:10Z <p>Cuttlefish Optimization Algorithm: </p> <hr /> <div>{{Multiple issues|<br /> {{Underlinked|date=July 2016}}<br /> {{Orphan|date=July 2016}}<br /> {{COI|date=July 2016}}<br /> {{notability|date=July 2016}}<br /> {{original research|date=July 2016}}<br /> {{primary sources|date=July 2016}}<br /> }}<br /> In [[computer science]], the '''Cuttlefish Optimization Algorithm (CFA)''' is a population-based [[search algorithm]] inspired by skin color changing behaviour of [[Cuttlefish]] which was developed in 2013 &lt;ref name=&quot;Adel &amp; al, 2013&quot;&gt;Adel Sabry Eesa, A. M. A. B., Zeynep Orman. (2013). Cuttlefish Algorithm – A Novel Bio-Inspired Optimization Algorithm. International Journal of Scientific &amp; Engineering Research, 4(9).&lt;/ref&gt;&lt;ref name=&quot;Adel &amp; al, 2015&quot;&gt;Adel Sabry Eesa, Z. O., Adnan Mohsin Abdulazeez Brifcani. (2015). A novel feature-selection approach based on the cuttlefish optimization algorithm for intrusion detection systems. Expert Systems with Applications, 42, 2670–2679. doi: 10.1016/j.eswa.2014.11.009.&lt;/ref&gt; It has two global search and two local search.<br /> <br /> == Cuttlefish ==<br /> Cuttlefish &lt;ref name=&quot;Lydia M Mäthger, 2008&quot;&gt;Lydia M Mäthger, E. J. D., N. Justin Marshall, Roger T Hanlon. (2008). Mechanisms and behavioural functions of structural coloration in cephalopods. Journal of the royal society interface, 6(2). doi: 10.1098/rsif.2008.0366.focus. &lt;/ref&gt; &lt;ref name=&quot;Wood, 199&quot;&gt;Wood, D. J. B. (1995). The Cephalopod Page Retrieved 8/7, 2016, from http://www.thecephalopodpage.org/. &lt;/ref&gt; is a type of cephalopods which is well-known for its abilities to change its skin color to either seemingly disappear into its environment or to produce stunning displays.<br /> The patterns and colors seen in cuttlefish are produced by different layers of cells &lt;ref name=&quot;Jarred Yacob &amp; al, 20011&quot;&gt;Jarred Yacob, A. C. L., Allyson Gosling, Debra H. J. St Hilaire, Lindsay Tesar, Michelle McRae and Nathan J. Tublitz. (2011). Principles underlying chromatophore addition during maturation in the European cuttlefish. Journal of Experimental Biology, 214(Pt 20), 3423-3432. doi: 10.1242/jeb.055251.&lt;/ref&gt; stacked together including chromatophores, leucophores and iridophores, it is the combination of certain cells operations of reflection light and matching pattern at once that allows cuttlefish to possess such a large array of patterns and colors.<br /> <br /> [[File:3-Cuttlefishs.jpg|thumb|Cuttlefish]]<br /> <br /> The patterns and colors seen in cuttlefish are produced by reflected light from different layers of cells including (chromatophores, leucophores and iridophores). Chromatophores cells contain a saccule that holds a pigment (red, orange, yellow, black, and brown) as well as 15-25 muscles, when the muscles contract, they stretrch the saccule allowing the pigment insede to cover a large surface area. When the muscles relax, the saccule shrinks and hides the pigment &lt;ref name=&quot;Flory, 1969&quot;&gt;Flory, E. (1969). Ultrastructure and function of cephalopod chromatophores. Am Zool., 9(2), 429-242. doi: http://dx.doi.org/10.1093/icb/9.2.429.&lt;/ref&gt;. But a set of mirror-like cells (iridophores and leucophores) allows cuttlefish skin to assume all the rich and varied colors of its environment. The appearance of the cuttlefish thus depends on which skin elements affect the light incident on the skin. Light may be reflected by either chromatophores or by reflecting cells (iridophores or leucophores) or a combination of both, and it is the physiological changeability of the chromatophores and reflecting cells that enables the cuttlefish to produce such a wide repertoire of optical effects (MESSENGER, 2001) &lt;ref name=&quot;MESSENGER, 2001&quot;&gt;MESSENGER, J. B. (2001). Cephalopod chromatophores: neurobiology and natural history. Biological Reviews, 76(4), 473-528. doi: 10.1017/S1464793101005772.&lt;/ref&gt; . <br /> <br /> [[File:Cuttlefish2.png|thumb|The six cases of reflection used by the Cuttlefish]]<br /> <br /> == Cuttlefish Optimization Algorithm (CFA) ==<br /> The algorithm considers two main processes: ''Reflection'' and ''Visibility''. Reflection process simulates the light reflection mechanism, while visibility simulates the visibility of matching patterns. These two processes are used as a search strategy to find the global optimal solution. The formulation of finding the new solution (''newP'') by using ''reflection'' and ''visibility'' is as follows:<br /> <br /> &lt;math&gt;<br /> newP = Reflection + Visibility <br /> &lt;/math&gt;<br /> <br /> CFA divide the pubulaion to 4 Groups (G1, G2, G3 and G4). For G1 the algorithm appling case 1 and 2 (the interaction between chromatophores and iridophores) to produce a new solutions. These two cases are used as a golobal search. For G2, the algorithm uses case 3 (Iridophores reflection opaerator) and case 4 (the interaction between Iridophores and chromatophores) to produces a new solutions) as a local search. While for G3 the interaction between the leucophores and chromatophores (case 5) is used to produse solutions around the best solution (local search). Finaly for G4, case 6 (reflection operator of leucophores) is used as a global search by reflecting any incoming light as it with out any modification. The main step of CFA is discribed as follows:<br /> <br /> &lt;source lang=&quot;C#&quot;&gt;<br /> 1 Initialize population (P[N]) with random solutions, Assign the values of r1, r2, v1, v2.<br /> 2 Evaluate the population and Keep the best solution.<br /> 3 Divide population into four groups (G1, G2, G3 and G4).<br /> 4 Repeat <br /> 4.1 Calculate the average value of the best solution.<br /> 4.2 for (each element in G1)<br /> generate new solution using Case(1 amd 2)<br /> 4.3 for (each element in G2)<br /> generate new solution using Case(3 amd 4)<br /> 4.4 for (each element in G3)<br /> generate new solution using Case(5)<br /> 4.5 for (each element in G4)<br /> generate new solution using Case(6)<br /> 4.6 Evluate the new solutions <br /> 5. Untile (stopping criterion is met)<br /> 6. Return the best solution<br /> &lt;/source&gt;<br /> <br /> Equations that are used to calculate reflection and visibility for the four Groups are described bellow:<br /> <br /> Case 1 and 2 for G1:<br /> <br /> &lt;math&gt; Reflection[j] = R*G_{1}[j].Points[j] &lt;/math&gt; <br /> <br /> &lt;math&gt; Visibility[j] = V*(Best.Points[j]-G_{1}[i].Points[j]) &lt;/math&gt;<br /> <br /> Case 3 and 4 for G2:<br /> <br /> &lt;math&gt; Reflection[j] = R*Best.Points[j] &lt;/math&gt;<br /> <br /> &lt;math&gt; Visibility[j] = V*(Best.Points[j]-G_{2}[i].Points[j]) &lt;/math&gt;<br /> <br /> Case 5 for G3:<br /> <br /> &lt;math&gt; Reflection[j] = R*Best.Points[j] &lt;/math&gt;<br /> <br /> &lt;math&gt; Visibility[j] = V*(Best.Points[j]-AV_{Best} &lt;/math&gt;<br /> <br /> Case 6 for G4:<br /> <br /> &lt;math&gt; P[i].Points[j] = random*(upperLimit-lowerLinit)+LowerLimit, i = 1, 2, ..., N; j=1, 2, ..., d &lt;/math&gt;<br /> <br /> Where &lt;math&gt;G_{1}&lt;/math&gt;, &lt;math&gt;G_{2}&lt;/math&gt; are Group1 and Group2, ''i'' presents the &lt;math&gt;i^{th}&lt;/math&gt; element in ''G'', ''j'' is the &lt;math&gt;j^{th}&lt;/math&gt; point of &lt;math&gt;i^{th}&lt;/math&gt; element in group ''G'', ''Best'' is the best solution and &lt;math&gt;AV_{Best}&lt;/math&gt; presents the average value of the ''Best'' points. While ''R'' and ''V'' are two random numbers produced around zero such as between (-1, 1), ''R'' represents the degree of reflection, ''V'' represents the visibility degree of the final view of the pattern, ''upperLimit'' and ''lowerLimit'' are the upper limit and the lower limit of the problem domain.<br /> <br /> ==See also==<br /> *[[Mathematical optimization]]<br /> *[[Metaheuristic]]<br /> *[[Evolutionary computation]]<br /> *[[Swarm intelligence]]<br /> *[[Particle swarm optimization]]<br /> *[[Ant colony optimization algorithms]]<br /> *[[Artificial bee colony algorithm]]<br /> *[[Intelligent Water Drops]]<br /> <br /> == References ==<br /> {{Reflist}}<br /> <br /> ==External links==<br /> *[https://sites.google.com/site/cuttlefishalgortihm/ The Cuttlefish Optimization Algorithm website]<br /> <br /> {{Optimization algorithms}}<br /> <br /> {{DEFAULTSORT:Cuttlefish Optimization Algorithm}}<br /> [[Category:Artificial intelligence]]<br /> [[Category:Collective intelligence]]<br /> [[Category:Optimization algorithms and methods]]<br /> [[Category:Cuttlefish Algorithm|Algorithm]]</div> Cuttlefish Optimization Algorithm https://en.wikipedia.org/w/index.php?title=Cuttlefish_Optimization_Algorithm&diff=729111530 Cuttlefish Optimization Algorithm 2016-07-09T23:52:07Z <p>Cuttlefish Optimization Algorithm: </p> <hr /> <div>{{Multiple issues|<br /> {{Underlinked|date=July 2016}}<br /> {{Orphan|date=July 2016}}<br /> {{COI|date=July 2016}}<br /> {{notability|date=July 2016}}<br /> {{original research|date=July 2016}}<br /> {{primary sources|date=July 2016}}<br /> }}<br /> In [[computer science]], the '''Cuttlefish Optimization Algorithm (CFA)''' is a population-based [[search algorithm]] inspired by skin color changing behaviour of [[Cuttlefish]] which was developed in 2013 &lt;ref name=&quot;Adel &amp; al, 2013&quot;&gt;Adel Sabry Eesa, A. M. A. B., Zeynep Orman. (2013). Cuttlefish Algorithm – A Novel Bio-Inspired Optimization Algorithm. International Journal of Scientific &amp; Engineering Research, 4(9).&lt;/ref&gt;&lt;ref name=&quot;Adel &amp; al, 2015&quot;&gt;Adel Sabry Eesa, Z. O., Adnan Mohsin Abdulazeez Brifcani. (2015). A novel feature-selection approach based on the cuttlefish optimization algorithm for intrusion detection systems. Expert Systems with Applications, 42, 2670–2679. doi: 10.1016/j.eswa.2014.11.009.&lt;/ref&gt; It has two global search and two local search.<br /> <br /> == Cuttlefish ==<br /> Cuttlefish &lt;ref name=&quot;Lydia M Mäthger, 2008&quot;&gt;Lydia M Mäthger, E. J. D., N. Justin Marshall, Roger T Hanlon. (2008). Mechanisms and behavioural functions of structural coloration in cephalopods. Journal of the royal society interface, 6(2). doi: 10.1098/rsif.2008.0366.focus. &lt;/ref&gt; &lt;ref name=&quot;Wood, 199&quot;&gt;Wood, D. J. B. (1995). The Cephalopod Page Retrieved 8/7, 2016, from http://www.thecephalopodpage.org/. &lt;/ref&gt; is a type of cephalopods which is well-known for its abilities to change its skin color to either seemingly disappear into its environment or to produce stunning displays.<br /> The patterns and colors seen in cuttlefish are produced by different layers of cells &lt;ref name=&quot;Jarred Yacob &amp; al, 20011&quot;&gt;Jarred Yacob, A. C. L., Allyson Gosling, Debra H. J. St Hilaire, Lindsay Tesar, Michelle McRae and Nathan J. Tublitz. (2011). Principles underlying chromatophore addition during maturation in the European cuttlefish. Journal of Experimental Biology, 214(Pt 20), 3423-3432. doi: 10.1242/jeb.055251.&lt;/ref&gt; stacked together including chromatophores, leucophores and iridophores, it is the combination of certain cells operations of reflection light and matching pattern at once that allows cuttlefish to possess such a large array of patterns and colors.<br /> <br /> [[File:Cuttlefish animal.jpg|thumb|Cuttlefish]]<br /> <br /> The patterns and colors seen in cuttlefish are produced by reflected light from different layers of cells including (chromatophores, leucophores and iridophores). Chromatophores cells contain a saccule that holds a pigment (red, orange, yellow, black, and brown) as well as 15-25 muscles, when the muscles contract, they stretrch the saccule allowing the pigment insede to cover a large surface area. When the muscles relax, the saccule shrinks and hides the pigment &lt;ref name=&quot;Flory, 1969&quot;&gt;Flory, E. (1969). Ultrastructure and function of cephalopod chromatophores. Am Zool., 9(2), 429-242. doi: http://dx.doi.org/10.1093/icb/9.2.429.&lt;/ref&gt;. But a set of mirror-like cells (iridophores and leucophores) allows cuttlefish skin to assume all the rich and varied colors of its environment. The appearance of the cuttlefish thus depends on which skin elements affect the light incident on the skin. Light may be reflected by either chromatophores or by reflecting cells (iridophores or leucophores) or a combination of both, and it is the physiological changeability of the chromatophores and reflecting cells that enables the cuttlefish to produce such a wide repertoire of optical effects (MESSENGER, 2001) &lt;ref name=&quot;MESSENGER, 2001&quot;&gt;MESSENGER, J. B. (2001). Cephalopod chromatophores: neurobiology and natural history. Biological Reviews, 76(4), 473-528. doi: 10.1017/S1464793101005772.&lt;/ref&gt; . <br /> <br /> [[File:Cuttlefish2.png|thumb|The six cases of reflection used by the Cuttlefish]]<br /> <br /> == Cuttlefish Optimization Algorithm (CFA) ==<br /> The algorithm considers two main processes: ''Reflection'' and ''Visibility''. Reflection process simulates the light reflection mechanism, while visibility simulates the visibility of matching patterns. These two processes are used as a search strategy to find the global optimal solution. The formulation of finding the new solution (''newP'') by using ''reflection'' and ''visibility'' is as follows:<br /> <br /> &lt;math&gt;<br /> newP = Reflection + Visibility <br /> &lt;/math&gt;<br /> <br /> CFA divide the pubulaion to 4 Groups (G1, G2, G3 and G4). For G1 the algorithm appling case 1 and 2 (the interaction between chromatophores and iridophores) to produce a new solutions. These two cases are used as a golobal search. For G2, the algorithm uses case 3 (Iridophores reflection opaerator) and case 4 (the interaction between Iridophores and chromatophores) to produces a new solutions) as a local search. While for G3 the interaction between the leucophores and chromatophores (case 5) is used to produse solutions around the best solution (local search). Finaly for G4, case 6 (reflection operator of leucophores) is used as a global search by reflecting any incoming light as it with out any modification. The main step of CFA is discribed as follows:<br /> <br /> &lt;source lang=&quot;C#&quot;&gt;<br /> 1 Initialize population (P[N]) with random solutions, Assign the values of r1, r2, v1, v2.<br /> 2 Evaluate the population and Keep the best solution.<br /> 3 Divide population into four groups (G1, G2, G3 and G4).<br /> 4 Repeat <br /> 4.1 Calculate the average value of the best solution.<br /> 4.2 for (each element in G1)<br /> generate new solution using Case(1 amd 2)<br /> 4.3 for (each element in G2)<br /> generate new solution using Case(3 amd 4)<br /> 4.4 for (each element in G3)<br /> generate new solution using Case(5)<br /> 4.5 for (each element in G4)<br /> generate new solution using Case(6)<br /> 4.6 Evluate the new solutions <br /> 5. Untile (stopping criterion is met)<br /> 6. Return the best solution<br /> &lt;/source&gt;<br /> <br /> Equations that are used to calculate reflection and visibility for the four Groups are described bellow:<br /> <br /> Case 1 and 2 for G1:<br /> <br /> &lt;math&gt; Reflection[j] = R*G_{1}[j].Points[j] &lt;/math&gt; <br /> <br /> &lt;math&gt; Visibility[j] = V*(Best.Points[j]-G_{1}[i].Points[j]) &lt;/math&gt;<br /> <br /> Case 3 and 4 for G2:<br /> <br /> &lt;math&gt; Reflection[j] = R*Best.Points[j] &lt;/math&gt;<br /> <br /> &lt;math&gt; Visibility[j] = V*(Best.Points[j]-G_{2}[i].Points[j]) &lt;/math&gt;<br /> <br /> Case 5 for G3:<br /> <br /> &lt;math&gt; Reflection[j] = R*Best.Points[j] &lt;/math&gt;<br /> <br /> &lt;math&gt; Visibility[j] = V*(Best.Points[j]-AV_{Best} &lt;/math&gt;<br /> <br /> Case 6 for G4:<br /> <br /> &lt;math&gt; P[i].Points[j] = random*(upperLimit-lowerLinit)+LowerLimit, i = 1, 2, ..., N; j=1, 2, ..., d &lt;/math&gt;<br /> <br /> Where &lt;math&gt;G_{1}&lt;/math&gt;, &lt;math&gt;G_{2}&lt;/math&gt; are Group1 and Group2, ''i'' presents the &lt;math&gt;i^{th}&lt;/math&gt; element in ''G'', ''j'' is the &lt;math&gt;j^{th}&lt;/math&gt; point of &lt;math&gt;i^{th}&lt;/math&gt; element in group ''G'', ''Best'' is the best solution and &lt;math&gt;AV_{Best}&lt;/math&gt; presents the average value of the ''Best'' points. While ''R'' and ''V'' are two random numbers produced around zero such as between (-1, 1), ''R'' represents the degree of reflection, ''V'' represents the visibility degree of the final view of the pattern, ''upperLimit'' and ''lowerLimit'' are the upper limit and the lower limit of the problem domain.<br /> <br /> ==See also==<br /> *[[Mathematical optimization]]<br /> *[[Metaheuristic]]<br /> *[[Evolutionary computation]]<br /> *[[Swarm intelligence]]<br /> *[[Particle swarm optimization]]<br /> *[[Ant colony optimization algorithms]]<br /> *[[Artificial bee colony algorithm]]<br /> *[[Intelligent Water Drops]]<br /> <br /> == References ==<br /> {{Reflist}}<br /> <br /> ==External links==<br /> *[https://sites.google.com/site/cuttlefishalgortihm/ The Cuttlefish Optimization Algorithm website]<br /> <br /> {{Optimization algorithms}}<br /> <br /> {{DEFAULTSORT:Cuttlefish Optimization Algorithm}}<br /> [[Category:Artificial intelligence]]<br /> [[Category:Collective intelligence]]<br /> [[Category:Optimization algorithms and methods]]<br /> [[Category:Cuttlefish Algorithm|Algorithm]]</div> Cuttlefish Optimization Algorithm https://en.wikipedia.org/w/index.php?title=Cuttlefish_Optimization_Algorithm&diff=728975804 Cuttlefish Optimization Algorithm 2016-07-08T23:38:52Z <p>Cuttlefish Optimization Algorithm: </p> <hr /> <div>{{Multiple issues|<br /> {{Underlinked|date=July 2016}}<br /> {{Orphan|date=July 2016}}<br /> }}<br /> <br /> In [[computer science]], the '''Cuttlefish Optimization Algorithm (CFA)''' is a population-based [[search algorithm]] inspired by skin color changing behaviour of Cuttlefish which was developed in 2013 &lt;ref name=&quot;Adel &amp; al, 2013&quot;&gt;Adel Sabry Eesa, A. M. A. B., Zeynep Orman. (2013). Cuttlefish Algorithm – A Novel Bio-Inspired Optimization Algorithm. International Journal of Scientific &amp; Engineering Research, 4(9).&lt;/ref&gt;&lt;ref name=&quot;Adel &amp; al, 2015&quot;&gt;Adel Sabry Eesa, Z. O., Adnan Mohsin Abdulazeez Brifcani. (2015). A novel feature-selection approach based on the cuttlefish optimization algorithm for intrusion detection systems. Expert Systems with Applications, 42, 2670–2679. doi: 10.1016/j.eswa.2014.11.009.&lt;/ref&gt; It has two global search and two local search.<br /> <br /> == Cuttlefish ==<br /> Cuttlefish &lt;ref name=&quot;Lydia M Mäthger, 2008&quot;&gt;Lydia M Mäthger, E. J. D., N. Justin Marshall, Roger T Hanlon. (2008). Mechanisms and behavioural functions of structural coloration in cephalopods. Journal of the royal society interface, 6(2). doi: 10.1098/rsif.2008.0366.focus.&lt;/ref&gt;&lt;ref name=&quot;Wood, 199&quot;&gt;Wood, D. J. B. (1995). The Cephalopod Page Retrieved 8/7, 2016, from http://www.thecephalopodpage.org/.&lt;/ref&gt; is a type of cephalopods which is well-known for its abilities to change its skin color to either seemingly disappear into its environment or to produce stunning displays.<br /> The patterns and colors seen in cuttlefish are produced by different layers of cells &lt;ref name=&quot;Jarred Yacob &amp; al, 20011&quot;&gt;Jarred Yacob, A. C. L., Allyson Gosling, Debra H. J. St Hilaire, Lindsay Tesar, Michelle McRae and Nathan J. Tublitz. (2011). Principles underlying chromatophore addition during maturation in the European cuttlefish. Journal of Experimental Biology, 214(Pt 20), 3423-3432. doi: 10.1242/jeb.055251.&lt;/ref&gt; stacked together including chromatophores, leucophores and iridophores, it is the combination of certain cells operations of reflection light and matching pattern at once that allows cuttlefish to possess such a large array of patterns and colors.<br /> <br /> [[File:Cuttlefish animal.jpg|thumb|Cuttlefish]]<br /> <br /> The patterns and colors seen in cuttlefish are produced by reflected light from different layers of cells including (chromatophores, leucophores and iridophores). Chromatophores cells contain a saccule that holds a pigment (red, orange, yellow, black, and brown) as well as 15-25 muscles, when the muscles contract, they stretrch the saccule allowing the pigment insede to cover a large surface area. When the muscles relax, the saccule shrinks and hides the pigment.&lt;ref name=&quot;Flory, 1969&quot;&gt;Flory, E. (1969). Ultrastructure and function of cephalopod chromatophores. Am Zool., 9(2), 429-242. doi: http://dx.doi.org/10.1093/icb/9.2.429.&lt;/ref&gt; But a set of mirror-like cells (iridophores and leucophores) allows cuttlefish skin to assume all the rich and varied colors of its environment. The appearance of the cuttlefish thus depends on which skin elements affect the light incident on the skin. Light may be reflected by either chromatophores or by reflecting cells (iridophores or leucophores) or a combination of both, and it is the physiological changeability of the chromatophores and reflecting cells that enables the cuttlefish to produce such a wide repertoire of optical <br /> effects.&lt;ref name=&quot;MESSENGER, 2001&quot;&gt;MESSENGER, J. B. (2001). Cephalopod chromatophores: neurobiology and natural history. Biological Reviews, 76(4), 473-528. doi: 10.1017/S1464793101005772.&lt;/ref&gt;<br /> <br /> [[File:Cuttlefish2.png|thumb|The six cases of reflection used by the Cuttlefish]]<br /> <br /> == Cuttlefish Optimization Algorithm (CFA) ==<br /> The algorithm considers two main processes: ''Reflection'' and ''Visibility''. Reflection process simulates the light reflection mechanism, while visibility simulates the visibility of matching patterns. These two processes are used as a search strategy to find the global optimal solution. The formulation of finding the new solution (''newP'') by using ''reflection'' and ''visibility'' is as follows:<br /> <br /> &lt;math&gt;<br /> newP = Reflection + Visibility <br /> &lt;/math&gt;<br /> <br /> CFA divide the pubulaion to 4 Groups (G1, G2, G3 and G4). For G1 the algorithm appling case 1 and 2 (the interaction between chromatophores and iridophores) to produce a new solutions. These two cases are used as a golobal search. For G2, the algorithm uses case 3 (Iridophores reflection opaerator) and case 4 (the interaction between Iridophores and chromatophores) to produces a new solutions) as a local search. While for G3 the interaction between the leucophores and chromatophores (case 5) is used to produse solutions around the best solution (local search). Finaly for G4, case 6 (reflection operator of leucophores) is used as a global search by reflecting any incoming light as it with out any modification. The main step of CFA is discribed as follows:<br /> <br /> &lt;source lang=&quot;C#&quot;&gt;<br /> 1 Initialize population (P[N]) with random solutions, Assign the values of r1, r2, v1, v2.<br /> 2 Evaluate the population and Keep the best solution.<br /> 3 Divide population into four groups (G1, G2, G3 and G4).<br /> 4 Repeat <br /> 4.1 Calculate the average value of the best solution.<br /> 4.2 for (each element in G1)<br /> generate new solution using Case(1 amd 2)<br /> 4.3 for (each element in G2)<br /> generate new solution using Case(3 amd 4)<br /> 4.4 for (each element in G3)<br /> generate new solution using Case(5)<br /> 4.5 for (each element in G4)<br /> generate new solution using Case(6)<br /> 4.6 Evluate the new solutions <br /> 5. Untile (stopping criterion is met)<br /> 6. Return the best solution<br /> &lt;/source&gt;<br /> <br /> Equations that are used to calculate reflection and visibility for the four Groups are described bellow:<br /> <br /> Case 1 and 2 for G1:<br /> <br /> &lt;math&gt; Reflection[j] = R*G_{1}[j].Points[j] &lt;/math&gt; <br /> <br /> &lt;math&gt; Visibility[j] = V*(Best.Points[j]-G_{1}[i].Points[j]) &lt;/math&gt;<br /> <br /> Case 3 and 4 for G2:<br /> <br /> &lt;math&gt; Reflection[j] = R*Best.Points[j] &lt;/math&gt;<br /> <br /> &lt;math&gt; Visibility[j] = V*(Best.Points[j]-G_{2}[i].Points[j]) &lt;/math&gt;<br /> <br /> Case 5 for G3:<br /> <br /> &lt;math&gt; Reflection[j] = R*Best.Points[j] &lt;/math&gt;<br /> <br /> &lt;math&gt; Visibility[j] = V*(Best.Points[j]-AV_{Best} &lt;/math&gt;<br /> <br /> Case 6 for G4:<br /> <br /> &lt;math&gt; P[i].Points[j] = random*(upperLimit-lowerLinit)+LowerLimit, i = 1, 2, ..., N; j=1, 2, ..., d &lt;/math&gt;<br /> <br /> Where &lt;math&gt;G_{1}&lt;/math&gt;, &lt;math&gt;G_{2}&lt;/math&gt; are Group1 and Group2, ''i'' presents the &lt;math&gt;i^{th}&lt;/math&gt; element in ''G'', ''j'' is the &lt;math&gt;j^{th}&lt;/math&gt; point of &lt;math&gt;i^{th}&lt;/math&gt; element in group ''G'', ''Best'' is the best solution and &lt;math&gt;AV_{Best}&lt;/math&gt; presents the average value of the ''Best'' points. While ''R'' and ''V'' are two random numbers produced around zero such as between (-1, 1), ''R'' represents the degree of reflection, ''V'' represents the visibility degree of the final view of the pattern, ''upperLimit'' and ''lowerLimit'' are the upper limit and the lower limit of the problem domain.<br /> <br /> ==See also==<br /> *[[Mathematical optimization]]<br /> *[[Metaheuristic]]<br /> *[[Evolutionary computation]]<br /> *[[Swarm intelligence]]<br /> *[[Particle swarm optimization]]<br /> *[[Ant colony optimization algorithms]]<br /> *[[Artificial bee colony algorithm]]<br /> *[[Intelligent Water Drops]]<br /> <br /> == References ==<br /> {{Reflist}}<br /> <br /> ==External links==<br /> *[https://sites.google.com/site/cuttlefishalgortihm/ The Cuttlefish Optimization Algorithm website]<br /> <br /> {{Optimization algorithms}}<br /> <br /> {{DEFAULTSORT: Cuttlefish Optimization Algorithm}}<br /> [[Category:Artificial intelligence]]<br /> [[Category:Collective intelligence]]<br /> [[Category:Optimization algorithms and methods]]<br /> [[Category:Cuttlefish Algorithm|Algorithm]]</div> Cuttlefish Optimization Algorithm https://en.wikipedia.org/w/index.php?title=Cuttlefish_Optimization_Algorithm&diff=728973685 Cuttlefish Optimization Algorithm 2016-07-08T23:13:57Z <p>Cuttlefish Optimization Algorithm: </p> <hr /> <div>{{Multiple issues|<br /> {{Underlinked|date=July 2016}}<br /> {{Orphan|date=July 2016}}<br /> }}<br /> <br /> In [[computer science]], the '''Cuttlefish Optimization Algorithm (CFA)''' is a population-based [[search algorithm]] inspired by skin color changing behaviour of Cuttlefish which was developed in 2013 &lt;ref name=&quot;Adel &amp; al, 2013&quot;&gt;Adel Sabry Eesa, A. M. A. B., Zeynep Orman. (2013). Cuttlefish Algorithm – A Novel Bio-Inspired Optimization Algorithm. International Journal of Scientific &amp; Engineering Research, 4(9).&lt;/ref&gt;&lt;ref name=&quot;Adel &amp; al, 2015&quot;&gt;Adel Sabry Eesa, Z. O., Adnan Mohsin Abdulazeez Brifcani. (2015). A novel feature-selection approach based on the cuttlefish optimization algorithm for intrusion detection systems. Expert Systems with Applications, 42, 2670–2679. doi: 10.1016/j.eswa.2014.11.009.&lt;/ref&gt; It has two global search and two local search.<br /> <br /> == Cuttlefish ==<br /> Cuttlefish &lt;ref name=&quot;Lydia M Mäthger, 2008&quot;&gt;Lydia M Mäthger, E. J. D., N. Justin Marshall, Roger T Hanlon. (2008). Mechanisms and behavioural functions of structural coloration in cephalopods. Journal of the royal society interface, 6(2). doi: 10.1098/rsif.2008.0366.focus.&lt;/ref&gt;&lt;ref name=&quot;Wood, 199&quot;&gt;Wood, D. J. B. (1995). The Cephalopod Page Retrieved 8/7, 2016, from http://www.thecephalopodpage.org/.&lt;/ref&gt; is a type of cephalopods which is well-known for its abilities to change its skin color to either seemingly disappear into its environment or to produce stunning displays.<br /> The patterns and colors seen in cuttlefish are produced by different layers of cells &lt;ref name=&quot;Jarred Yacob &amp; al, 20011&quot;&gt;Jarred Yacob, A. C. L., Allyson Gosling, Debra H. J. St Hilaire, Lindsay Tesar, Michelle McRae and Nathan J. Tublitz. (2011). Principles underlying chromatophore addition during maturation in the European cuttlefish. Journal of Experimental Biology, 214(Pt 20), 3423-3432. doi: 10.1242/jeb.055251.&lt;/ref&gt; stacked together including chromatophores, leucophores and iridophores, it is the combination of certain cells operations of reflection light and matching pattern at once that allows cuttlefish to possess such a large array of patterns and colors.<br /> <br /> [[File:Cuttlefish animal.jpg|thumb|Cuttlefish]]<br /> <br /> The patterns and colors seen in cuttlefish are produced by reflected light from different layers of cells including (chromatophores, leucophores and iridophores). Chromatophores cells contain a saccule that holds a pigment (red, orange, yellow, black, and brown) as well as 15-25 muscles, when the muscles contract, they stretrch the saccule allowing the pigment insede to cover a large surface area. When the muscles relax, the saccule shrinks and hides the pigment.&lt;ref name=&quot;Flory, 1969&quot;&gt;Flory, E. (1969). Ultrastructure and function of cephalopod chromatophores. Am Zool., 9(2), 429-242. doi: http://dx.doi.org/10.1093/icb/9.2.429.&lt;/ref&gt; But a set of mirror-like cells (iridophores and leucophores) allows cuttlefish skin to assume all the rich and varied colors of its environment. The appearance of the cuttlefish thus depends on which skin elements affect the light incident on the skin. Light may be reflected by either chromatophores or by reflecting cells (iridophores or leucophores) or a combination of both, and it is the physiological changeability of the chromatophores and reflecting cells that enables the cuttlefish to produce such a wide repertoire of optical <br /> effects.&lt;ref name=&quot;MESSENGER, 2001&quot;&gt;MESSENGER, J. B. (2001). Cephalopod chromatophores: neurobiology and natural history. Biological Reviews, 76(4), 473-528. doi: 10.1017/S1464793101005772.&lt;/ref&gt;<br /> <br /> [[File:Cuttlefish2.png|thumb|The six cases of reflection used by the Cuttlefish]]<br /> <br /> == Cuttlefish Optimization Algorithm (CFA) ==<br /> The algorithm considers two main processes: ''Reflection'' and ''Visibility''. Reflection process simulates the light reflection mechanism, while visibility simulates the visibility of matching patterns. These two processes are used as a search strategy to find the global optimal solution. The formulation of finding the new solution (''newP'') by using ''reflection'' and ''visibility'' is as follows:<br /> <br /> &lt;math&gt;<br /> newP = Reflection + Visibility <br /> &lt;/math&gt;<br /> <br /> CFA divide the pubulaion to 4 Groups (G1, G2, G3 and G4). For G1 the algorithm appling case 1 and 2 (the interaction between chromatophores and iridophores) to produce a new solutions. These two cases are used as a golobal search. For G2, the algorithm uses case 3 (Iridophores reflection opaerator) and case 4 (the interaction between Iridophores and chromatophores) to produces a new solutions) as a local search. While for G3 the interaction between the leucophores and chromatophores (case 5) is used to produse solutions around the best solution (local search). Finaly for G4, case 6 (reflection operator of leucophores) is used as a global search by reflecting any incoming light as it with out any modification. The main step of CFA is discribed as follows:<br /> <br /> &lt;source lang=&quot;C#&quot;&gt;<br /> 1 Initialize population (P[N]) with random solutions, Assign the values of r1, r2, v1, v2.<br /> 2 Evaluate the population and Keep the best solution.<br /> 3 Divide population into four groups (G1, G2, G3 and G4).<br /> 4 Repeat <br /> 4.1 Calculate the average value of the best solution.<br /> 4.2 for (each element in G1)<br /> generate new solution using Case(1 amd 2)<br /> 4.3 for (each element in G2)<br /> generate new solution using Case(3 amd 4)<br /> 4.4 for (each element in G3)<br /> generate new solution using Case(5)<br /> 4.5 for (each element in G4)<br /> generate new solution using Case(6)<br /> 4.6 Evluate the new solutions <br /> 5. Untile (stopping criterion is met)<br /> 6. Return the best solution<br /> &lt;/source&gt;<br /> <br /> Equations that are used to calculate reflection and visibility for the four Groups are described bellow:<br /> <br /> Case 1 and 2 for G1:<br /> <br /> &lt;math&gt; Reflection[j] = R*G_{1}[j].Points[j] &lt;/math&gt; <br /> <br /> &lt;math&gt; Visibility[j] = V*(Best.Points[j]-G_{1}[i].Points[j]) &lt;/math&gt;<br /> <br /> Case 3 and 4 for G2:<br /> <br /> &lt;math&gt; Reflection[j] = R*Best.Points[j] &lt;/math&gt;<br /> <br /> &lt;math&gt; Visibility[j] = V*(Best.Points[j]-G_{2}[i].Points[j]) &lt;/math&gt;<br /> <br /> Case 5 for G3:<br /> <br /> &lt;math&gt; Reflection[j] = R*Best.Points[j] &lt;/math&gt;<br /> <br /> &lt;math&gt; Visibility[j] = V*(Best.Points[j]-AV_{Best} &lt;/math&gt;<br /> <br /> Case 6 for G4:<br /> <br /> &lt;math&gt; P[i].Points[j] = random*(upperLimit-lowerLinit)+LowerLimit, i = 1, 2, ..., N; j=1, 2, ..., d &lt;/math&gt;<br /> <br /> Where &lt;math&gt;G_{1}&lt;/math&gt;, &lt;math&gt;G_{2}&lt;/math&gt; are Group1 and Group2, ''i'' presents the &lt;math&gt;i^{th}&lt;/math&gt; element in ''G'', ''j'' is the &lt;math&gt;j^{th}&lt;/math&gt; point of &lt;math&gt;i^{th}&lt;/math&gt; element in group ''G'', ''Best'' is the best solution and &lt;math&gt;AV_{Best}&lt;/math&gt; presents the average value of the ''Best'' points. While ''R'' and ''V'' are two random numbers produced around zero such as between (-1, 1), ''R'' represents the degree of reflection, ''V'' represents the visibility degree of the final view of the pattern, ''upperLimit'' and ''lowerLimit'' are the upper limit and the lower limit of the problem domain.<br /> <br /> ==See also==<br /> *[[Mathematical optimization]]<br /> *[[Metaheuristic]]<br /> *[[Evolutionary computation]]<br /> *[[Swarm intelligence]]<br /> *[[Particle swarm optimization]]<br /> *[[Ant colony optimization algorithms]]<br /> *[[Artificial bee colony algorithm]]<br /> *[[Intelligent Water Drops]]<br /> <br /> == References ==<br /> {{Reflist}}<br /> <br /> ==External links==<br /> *[https://sites.google.com/site/cuttlefishalgortihm/ The Cuttlefish Optimization Algorithm website]<br /> <br /> {{Optimization algorithms}}<br /> <br /> {{DEFAULTSORT: Cuttlefish Optimization Algorithm}}<br /> [[Category:Artificial intelligence]]<br /> [[Category:Collective intelligence]]<br /> [[Category:Optimization algorithms and methods]]<br /> [[Category:Cuttlefish|Algorithm]]</div> Cuttlefish Optimization Algorithm https://en.wikipedia.org/w/index.php?title=Cuttlefish_Optimization_Algorithm&diff=728920831 Cuttlefish Optimization Algorithm 2016-07-08T15:38:51Z <p>Cuttlefish Optimization Algorithm: ←Created page with &#039;In computer science, the &#039;&#039;&#039;Cuttlefish Optimization Algorithm (CFA)&#039;&#039;&#039; is a population-based search algorithm inspired by skin color changing behaviour o...&#039;</p> <hr /> <div>In [[computer science]], the '''Cuttlefish Optimization Algorithm (CFA)''' is a population-based [[search algorithm]] inspired by skin color changing behaviour of Cuttlefish which was developed in 2013 &lt;ref name=&quot;Adel &amp; al, 2013&quot;&gt;Adel Sabry Eesa, A. M. A. B., Zeynep Orman. (2013). Cuttlefish Algorithm – A Novel Bio-Inspired Optimization Algorithm. International Journal of Scientific &amp; Engineering Research, 4(9). &lt;/ref&gt; &lt;ref name=&quot;Adel &amp; al, 2015&quot;&gt;Adel Sabry Eesa, Z. O., Adnan Mohsin Abdulazeez Brifcani. (2015). A novel feature-selection approach based on the cuttlefish optimization algorithm for intrusion detection systems. Expert Systems with Applications, 42, 2670–2679. doi: 10.1016/j.eswa.2014.11.009. &lt;/ref&gt; It has two global search and two local search. <br /> <br /> == Cuttlefish ==<br /> Cuttlefish &lt;ref name=&quot;Lydia M Mäthger, 2008&quot;&gt;Lydia M Mäthger, E. J. D., N. Justin Marshall, Roger T Hanlon. (2008). Mechanisms and behavioural functions of structural coloration in cephalopods. Journal of the royal society interface, 6(2). doi: 10.1098/rsif.2008.0366.focus. &lt;/ref&gt; &lt;ref name=&quot;Wood, 199&quot;&gt;Wood, D. J. B. (1995). The Cephalopod Page Retrieved 8/7, 2016, from http://www.thecephalopodpage.org/. &lt;/ref&gt; is a type of cephalopods which is well-known for its abilities to change its skin color to either seemingly disappear into its environment or to produce stunning displays.<br /> The patterns and colors seen in cuttlefish are produced by different layers of cells &lt;ref name=&quot;Jarred Yacob &amp; al, 20011&quot;&gt;Jarred Yacob, A. C. L., Allyson Gosling, Debra H. J. St Hilaire, Lindsay Tesar, Michelle McRae and Nathan J. Tublitz. (2011). Principles underlying chromatophore addition during maturation in the European cuttlefish. Journal of Experimental Biology, 214(Pt 20), 3423-3432. doi: 10.1242/jeb.055251.&lt;/ref&gt; stacked together including chromatophores, leucophores and iridophores, it is the combination of certain cells operations of reflection light and matching pattern at once that allows cuttlefish to possess such a large array of patterns and colors.<br /> <br /> [[File:Cuttlefish animal.jpg|thumb|Cuttlefish]]<br /> <br /> The patterns and colors seen in cuttlefish are produced by reflected light from different layers of cells including (chromatophores, leucophores and iridophores). Chromatophores cells contain a saccule that holds a pigment (red, orange, yellow, black, and brown) as well as 15-25 muscles, when the muscles contract, they stretrch the saccule allowing the pigment insede to cover a large surface area. When the muscles relax, the saccule shrinks and hides the pigment &lt;ref name=&quot;Flory, 1969&quot;&gt;Flory, E. (1969). Ultrastructure and function of cephalopod chromatophores. Am Zool., 9(2), 429-242. doi: http://dx.doi.org/10.1093/icb/9.2.429.&lt;/ref&gt;. But a set of mirror-like cells (iridophores and leucophores) allows cuttlefish skin to assume all the rich and varied colors of its environment. The appearance of the cuttlefish thus depends on which skin elements affect the light incident on the skin. Light may be reflected by either chromatophores or by reflecting cells (iridophores or leucophores) or a combination of both, and it is the physiological changeability of the chromatophores and reflecting cells that enables the cuttlefish to produce such a wide repertoire of optical <br /> effects &lt;ref name=&quot;MESSENGER, 2001&quot;&gt;MESSENGER, J. B. (2001). Cephalopod chromatophores: neurobiology and natural history. Biological Reviews, 76(4), 473-528. doi: 10.1017/S1464793101005772.&lt;/ref&gt; . <br /> <br /> [[File:Cuttlefish2.png|thumb|The six cases of reflection used by the Cuttlefish]]<br /> <br /> == Cuttlefish Optimization Algorithm (CFA) ==<br /> The algorithm considers two main processes: ''Reflection'' and ''Visibility''. Reflection process simulates the light reflection mechanism, while visibility simulates the visibility of matching patterns. These two processes are used as a search strategy to find the global optimal solution. The formulation of finding the new solution (''newP'') by using ''reflection'' and ''visibility'' is as follows:<br /> <br /> &lt;math&gt;<br /> newP = Reflection + Visibility <br /> &lt;/math&gt;<br /> <br /> CFA divide the pubulaion to 4 Groups (G1, G2, G3 and G4). For G1 the algorithm appling case 1 and 2 (the interaction between chromatophores and iridophores) to produce a new solutions. These two cases are used as a golobal search. For G2, the algorithm uses case 3 (Iridophores reflection opaerator) and case 4 (the interaction between Iridophores and chromatophores) to produces a new solutions) as a local search. While for G3 the interaction between the leucophores and chromatophores (case 5) is used to produse solutions around the best solution (local search). Finaly for G4, case 6 (reflection operator of leucophores) is used as a global search by reflecting any incoming light as it with out any modification. The main step of CFA is discribed as follows:<br /> <br /> &lt;source lang=&quot;C#&quot;&gt;<br /> 1 Initialize population (P[N]) with random solutions, Assign the values of r1, r2, v1, v2.<br /> 2 Evaluate the population and Keep the best solution.<br /> 3 Divide population into four groups (G1, G2, G3 and G4).<br /> 4 Repeat <br /> 4.1 Calculate the average value of the best solution.<br /> 4.2 for (each element in G1)<br /> generate new solution using Case(1 amd 2)<br /> 4.3 for (each element in G2)<br /> generate new solution using Case(3 amd 4)<br /> 4.4 for (each element in G3)<br /> generate new solution using Case(5)<br /> 4.5 for (each element in G4)<br /> generate new solution using Case(6)<br /> 4.6 Evluate the new solutions <br /> 5. Untile (stopping criterion is met)<br /> 6. Return the best solution<br /> &lt;/source&gt;<br /> <br /> Equations that are used to calculate reflection and visibility for the four Groups are described bellow:<br /> <br /> Case 1 and 2 for G1:<br /> <br /> &lt;math&gt; Reflection[j] = R*G_{1}[j].Points[j] &lt;/math&gt; <br /> <br /> &lt;math&gt; Visibility[j] = V*(Best.Points[j]-G_{1}[i].Points[j]) &lt;/math&gt;<br /> <br /> <br /> Case 3 and 4 for G2:<br /> <br /> &lt;math&gt; Reflection[j] = R*Best.Points[j] &lt;/math&gt; <br /> <br /> &lt;math&gt; Visibility[j] = V*(Best.Points[j]-G_{2}[i].Points[j]) &lt;/math&gt; <br /> <br /> <br /> Case 5 for G3:<br /> <br /> &lt;math&gt; Reflection[j] = R*Best.Points[j] &lt;/math&gt; <br /> <br /> &lt;math&gt; Visibility[j] = V*(Best.Points[j]-AV_{Best} &lt;/math&gt; <br /> <br /> <br /> Case 6 for G4:<br /> <br /> &lt;math&gt; P[i].Points[j] = random*(upperLimit-lowerLinit)+LowerLimit, i = 1, 2, ..., N; j=1, 2, ..., d &lt;/math&gt; <br /> <br /> <br /> Where &lt;math&gt;G_{1}&lt;/math&gt;, &lt;math&gt;G_{2}&lt;/math&gt; are Group1 and Group2, ''i'' presents the &lt;math&gt;i^{th}&lt;/math&gt; element in ''G'', ''j'' is the &lt;math&gt;j^{th}&lt;/math&gt; point of &lt;math&gt;i^{th}&lt;/math&gt; element in group ''G'', ''Best'' is the best solution and &lt;math&gt;AV_{Best}&lt;/math&gt; presents the average value of the ''Best'' points. While ''R'' and ''V'' are two random numbers produced around zero such as between (-1, 1), ''R'' represents the degree of reflection, ''V'' represents the visibility degree of the final view of the pattern, ''upperLimit'' and ''lowerLimit'' are the upper limit and the lower limit of the problem domain.<br /> <br /> == References ==</div> Cuttlefish Optimization Algorithm