前几天,有个同事看到我生成的一幅逻辑斯蒂分岔图像后,问我:“这是咪咪吗?”我回答:“淫者见淫。”好吧,这里将生成几种分岔映射图形,包括逻辑斯蒂映射系统,正弦映射系统和曼德勃罗映射系统。实际上这几种图形算不上分形,只不过它与我写的其他分形对象使用相同的基类,所以也将其列入混沌分形的范畴。

关于基类FractalEquation的定义及相关软件见:混沌与分形

(1)逻辑斯蒂映射系统

// 逻辑斯蒂映射系统
class LogisticMap : public FractalEquation
{
public:
LogisticMap()
{
m_StartX = 0.0f;
m_StartY = 0.0f;
m_StartZ = 0.0f; m_ParamA = 0.0f;
m_ParamB = 4.0f; m_nIterateCount = ;
} void IterateValue(float x, float y, float z, float& outX, float& outY, float& outZ) const
{
float R = (float)rand()/RAND_MAX;
float k = m_ParamA + (m_ParamB - m_ParamA) * R;
outX = R*4.0f; outY = (float)rand()/RAND_MAX;
for (int i = ; i < m_nIterateCount; i++)
{
outY = k*outY*(-outY);
}
outY *= ; outZ = z;
} bool IsValidParamA() const {return true;}
bool IsValidParamB() const {return true;} private:
int m_nIterateCount;
};

调节下参数后的图形:

(2)正弦映射系统

// 正弦映射系统
class SinMap : public FractalEquation
{
public:
SinMap()
{
m_StartX = 0.0f;
m_StartY = 0.0f;
m_StartZ = 0.0f; m_ParamA = -*PI;
m_ParamB = *PI; m_nIterateCount = ;
} void IterateValue(float x, float y, float z, float& outX, float& outY, float& outZ) const
{
float R = (float)rand()/RAND_MAX;
float k = m_ParamA + (m_ParamB - m_ParamA) * R;
outX = R*4.0f; outY = (float)rand()/RAND_MAX;
for (int i = ; i < m_nIterateCount; i++)
{
outY = k*sinf(outY);
} outY *= 0.5f; outZ = z;
} bool IsValidParamA() const {return true;}
bool IsValidParamB() const {return true;} private:
int m_nIterateCount;
};

(3)曼德勃罗映射系统

// 曼德勃罗映射系统
class MandelbrotMap : public FractalEquation
{
public:
MandelbrotMap()
{
m_StartX = 0.0f;
m_StartY = 0.0f;
m_StartZ = 0.0f; m_ParamA = -2.0f;
m_ParamB = 0.0f; m_nIterateCount = ;
} void IterateValue(float x, float y, float z, float& outX, float& outY, float& outZ) const
{
float R = (float)rand()/RAND_MAX;
float k = m_ParamA + (m_ParamB - m_ParamA) * R;
outX = R*4.0f; outY = (float)rand()/RAND_MAX;
for (int i = ; i < m_nIterateCount; i++)
{
outY = outY*outY + k;
} outZ = z;
} bool IsValidParamA() const {return true;}
bool IsValidParamB() const {return true;} private:
int m_nIterateCount;
};

最后发下被我同事当成MM的逻辑斯蒂分岔图像:

之前我还写过一篇关于逻辑斯蒂的文章:混沌数学之logistic模型

混沌分形之逻辑斯蒂(Logistic)映射系统的更多相关文章

  1. 【转】机器学习笔记之(3)——Logistic回归(逻辑斯蒂回归)

    原文链接:https://blog.csdn.net/gwplovekimi/article/details/80288964 本博文为逻辑斯特回归的学习笔记.由于仅仅是学习笔记,水平有限,还望广大读 ...

  2. 机器学习之LinearRegression与Logistic Regression逻辑斯蒂回归(三)

    一 评价尺度 sklearn包含四种评价尺度 1 均方差(mean-squared-error) 2 平均绝对值误差(mean_absolute_error) 3 可释方差得分(explained_v ...

  3. python机器学习实现逻辑斯蒂回归

    逻辑斯蒂回归 关注公众号"轻松学编程"了解更多. [关键词]Logistics函数,最大似然估计,梯度下降法 1.Logistics回归的原理 利用Logistics回归进行分类的 ...

  4. 【分类器】感知机+线性回归+逻辑斯蒂回归+softmax回归

    一.感知机     详细参考:https://blog.csdn.net/wodeai1235/article/details/54755735 1.模型和图像: 2.数学定义推导和优化: 3.流程 ...

  5. spark机器学习从0到1逻辑斯蒂回归之(四)

      逻辑斯蒂回归 一.概念 逻辑斯蒂回归(logistic regression)是统计学习中的经典分类方法,属于对数线性模型.logistic回归的因变量可以是二分类的,也可以是多分类的.logis ...

  6. [置顶] 局部加权回归、最小二乘的概率解释、逻辑斯蒂回归、感知器算法——斯坦福ML公开课笔记3

    转载请注明:http://blog.csdn.net/xinzhangyanxiang/article/details/9113681 最近在看Ng的机器学习公开课,Ng的讲法循循善诱,感觉提高了不少 ...

  7. 【项目实战】pytorch实现逻辑斯蒂回归

    视频指导:https://www.bilibili.com/video/BV1Y7411d7Ys?p=6 一些数据集 在pytorch框架下,里面面有配套的数据集,pytorch里面有一个torchv ...

  8. 逻辑斯蒂(logistic)回归深入理解、阐述与实现

    第一节中说了,logistic 回归和线性回归的区别是:线性回归是根据样本X各个维度的Xi的线性叠加(线性叠加的权重系数wi就是模型的参数)来得到预测值的Y,然后最小化所有的样本预测值Y与真实值y'的 ...

  9. 逻辑斯蒂回归VS决策树VS随机森林

    LR 与SVM 不同 1.logistic regression适合需要得到一个分类概率的场景,SVM则没有分类概率 2.LR其实同样可以使用kernel,但是LR没有support vector在计 ...

随机推荐

  1. 基于js的自适应、多样式轮播图插件(兼容IE8+、FF、chrome等主流浏览器)

    插件github地址:https://github.com/pomelott/slider-plug_in 使用方式: slider plug-in 左右滑动的自适应.多样式全能插件.多次调用时只需传 ...

  2. vc++ 在程序中运行另一个程序的方法

    在vc++ 程序中运行另一个程序的方法有三个: WinExec(),ShellExcute()和CreateProcess() 三个SDK函数: WinExec,ShellExecute ,Creat ...

  3. Nessus漏洞扫描教程之安装Nessus工具

    Nessus漏洞扫描教程之安装Nessus工具 Nessus基础知识 Nessus号称是世界上最流行的漏洞扫描程序,全世界有超过75000个组织在使用它.该工具提供完整的电脑漏洞扫描服务,并随时更新其 ...

  4. 模板 图的遍历 bfs+dfs 图的最短路径 Floyed+Dijkstra

    广搜 bfs //bfs #include<iostream> #include<cstdio> using namespace std; ],top=,end=; ][]; ...

  5. SGU 200. Cracking RSA (高斯消元求自由变元个数)

    题目链接:http://acm.sgu.ru/problem.php?contest=0&problem=200 200. Cracking RSA time limit per test: ...

  6. LightOJ 1366 - Pair of Touching Circles (统计矩形内外切圆对)

    1366 - Pair of Touching Circles   PDF (English) Statistics Forum Time Limit: 3 second(s) Memory Limi ...

  7. SWD and JTAG selection mechanism

    SWD and JTAG selection mechanism SWJ-DP enables either an SWD or JTAG protocol to be used on the deb ...

  8. SourceTree 的初次使用的两个小问题

    菜鸟才开始使用SourceTree,出现了两个小问题,特此整理一下,希望对各位新手有帮助.刚开始以为装了SourceTree就不用装git了,其实不然,不装git就会出现下面第一个问题: 1.新手使用 ...

  9. C:\Windows\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\root\文件不断增长,如何处理?

    很久没有写博了.最近半年除了忙活布置新家和过年期间走亲访友之外,都是在公司处理一些项目中的杂事:连家里买的很多书都停下来没看了,感觉这段时间在事业和学习上一直都是忙忙碌碌,却又碌碌无为. 吐槽完,说正 ...

  10. Memcache 分布式高可用集群介绍

    分布式缓存需考虑如下三点: 1.缓存本身的水平线性扩展的问题. 2.缓存大病罚下的本身性能问题. 3.避免缓存的单点鼓掌问题. 分布式缓存存在的问题: 1.内存本身的管理问题.内存的分配,管理和回收机 ...