小编rey*_*n64的帖子

限制cabal安装使用的内存?

我的服务器托管限制了1GB内存.当我想编译一些大型程序时git-annex,Cabal吃了很多内存.有没有办法限制cabalgcl使用某些选项来限制内存使用?

我用一些细节更新了问题:我在Webfaction托管(CentOS 7 - 64bit)上运行cabal(1.22.4.0)和Ghc7.10.2,可以访问shell(非root访问).Webfaction admin/robot通常会因编译而容忍一些爆发.但Ghc/ Cabal需要太多内存并花费太多时间来进行某些包编译.因此系统会自动杀死所有进程.

我需要多次重新启动编译才能最终获得成功的结果.

我的主要目标是编译以成功结束,无论需要多长时间.

haskell ghc memory-consumption cabal cabal-install

17
推荐指数
1
解决办法
833
查看次数

Yield Request调用在scrapy的递归方法中产生奇怪的结果

我试图在一天之内使用Python和Scrapy从所有国家的所有机场取消所有出发和到达.

这个着名站点(飞行雷达)使用的JSON数据库需要在一个机场的出发或到达> 100时逐页查询.我还根据查询的实际UTC计算时间戳.

我尝试使用此层次结构创建数据库:

country 1
 - airport 1
    - departures
      - page 1
      - page ...
    - arrivals
      - page 1
      - page ...
- airport 2
    - departures
      - page 1
      - page ...
    - arrivals
      - page 
      - page ...
...
Run Code Online (Sandbox Code Playgroud)

我使用两种方法按页面计算时间戳和网址查询:

def compute_timestamp(self):
    from datetime import datetime, date
    import calendar
    # +/- 24 heures
    d = date(2017, 4, 27)
    timestamp = calendar.timegm(d.timetuple())
    return timestamp

def build_api_call(self,code,page,timestamp):
    return 'https://api.flightradar24.com/common/v1/airport.json?code={code}&plugin\[\]=&plugin-setting\[schedule\]\[mode\]=&plugin-setting\[schedule\]\[timestamp\]={timestamp}&page={page}&limit=100&token='.format(
        code=code, page=page, timestamp=timestamp)
Run Code Online (Sandbox Code Playgroud)

我将结果存储到CountryItem包含许多AirportItem机场的结果中.我 …

python recursion yield scrapy web-scraping

15
推荐指数
2
解决办法
1544
查看次数

如何在Java中实现遗传算法的高斯变异算子

我尝试为我的项目学习并实现一个简单的遗传算法库.在这个时候,人口的进化,选择已经准备就绪,我正在尝试为Java和Scala中的遗传进化引擎实现一个简单的好变异算子,如高斯变异算子(GMO).

我在基于多目标进化算法的Pareto排名(PM Mateo,I.Alberto),第6页和第7页的论文A变异算子中找到了关于高斯变异算子(GMO)的一些信息.

但我有一些问题需要找到有关如何在Java中实现此高斯变异算子和此运算符的其他有用变体的其他信息.我该怎么办?

我正在使用random.nextGaussian()随机Java util 的功能,但此方法仅返回0到1之间的随机数.

所以,

a)在这种情况下,如何修改返回编号的精度?(例如,我想获得一个介于0和1之间的随机双数,步长等于0.00001.)

b)我如何指定musigma使用这个函数,因为我想在本地搜索我的基因组的值,而不是在-1和1之间.我怎样才能调整我的基因组价值的本地研究?

经过研究,我找到了b)问题的答案.我似乎可以取代高斯随机数,如下所示:

 newGenomeValue = oldGenomeValue + (( gaussiandRndNumber * sigma ) + mean )
Run Code Online (Sandbox Code Playgroud)

其中mean=我的基因组价值.

(参见底部的方法如何生成具有正态或高斯分布的随机数?)

java random artificial-intelligence gaussian genetic-algorithm

13
推荐指数
1
解决办法
8024
查看次数

与 guix 相比,nix 中的 rPackages(封装的引脚版本)具有更好的可重现性

我实际上正在评估不同的解决方案,以增强/探索我的 R/Python 科学工作流程中的可重复性可重现性:具有可重现分析(绘图、分析)和纸张的数据。

如您所知,有两大 Linux 版本提供了一些解决方案:Nix 和 Guix

在 nix 中,通常描述的用 R 开发的方式是,例如,使用rWrapperrPackages

pkgs.rWrapper.override{ packages = with pkgs.rPackages; [tidyverse rmarkdown]; };
Run Code Online (Sandbox Code Playgroud)

我的问题是(不是那么......)简单,就像 Python 一样,众所周知,R 在可重复性方面是一场噩梦,即使在中期也是如此。为了好玩,您可以尝试使用最新版本的 R 运行 2 年以来的 ggplot2 代码...

为了提出一个可以从科学论文的相同数据产生相同结果的薄片,我有兴趣在推导中修复 R 的版本和用于计算分析或绘图的 R 包的版本。

pkgs.rWrapper.override{ packages = with pkgs.rPackages; [tidyverse rmarkdown]; };
Run Code Online (Sandbox Code Playgroud)

例如,我如何更精确地定义我想使用的,编译我的test.Rmd,只有 tidyverse 1.3.1 和 R 4.1.O ?甚至在 5 年内?

我发现 Guix 显示了 R 和 tidyverse 的不同可用包/版本:

tidyverse.1.3.1 所需的版本已明确显示:

随着rPackagesNix我搜索的方式来实现类似的东西,即。一种将 R 或 …

r reproducible-research nix nixpkgs guix

11
推荐指数
0
解决办法
231
查看次数

如何使用until循环将不可变的Seq转换为可变的seq

我试图返回一个带有until循环的可变序列,但是我有一个不可变的seq返回(0到nbGenomes):

 def generateRandomGenome(nbGenomes:Int): IndexedSeq[GenomeDouble]={
    return ((0 until nbGenomes toSeq).map{e => generateRandomGenome}) 
  }
Run Code Online (Sandbox Code Playgroud)

返回编译错误:

found   : scala.collection.immutable.IndexedSeq[org.openmole.tools.mgo.mappedgenome.genomedouble.GenomeDouble]
 required: scala.collection.mutable.IndexedSeq[org.openmole.tools.mgo.mappedgenome.genomedouble.GenomeDouble]
    return ((0 until nbGenomes toSeq).map{e => generateRandomGenome}) 
Run Code Online (Sandbox Code Playgroud)

我如何强制until循环返回一个可变的seq?谢谢scala社区!

scala mutable immutability sequence

10
推荐指数
1
解决办法
6925
查看次数

当您将链接到彼此的对象影响到此列表时,如何维护不可变列表

我正在尝试使用Scala以不可变的方式编写NSGA2中使用的Deb的快速非支配排序算法(NDS).

在此输入图像描述

但问题似乎比我想象的要困难,所以我在这里简化了制作MWE的问题.

想象一下,一个群体Seq[A],每个A元素decoratedA都有一个列表,其中包含指向其他群体元素的指针Seq[A].

一个函数evalA(a:decoratedA)linkedA它包含的列表,并减少每个的值.

接下来,我将获取decoratedAPopulation人口A 的子集列表,并对evalA每个人进行调用.我有一个问题,因为在这个子集列表上的元素的每次迭代之间decoratedAPopulation,我需要AdecoratedA新的更新linkedA它包含的新的更新它包含...

更有问题的是,每个人口元素都需要更新'linkedA'来替换链接元素,如果它发生变化......

在此输入图像描述

你可以看到Hum,以这种方式保持所有链表同步似乎很复杂.我提出了另一个解决方案底部,可能需要递归才能在每个EvalA替换元素的新种群后返回.

在此输入图像描述

我怎样才能以不变的方式正确地做到这一点?

以可变的方式编码很容易,但我找不到以不可变的方式做到这一点的好方法,你有路径或想法吗?

object test extends App{

  case class A(value:Int) {def decrement()= new A(value - 1)}

  case class decoratedA(oneAdecorated:A, listOfLinkedA:Seq[A])

  // We start algorithm loop with A element with value = 0
  val population = Seq(new A(0), new A(0), new A(8), new A(1))

  val decoratedApopulation = Seq(new …
Run Code Online (Sandbox Code Playgroud)

recursion scala list immutability genetic-algorithm

10
推荐指数
1
解决办法
391
查看次数

在vps上的docker容器上的输出端口的nginx/apache重定向

我是使用apache或nginx在VPS上管理docker容器的linux noob.

我使用OVH经典Vps(4go ram,25Go SSD)已经安装了ubuntu 15.04 + docker的图像.

安装docker容器非常简单,在我的情况下我安装没有问题图像sharelatex.

docker run -d \
  -v ~/sharelatex_data:/var/lib/sharelatex \
  -p 5000:80 \
  --name=sharelatex \
  sharelatex/sharelatex
Run Code Online (Sandbox Code Playgroud)

站点可以通过http://51.255.47.40:5000端口上的VPS的IP访问,显示站点工作没有任何问题.

我已经将一个子域(tools.sebastienreycoyrehourcq.fr)配置为服务器ip vps(51.255.47.40在webfaction面板中路由到External),不工作,不明白为什么.

我安装了一个apache服务器51.255.47.40,但我想最好的选择可能是安装一个nginx或apache的docker镜像?你能就此提出建议吗?之后,如何5000在经典的80端口apache或链接到我的子域的nginx上重定向到docker镜像的端口?

linux apache vps nginx docker

10
推荐指数
1
解决办法
1158
查看次数

pom配置强制使用scala maven插件使用jvm 7

由于scala 2.9.2项目与java 8版本之间不兼容,我需要在我的maven项目中手动指定jvm用法.

pom.xml中我做,用文档在这里:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>org.netlogo.extension</groupId>
    <packaging>jar</packaging>
    <artifactId>rungekuta</artifactId>
    <version>1.0-SNAPSHOT</version>

    <dependencies>
        <dependency>
            <groupId>org.scala-lang</groupId>
            <artifactId>scala-library</artifactId>
            <version>${lib.org.scala-lang.scala.version}</version>
        </dependency>
        <dependency>
           <groupId>org.nlogo</groupId>
           <artifactId>netlogo</artifactId>
            <version>5.2</version>
            <scope>provided</scope>
        </dependency>
    </dependencies>

    <properties>
        <lib.org.scala-lang.scala.version>2.9.3</lib.org.scala-lang.scala.version>
        <maven.scala.version>${lib.org.scala-lang.scala.version}</maven.scala.version>
    </properties>

    <build>
        <pluginManagement>
            <plugins>
                <plugin>
                    <groupId>net.alchim31.maven</groupId>
                    <artifactId>scala-maven-plugin</artifactId>
                    <version>3.2.1</version>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-compiler-plugin</artifactId>
                    <version>3.5.1</version>
                    <configuration>
                        <source>1.7</source>
                        <target>1.7</target>
                    </configuration>
                </plugin>
            </plugins>
        </pluginManagement>
        <plugins>
            <plugin>
                <groupId>net.alchim31.maven</groupId>
                <artifactId>scala-maven-plugin</artifactId>
                <version>3.2.1</version>
                <executions>
                    <execution>
                        <id>scala-compile-first</id>
                        <phase>process-resources</phase>
                        <goals>
                            <goal>add-source</goal>
                            <goal>compile</goal>
                            <goal>testCompile</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-jar-plugin</artifactId>
                <version>2.2</version>
                <configuration>
                    <archive>
                        <manifestEntries>
                            <Extension-Name>rungekuta</Extension-Name>
                            <Class-Manager>org.netlogo.extension.rungeKuta.RungeKutaExtension</Class-Manager>
                            <NetLogo-Extension-API-Version>5.0</NetLogo-Extension-API-Version>
                        </manifestEntries> …
Run Code Online (Sandbox Code Playgroud)

scala maven-plugin pom.xml maven scala-maven-plugin

10
推荐指数
1
解决办法
1871
查看次数

scala中基于组件的实体系统

我正在搜索一些库,它实现了在多个游戏中使用的基于组件的实体系统(ECS)框架,并在许多游戏引擎中实现(unity,libgdx等)

我正在scala(ECS roguelike)开始一个小游戏项目,此时我只找到一个名为ashley的java库.

你知道是否存在其他ECS库(在Scala中),或者唯一的方法是在scala(ashley)中使用或重新实现这个库吗?

另一个相关的问题,演员范式和基于组件的实体系统并不是那么遥远,有什么区别?

architecture scala game-engine roguelike component-based

9
推荐指数
1
解决办法
630
查看次数

使用Python接口查询OLAP Mondrian(MDX,XMLA)?

实际上我正在使用R + Python和RPY2来操作数据和ggplot来创建漂亮的图形..我在PostgreSQL数据库中有一些数据,而我正在使用psycopg2来查询数据.

我正在开始论文,将来我需要一个OLAP多维数据集来存储我的(非常大的)模拟数据:多维,聚合查询等.

是否有任何最佳或标准的实践来连接Python(我想要Python + R,没有jpivot或Java中的其他仪表板)和像Mondrian这样的OLAP引擎?我在Google上搜索了任何解决方案,但我找不到任何东西.

我简要地评价SQLAlchemy的和Django的ORM,但他们没有MDX或XML/A接口来查询OLAP服务器(蒙德里安或其他)...

是否可以编写一个查询的MDX,并与psycopg + ODBC,查询我的OLAP服务器,OLAP服务器给我从我的模拟数据的应答(Python对象上没有映射,但它的确定对我来说)?

更新1:

为什么我需要搜索OLAP + Mondrian技术?

由于拉瓦尔大学(GeoSoa个省+蒂埃里Badard)写了一个空间延伸到OLAP:SOLAP,并在蒙德里安实施本作GeoMondrian.我感兴趣的是因为我正在研究基于空间多代理的模拟(〜=地理模拟).

所述GeoSoa DEPARTEMENT创建一个基于Ajax组件通信和可视化与GeoMondrian空间数据:SOLAPLAYERS,其可通过其Xlma的servlet查询蒙德里安服务器.

问题:可能是在大数据处理速度慢,需要互联网或Apache 2,简单地说,这只是可视化的数据或地图...就我而言,我需要的原始数据,以使自己的数据处理+与R图形:空间分析,回归分析分析,排序等等.在这里,SOLAP帮助我为后来的复杂R分析准备数据.

为何选择Python?

1 - 对空间数据的Web访问 -

我试图用一个"酷"的Python框架,像GeoDjango内置MapFish:在GIS大社区,开源,使用GeoAlchemy操纵空间查询/数据,包括与JavaScript扩展和可视化的OpenLayers等.

2 - GIS中对空间数据的本地访问 -

我想在QGIS(开源GIS)中创建一个插件来访问和可视化数据,以及QGIS插件和API = Python.

3 - 自动分析数据 -

用户或科学家使用网格计算运行模拟,并选择他们想要对此数据运行的自动分析(R + ggplot2 + MDX查询).我的目标是创建模拟的综合报告(图形,表格数据等).

因此,在模拟之后,数据转到OLAP/SOLAP多维数据集,许多Python脚本(由用户创建)通过MDX获取数据,使用R + RPY2处理数据,并为doku-wiki或其他人的科学家编写并生成很酷的输出.社区平台.

问题?

1 - Olap4j是Mondrian与外部组件通信的API核心,是Java制造的:/

2 - SOLAPLAYERS使用Ajax访问数据,对我来说太慢了.

3 - SQLAlchemy和GeoAlchemy没有与多维数据库(OLAP)的驱动程序连接.

*解决方案?*

1 - Py4j用Python访问olap4j中的Java对象或Java集合?编写我自己的函数来访问Java映射集合?=>危险而且不是很容易?... …

python olap mdx psycopg2 xmla

8
推荐指数
2
解决办法
9616
查看次数