# Python Implementation of KEANE FUNCTION

Updated: Jul 19, 2021

**Mathematical Definition**

**Input Domain**

The Keane Function is defined on input range x [0,10] and y [0,10].

**Global Minima**

The Keane Function has two global minimum f(x*) = 0.673667521146855 at

x* = (1.393249070031784, 0)

x* = (0, 1.393249070031784)

**Description and Features**

The Keane Function is defined on 2-dimensional space. This function is considered as standard benchmark for non-linear constrained optimization.

The Keane Function is

Non-separable

Continuous

Differentiable

Non-convex

Multi-modal

**Python Implementation**

*%** Please forward any comments or bug reports **in** chat*
*Copyright **2021.** **INDUSMIC** **PRIVATE** **LIMITED**.**THERE** **IS** **NO** **WARRANTY**,** **EXPRESS** **OR** **IMPLIED**.** **WE** **DO** **NOT** **ASSUME** **ANY** **LIABILITY** **FOR** **THE** **USE** **OF** **THIS** **PROGRAM**.** If software is modified to produce derivative works**,** such modified software should be clearly marked**.** Additionally**,** user can redistribute it and**/**or modify it under the terms **of** the **GNU** General Public License**.** This program is distributed **in** the hope that it will be useful**,** but **WITHOUT** **ANY** **WARRANTY**.** See the **GNU** General Public License **for** more details**.*
*%** **for** any support connect **with** us on help**.**indusmic@gmail**.**com*
**%**** ****Author****:**** ****RIYA**** ****SHIVHARE**
import matplotlib.pyplot as plt
import numpy as np
from numpy import sin
from numpy import sqrt
def f(x1,x2):
a=-sin(x1-x2)**2*sin(x1+x2)**2
b=sqrt(x1*x1+x2*x2)
c=a/b
return c
x1 = np.linspace(10,-10)
x2 = np.linspace(10,-10)
x1,x2=np.meshgrid(x1,x2)
F=f(x1,x2)
fig =plt.figure(figsize=(9,9))
ax=fig.gca(projection='3d')
ax.contour3D(x1,x2,F,450)
ax.set_xlabel('X')
ax.set_ylabel('Y')
ax.set_zlabel('Z')
ax.set_title('Keane Function')
ax.view_init(21,45)
#plt.contour(x1,x2,F,15)
plt.show()

**References:**

[1] Jamil, Momin, and Xin-She Yang. "A literature survey of benchmark functions for global optimization problems." *International Journal of Mathematical Modelling and Numerical Optimization* 4.2 (2013): 150-194.