Sultanow / polytopes

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Quick overview

Five-dimensional polytopes play a role in string theory, especially when they are reflexive. It is not trivial to find reflexive polytopes and there exists genetic approaches to finding them. We are implementing a genetic algorithm in Python and search for 5D polytope.

Berglund, He, Heyes, Hirst, Jejjala, and Lukas have demonstrated in their paper "New Calabi-Yau Manifolds from Genetic Algorithms" how a genetic approach can be used to identify new reflexive polytopes. The authors have found various polytopes and published their data set on GitHub. We take up this idea and embark on a search for new five-dimensional polytopes.

We mainly use the libraries numpy, matplotlib, plotly, tulip-control/polytope and pycddlib.

New results

New polytope (found 2023-12-29) with 7 vertices:

vertices = [[-2, 3, 1, -3, 0],
 [1, -2, -1, 2, 0],
 [4, -4, 1, 2, -2],
 [1, 2, 3, 0, -1],
 [-3, 3, -1, -2, 2],
 [1, 2, 3, -3, -1],
 [-2, -1, -3, 0, 2]]

New polytope (found 2023-12-31) with 7 vertices:

vertices = [[4, -2, 3, 2, -3],
 [1, -2, -1, 2, 0],
 [4, -4, 1, 2, -2],
 [1, 2, 3, 0, -1],
 [-3, 3, -1, -2, 2],
 [1, 2, 3, -3, -1],
 [-2, -4, -5, 2, 1]]

New polytope (found 2024-01-10) with 9 vertices:

vertices = [[-2, 0, 0, 1, -1],
 [ 1,  0,  0, -2, -2,],
 [ 0,  0,  0,  1,  1,],
 [-2, -1,  0, -2, -1,],
 [-3,  2, -1,  5, -2,],
 [ 1,  0,  0, -1,  0,],
 [ 0, -1,  1,  1,  3,],
 [ 6, -1,  1, -5,  1,],
 [-12, 2, -2,  7, -7,]]

Paper

The approach is roughly described in this paper (work in progress).

Investigate features of a polytope using Sage

p = LatticePolytope([(-2,0,1,0,-1), (1,0,1,-1,2), (-1,1,-1,-2,0), (1,-1,0,2,0), (1,0,0,-1,0), (0,0,0,2,-1)])
p.interior_points()
p.points()
p.is_reflexive()

or

points = [[-2,0,1,0,-1], [1,0,1,-1,2], [-1,1,-1,-2,0], [1,-1,0,2,0], [1,0,0,-1,0], [0,0,0,2,-1]]
poly = Polyhedron(points)
poly.Hrepresentation()

How to make cdd run (part of the fitness function):

pip install pycddlib

python-cdd or just cdd cause errors

About


Languages

Language:Jupyter Notebook 99.1%Language:C 0.6%Language:Python 0.1%Language:Shell 0.1%Language:Makefile 0.0%