<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>http://sokobano.de/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Sokobania</id>
	<title>Sokoban Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="http://sokobano.de/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Sokobania"/>
	<link rel="alternate" type="text/html" href="http://sokobano.de/wiki/index.php?title=Special:Contributions/Sokobania"/>
	<updated>2026-04-17T17:29:44Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.6</generator>
	<entry>
		<id>http://sokobano.de/wiki/index.php?title=Talk:Links&amp;diff=4606</id>
		<title>Talk:Links</title>
		<link rel="alternate" type="text/html" href="http://sokobano.de/wiki/index.php?title=Talk:Links&amp;diff=4606"/>
		<updated>2009-05-25T16:03:32Z</updated>

		<summary type="html">&lt;p&gt;Sokobania: /* sokogen résumé */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Level Generators ==&lt;br /&gt;
=== Sokogen ===&lt;br /&gt;
&lt;br /&gt;
Hello Matthias ! &lt;br /&gt;
&lt;br /&gt;
I really appreciate this &amp;quot;sokoban wiki&amp;quot; ! &lt;br /&gt;
&lt;br /&gt;
I wanted to send you a mail via sokoban-wiki, but it seems that you have not allowed it in your personal preferences.  So, I will use this discussion page (which is a good place to do that, imho!). &lt;br /&gt;
&lt;br /&gt;
You wrote in the comment part of your last undo:&amp;lt;br&amp;gt;&lt;br /&gt;
Level Generators - @Sokobania: is this just a level set or a real program? I haven&#039;t found the program at http://duthen.club.fr/SOKOBAN-HTML/sokoban-jd.html&lt;br /&gt;
&lt;br /&gt;
I wrote a few lines on my local home page:&amp;lt;br&amp;gt;&lt;br /&gt;
http://sokobano.de/wiki/index.php?title=User:Sokobania&lt;br /&gt;
&lt;br /&gt;
Thus the answer to your question is: &amp;quot;yes, it&#039;s a real program&amp;quot;, though it has not been released yet. &lt;br /&gt;
&lt;br /&gt;
Would you agree to redo my change?&lt;br /&gt;
&lt;br /&gt;
[[User:Sokobania|Sokobania]] 12:36, 29 April 2009 (CEST)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color:#F0FFF0;padding:5px;border:1px solid green;&amp;quot;&amp;gt;&lt;br /&gt;
Hello Jacques!&lt;br /&gt;
&lt;br /&gt;
Thanks a lot for your explanations!&amp;lt;br&amp;gt;&lt;br /&gt;
I have removed your changes because I hadn&#039;t found your program and the Wiki shouldn&#039;t contain information about &amp;quot;secret&amp;quot; personal programs nobody else knows or can download. However, together with your extra information it&#039;s an interesting information how the level sets had been generated and what program had been used to do it. Therefore I of course have redone your change (well, nevertheless I hope that you may release the program at any time to the public).&lt;br /&gt;
&lt;br /&gt;
If you plan to rewrite the program from lisp to Java I will be very interested to see it and - if you allow - to help you doing it. I am the author of the program [http://sourceforge.net/projects/jsokoapplet/ JSoko]. It&#039;s a Java program (open source). I&#039;m in contact with Brian Damgaard who is the author of YASGen. My program is missing a generator for levels. Maybe we can exchange information on how to code such a generator so you can rewrite your program and I can implement a simple generator for my program.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; Matthias, 30.04.2009&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Hello Matthias, &lt;br /&gt;
&lt;br /&gt;
Thank you for redoing the changes about Sokogen.&lt;br /&gt;
&lt;br /&gt;
I&#039;m currently writing an article about its algorithm, but I&#039;m not sure (yet) if I want to &amp;quot;give/share&amp;quot; it... I need more time still... &lt;br /&gt;
&lt;br /&gt;
Anyway, do you know whether SokEvo (http://fruise.googlepages.com/sokevo.html by Lee Haywood) is a sokoban level generator by itself or if it just uses the YASGen program ?&lt;br /&gt;
&lt;br /&gt;
Jacques - [[User:Sokobania|Sokobania]] 11:53, 22 May 2009 (CEST)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Brian:&amp;lt;br /&amp;gt;&lt;br /&gt;
Lee&#039;s SokEvo is a level generator in its own right, but it uses my YASGen code as backend, i.e., as &amp;quot;calculator&amp;quot;. It&#039;s easiest to explain the relationship by saying that the level generator consists of two parts: &lt;br /&gt;
&lt;br /&gt;
* a level-producer: the evolver, or GA (genetic algorithm) machine, producing candidate templates.&lt;br /&gt;
&lt;br /&gt;
* a level-searcher: a backwards search, starting with boxes at the goal squares and then pulling the boxes around on the board as far as possible. The position with the highest number of pulls is the best candidate which can created from this template. The level-searcher uses a conventional breadth-first search strategy, and is in a sense the opposite of a Sokoban solver.&lt;br /&gt;
&lt;br /&gt;
Lee&#039;s SokEvo program has its own producer with a different GA machine than the YASGen program. My contribution was to convert the YASGen backend from Pascal to the C language, so it was easy for Lee to incorporate the backend in SokEvo. &lt;br /&gt;
&lt;br /&gt;
For the learning experience, Lee years later gave the code a light massage to match his personal taste, but a comparison of his final backend and my &amp;quot;YASGen.c&amp;quot; C-language source-code (which can be found in the YASS package) reveals that it&#039;s still the same code.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Hello Brian! &lt;br /&gt;
&lt;br /&gt;
Thank you very much!  That sounds pretty clear for me! &lt;br /&gt;
&lt;br /&gt;
And sokogen seems quite close to YASGen and SokEvo! &lt;br /&gt;
&lt;br /&gt;
In a sense, this is not totally surprising since sokoban is never much more than pushing and/or pulling boxes! &lt;br /&gt;
&lt;br /&gt;
When I wrote it, I did not want to write or use a solver (like Yoshio Murase did). &lt;br /&gt;
So sokogen has no solver and it does not need any one since it deals only with valid sokoban puzzles.&lt;br /&gt;
&lt;br /&gt;
Sokogen has different entry points: it can use an empty sokoban level (with no boxes and no pusher) or create a new one using templates as described in Yoshio&#039;s paper. &lt;br /&gt;
&lt;br /&gt;
Then sokogen uses a breadth-first back and forth search strategy, using a subtle evaluation function to measure the &amp;quot;difficulty&amp;quot; of the levels which have been generated.&lt;br /&gt;
&lt;br /&gt;
Et voilà!&lt;br /&gt;
&lt;br /&gt;
)jack( [[User:Sokobania|Sokobania]] 18:03, 25 May 2009 (CEST)&lt;/div&gt;</summary>
		<author><name>Sokobania</name></author>
	</entry>
	<entry>
		<id>http://sokobano.de/wiki/index.php?title=User:Sokobania&amp;diff=4580</id>
		<title>User:Sokobania</title>
		<link rel="alternate" type="text/html" href="http://sokobano.de/wiki/index.php?title=User:Sokobania&amp;diff=4580"/>
		<updated>2009-04-29T09:17:51Z</updated>

		<summary type="html">&lt;p&gt;Sokobania: /* a brief history of &amp;quot;sokogen&amp;quot; */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== The Sokoban Level Generator &amp;quot;Sokogen&amp;quot; ==&lt;br /&gt;
&lt;br /&gt;
My name is Jacques Duthen (sokobania). &lt;br /&gt;
&lt;br /&gt;
In 1996, as my son Dimitri was 6 years old, I wrote, for him (and, in anticipation, for his young brother), the collection with their name &amp;quot;Dimitri and Yorick&amp;quot;. &lt;br /&gt;
I found it very painful to do this by hand (initially on the Trouville beach sand!).  So, I wrote a program in my spare time to automatically generate sokoban levels.  I called this program &amp;quot;Sokogen&amp;quot;, which stands for &amp;quot;sokoban generator&amp;quot;.&amp;lt;br&amp;gt;&lt;br /&gt;
Cf. also http://games.groups.yahoo.com/group/sokoban/message/939&lt;br /&gt;
&lt;br /&gt;
This program was partially inspired from the Yoshio Muraso&#039;s paper.&lt;br /&gt;
&lt;br /&gt;
The collections generated with &amp;quot;sokogen&amp;quot; are all called &amp;quot;sokogen-yymmdd&amp;quot;, where &amp;quot;yymmdd&amp;quot; is the date when the collection is generated or finished. &lt;br /&gt;
&lt;br /&gt;
I also wrote a program &amp;quot;pskm-print.el&amp;quot; (in emacs-lisp and postscript) to generate the postscript printable version of a collection of sokoban levels.&lt;br /&gt;
&lt;br /&gt;
I&#039;ve not modified my personal pages since many years, but, still, the page &amp;quot;interlude&amp;quot; refers to these program-generated levels:&lt;br /&gt;
http://duthen.club.fr/sokoban/interlude.html&lt;br /&gt;
&lt;br /&gt;
For this interlude happening, I printed out (with pskm-print) different collections so that everybody can play (we had not enough computers).&lt;br /&gt;
&lt;br /&gt;
Let me translate (the best I can!) this part of this page:&lt;br /&gt;
&lt;br /&gt;
[TRANSLATION]&lt;br /&gt;
&lt;br /&gt;
=== Play on paper ===&lt;br /&gt;
There will be several kilogrammes of sheets, with several copies of hundreds of small Sokoban levels (with an approximate size 7x7), i.e. enough material to keep us busy for some time.&lt;br /&gt;
&lt;br /&gt;
To play on paper, please bring several coins of 10 centimes and one or two coins of ½ Franc (NDT: this was before the &amp;quot;euro&amp;quot; conversion) (or the other way around for the richer ones).&lt;br /&gt;
&lt;br /&gt;
Available paper collections are:&lt;br /&gt;
&lt;br /&gt;
    * the 41 levels by Yoshio Murase (hand made)&lt;br /&gt;
    * the 52 levels by Yoshio Murase (generated by computer)&lt;br /&gt;
    * my  61 levels (hand made for beginners)&lt;br /&gt;
    * my  78 levels Sokogen-990602 (generated by computer) &lt;br /&gt;
&lt;br /&gt;
and, exclusively worlwide:&lt;br /&gt;
&lt;br /&gt;
    * my  153 levels Sokogen-990702&lt;br /&gt;
    * my  160 levels Sokogen-990917&lt;br /&gt;
    * my  ??? levels Sokogen-9911?? &lt;br /&gt;
[/TRANSLATION]&lt;br /&gt;
&lt;br /&gt;
So, at this time (1999 november), I had 5 different collections.&lt;br /&gt;
The first two collection can be found with internet:&lt;br /&gt;
* &amp;quot;Dimitri and Yorick&amp;quot; (61 hand-made levels)&lt;br /&gt;
* &amp;quot;Sokogen-990602&amp;quot; (78 sokogen levels)&lt;br /&gt;
The three other ones have not been (yet) released, though, I think, I sent &amp;quot;Sokogen-990702&amp;quot; to some game designer to include it in a sokoban game.&lt;br /&gt;
In nov 1999, the last one was still in progress.&lt;br /&gt;
&lt;br /&gt;
Presently (may 2009), I plan to rewrite the &amp;quot;sokogen&amp;quot; program from lisp to Objective-C or Java, but it would probably take some time...&lt;br /&gt;
&lt;br /&gt;
)jack(&lt;/div&gt;</summary>
		<author><name>Sokobania</name></author>
	</entry>
</feed>