Skip to content

Convexification of level sets using the quasiconvex envelope (along lines)

License

Notifications You must be signed in to change notification settings

bilabbasi/qc-line-solver

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

58 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Level set convex hulls using a line-solver

The ideas behind the code are from the notion that quasiconvexity of a function, over a (convex) domain, is equivalent to quasiconvexity along lines partioning that domain.

Getting Started

There are two folders: matlab and python. Each folder has (analogously) written code in each language.

Python

All of the needed functions are contained in the linesolver.py. In particular, use quasiconvex_rotate to compute the quasiconvex envelope along a given slope (including it's rotation).

There is also a PDE-based method, found in solvers.py using the function uniformQC which also convexifies the level sets of a given input, but in a stronger sense. A reference is found below.

Matlab

Use ndim_linesolver.m to generate convex hulls of a given obstacle g.

Examples

An example for using the code is given by example-cones.py/m. The solvers are applied to an obstacle comprising the minimum of two cones. For Python, the example contains the use of both the line solver and the PDE-based method.

Author(s)

Bilal Abbasi - LinkedIn

References

Computing the level set convex hull

A PDE for the epsilon-uniformly quasiconvex envelope

If you use the paper in your work, please use the following citation:

article{abbasi2017qcline, author="Abbasi, Bilal and Oberman, Adam M.", title="Computing the Level Set Convex Hull", journal="Journal of Scientific Computing", year="2017", issn="1573-7691"}

About

Convexification of level sets using the quasiconvex envelope (along lines)

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published